In preparation for 2.0
[freeradius.git] / doc / cisco
1 Cisco IOS and Radius
2
3 0.  INTRODUCTION
4
5 Cisco NAS equipment has become quite popular of late, but being Cisco
6 equipment running IOS, the configuration can be a bit non-obvious to the
7 unfamiliar.  This document aims to describe the most common configuration
8 options to make your Ciscos interoperate with radius as you would expect a
9 well-behaved NAS to do.
10
11 1.  IOS 12.x
12
13 For Cisco 12.x ( 12.0 and 12.1 ), the following AAA configuration directives
14 are suggested:
15
16     aaa new-model
17     aaa authentication login default group radius local
18     aaa authentication login localauth local
19     aaa authentication ppp default if-needed group radius local
20     aaa authorization exec default group radius local
21     aaa authorization network default group radius local
22     aaa accounting delay-start
23     aaa accounting exec default start-stop group radius
24     aaa accounting network default start-stop group radius
25     aaa processes 6
26
27 this configuration works very well with most radius servers.  One of the more
28 important configurations is:
29
30     aaa accounting delay-start
31
32 This directive will delay the sending of the Accounting Start packet until
33 after an IP address has been assigned during the PPP negotiation process.
34 This will supersede the need to enable the sending of "Alive" packets as
35 described below for IOS versions 11.x
36
37 *NOTE* with the above it will use the radius server to authenticate
38 your inbound 'telnet' connections.  You will need to create an entry
39 in your users file similar to the following to allow access:
40
41    !root   Cleartext-Password := "somepass"
42            Service-Type = NAS-Prompt-User
43
44 This will let a user in for the first level of access to your Cisco.  You
45 will still need to 'enable' ( using the locally configured enable secret )
46 to perform any configuration changes or anything requiring a higher level
47 of access.  The username '!root' was used as an example here, you can make
48 this any username you want, of course.
49
50 1.1 Unique Acct-Session-Id's
51
52 From: http://isp-lists.isp-planet.com/isp-australia/0201/msg05143.html
53
54 Just a note to all cisco ISPs out there who want RFC2866 compliance need to 
55 enable the hidden command 'radius-server unique-ident <n>'
56
57 Minimum IOS: 12.1(4.1)T.
58
59 Acct-Session-Id should be unique and wrap after every 256 reboots.
60
61 You must reboot after entering this command to take effect. If not, you 
62 will observe after 10 minutes
63 of entering this command, the following message.
64
65 %RADIUS-3-IDENTFAIL: Save of unique accounting ident aborted.
66
67
68 2.  IOS 11.x
69
70 For Cisco 11.1, you normally use
71
72     aaa new-model
73     aaa authentication ppp radppp if-needed radius
74     aaa authorization network radius none
75     aaa accounting network wait-start radius
76
77 to get the Cisco to talk to a radius server.
78
79 With IOS 11.3, you need to add:
80
81     aaa accounting update newinfo
82
83 If you want the IP address of the user to show up in the radutmp file
84 (and thus, the output of "radwho").
85
86 This is because with IOS 11.3, the Cisco first sends a "Start" accounting
87 packet without the IP address included. By setting "update newinfo" it
88 will send an account "Alive" packet which updates the information. 
89
90
91 Also you might see a lot of "duplicates" in the logfile. That can be
92 fixed by
93
94     aaa accounting network wait radius
95     radius-server timeout 3
96
97
98 To enable the Ascend style attributes (which we do NOT recommend!)
99
100    radius-server host X.Y.Z.A auth-port 1645 acct-port 1646 non-standard
101
102 To disable the Ascend style attributes (which is a VERY good idea!):
103
104    radius-server host X.Y.Z.A auth-port 1645 acct-port 1646
105
106 To see Cisco-AVPair attributes in the Cisco debugging log:
107
108    radius-server vsa accounting
109
110 4.  Cisco 36xx & 26xx, keeping the NAS IP static
111
112 The Cisco 36/26 by default selects (it seems at random) any IP address
113 assigned to it (serial, ethernet etc.) as it's RADIUS client source
114 address, thus the access request may be dropped by the RADIUS server,
115 because it can not verify the client. To make the cisco box always use
116 one fixed address, add the following to your configuration:
117
118     ip radius source-interface Loopback0
119
120 and configure the loopback interface on your router as follows:
121
122     interface Loopback0
123       ip address 192.168.0.250 255.255.255.255
124
125 Use a real world IP address and check the Cisco documentation for why
126 it is a good idea to have working loopback interface configured on
127 your router.
128
129 If you don't want to use the loopback interface of course you can set
130 the source-interface to any interface on your Cisco box which has an
131 IP address.
132
133
134 5.  CREDITS
135
136 Original  - Alan DeKok <aland@ox.org>
137 12.x Info - Chris Parker <cparker@starnetusa.net>  2000-10-12
138
139 6.  MORE INFORMATION
140
141 For more information, the following page on Cisco's web site may help:
142
143 http://www.cisco.com/univercd/cc/td/doc/product/access/acs_serv/vapp_dev/vsaig3.htm