random notes
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@4753 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
		
							
								
								
									
										62
									
								
								doc/misc.texi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								doc/misc.texi
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,62 @@ | ||||
| @node Things in search for a better place, Kerberos 4 issues, Setting up a realm, Top | ||||
| @chapter Things in search for a better place | ||||
|  | ||||
| @section Making things work on Ciscos | ||||
|  | ||||
| Modern versions of Cisco IOS has some support for authenticating via | ||||
| Kerberos 5. This can be used both to verify passwords via a ticket | ||||
| exchange Kerberos 5 (boring), and to use Kerberos authenticated telnet | ||||
| to access your router (less boring). The following has been tested on | ||||
| IOS 11.2(12), things might be different with other versions. Old | ||||
| versions are known to have bugs. | ||||
|  | ||||
| To make this work, you will first have to configure your router to use | ||||
| Kerberos (this is explained in the documentation). A sample | ||||
| configuration looks like the following: | ||||
|  | ||||
| @example | ||||
| aaa new-model | ||||
| aaa authentication login default krb5-telnet krb5 enable | ||||
| aaa authorization exec krb5-instance | ||||
| kerberos local-realm FOO.SE | ||||
| kerberos srvtab entry host/router.foo.se.SE 0 891725446 4 1 8 012345678901234567 | ||||
| kerberos server FOO.SE 10.0.0.1 | ||||
| kerberos instance map admin 15 | ||||
| @end example | ||||
|  | ||||
| This tells you (among other things) that the when logging in, the router | ||||
| should try to authenticate with kerberized telnet, and if that fails try | ||||
| to verify a plain text password via a Kerberos ticket exchange (as | ||||
| opposed to a local database or RADIUS or something similar), and if that | ||||
| fails try the local enable password. If you're not careful when you | ||||
| specify the `login default' authentication mechanism, you might not be | ||||
| able to login. The `instance map' and `authorization exec' lines says | ||||
| that people with `admin' instances should be given `enabled' shells when | ||||
| logging in. | ||||
|  | ||||
| To make the Heimdal KDC produce tickets that the Cisco can decode you | ||||
| might have to turn on the @samp{encode_as_rep_as_tgs_rep} flag in the | ||||
| KDC. You will also have to specify that the router can't handle anything | ||||
| but @samp{des-cbc-crc}. There currently isn't an easy way to do | ||||
| this. The best you can do is to dump your database (with @samp{kadmin -l | ||||
| dump}), and change the final dash for your router entry to a one, and | ||||
| then reloading the database (@samp{kadmin -l load}). An example should | ||||
| clarify this. You should have something like (again, truncated): | ||||
| @example  | ||||
| host/router.foo.se@@FOO.SE 4:0:1:... - - - - - 126 - | ||||
| @end example | ||||
| Change this to: | ||||
| @example  | ||||
| host/router.foo.se@@FOO.SE 4:0:1:... - - - - - 126 1 | ||||
| @end example | ||||
|  | ||||
| This all fine and so, but unless you have an IOS version with encryption | ||||
| (available only in the U.S) it doesn't really solve any problems. Sure | ||||
| you don't have to send your password over the wire, but since the telnet | ||||
| connection isn't protected it's still possible for someone to steal your | ||||
| session. This won't be fixed until someone adds integrity to the telnet | ||||
| protocol. | ||||
|  | ||||
| A working solution would be to hook up a machine with a real operating | ||||
| system to the console of the Cisco and then use it as a backwards | ||||
| terminal server. | ||||
		Reference in New Issue
	
	Block a user
	 Johan Danielsson
					Johan Danielsson