カテゴリ:

IOSでRADIUSサーバを使った認証の設定を行います。TELNETでのユーザ認証をローカル認証でなく、RADIUSで行ってみます。

R2はR1(12.12.12.1)とR3(23.23.23.3)に接続されています。R1をTELNETクライアント、R3をRADIUSサーバとして設定を行います。

R2(config)#do sh ip int b
Interface                  IP-Address      OK? Method Status                Protocol
FastEthernet0/0            12.12.12.2      YES manual up                    up
Serial1/2                  23.23.23.2      YES manual up                    up
Loopback0                  17.17.2.2       YES NVRAM  up                    up

AAA(Authentication Authorization Accounting)を有効にし、TELNETという名前でradiusを登録します。

R2(config)#aaa new-model
R2(config)#aaa authentication login TELNET group radius

次にRADIUSサーバを指定しますが、ポートの設定に注意します。特に指定をしないと1645と1646の利用となります。ここではR3のLo0である17.17.3.3でサーバを指定しています。

R2(config)#radius-server host 17.17.3.3 key CISCO
R2(config)#do sh run | i radius-server
radius-server host 17.17.3.3 auth-port 1645 acct-port 1646 key CISCO

現在、通常のRADISサーバでは一般的に1812と1813を使うため、よく確認して設定します。

$ grep radius /etc/services
datametrics     1645/tcp        old-radius      # datametrics / old radius entry
datametrics     1645/udp        old-radius      # datametrics / old radius entry
radius          1812/tcp                        # Radius
radius          1812/udp                        # Radius
radius-acct     1813/tcp        radacct         # Radius Accounting
radius-acct     1813/udp        radacct         # Radius Accounting
〜略〜

R2(config)#no radius-server host 17.17.3.3 key CISCO

R2(config)#radius-server host 17.17.3.3 auth-port 1812 acct-port 1813 key CISCO
R2#show aaa servers | i host
RADIUS: id 8, priority 1, host 17.17.3.3, auth-port 1812, acct-port 1813

line vtyでaaaで定義したTELNETを指定し、debugを有効にします。

R2(config)#line vty 0 15
R2(config-line)#login authentication TELNET
R2#debug radius authentication

ここでR1から接続を試してみますが、ログイン出来ません。RADIUSサーバがないので当然です。

R1#telnet 12.12.12.2
Trying 12.12.12.2 ... Open

User Access Verification

Username: cisco
Password:

% Authentication failed

R2
Jun  1 06:11:48.899: RADIUS: No response from (17.17.3.3:1812,1813) for id 1645/1
Jun  1 06:11:48.899: RADIUS/DECODE: No response from radius-server; parse response; FAIL
Jun  1 06:11:48.899: RADIUS/DECODE: Case error(no response/ bad packet/ op decode);parse response; FAIL

RADIUSサーバはLinuxなどでもちろん構築できますが、IOSもRADIUSサーバとして利用できます。初期値ではR3に直接接続されているインターフェース(23.23.23.2)を利用してNAS(network access server)であるR2が認証を要求します。

R3(config)#aaa new-model
R3(config)#radius-server local
R3(config-radsrv)#nas 23.23.23.2 key CISCO
R3(config-radsrv)#user cisco password cisco

設定後、R1から接続すると問題なくログイン出来ます。

R2
Jun  1 06:19:32.759: RADIUS:  Calling-Station-Id  [31]  12  "12.12.12.1"
Jun  1 06:19:32.759: RADIUS:  NAS-IP-Address      [4]   6   23.23.23.2
Jun  1 06:19:32.771: RADIUS: Received from id 1645/2 17.17.3.3:1812, Access-Accept, len 88

R3#sh radius local-server statistics
Successes              : 1           Unknown usernames      : 0
Client blocks          : 0           Invalid passwords      : 0
Unknown NAS            : 0           Invalid packet from NAS: 0

NAS : 23.23.23.2
Successes              : 1           Unknown usernames      : 0
Client blocks          : 0           Invalid passwords      : 0
Corrupted packet       : 0           Unknown RADIUS message : 0
No username attribute  : 0           Missing auth attribute : 0
Shared key mismatch    : 0           Invalid state attribute: 0
Unknown EAP message    : 0           Unknown EAP auth type  : 0
Auto provision success : 0           Auto provision failure : 0
PAC refresh            : 0           Invalid PAC received   : 0

Username                  Successes  Failures  Blocks
cisco                             1         0       0

R2が利用するNASの値をLo0(17.17.2.2)に変更する例です。

R3(config-radsrv)#no nas 23.23.23.2 key CISCO
R3(config-radsrv)#nas 17.17.2.2 key CISCO
R3#show radius local-server statistics | i NAS :
NAS : 17.17.2.2

R2(config)#ip radius source-interface lo0

Jun  1 06:43:30.135: RADIUS:  NAS-IP-Address      [4]   6   17.17.2.2
Jun  1 06:43:30.143: RADIUS: Received from id 1645/10 17.17.3.3:1812, Access-Accept, len 88

RADIUS NAS-IP-Address Attribute Configurability