from blog.csdn.net/twingao/art…
用户telnet到特定主机
IP地址为192.168.1.16的NAS发送一个接入请求UDP报文给RADIUS服务器。表示 一个名为nemo的用户在端口3使用密码“arctangent”登录。
请求认证字(Request Authenticator)是一个NAS生成的16个字节的随机数。
User-Password属性是占位16个字节的密码,末尾使用null填充满。然后再和 MD5(共享密码|请求认证字)异或。
01 00 00 38 0f 40 3f 94 73 97 80 57 bd 83 d5 cb
98 f4 22 7a 01 06 6e 65 6d 6f 02 12 0d be 70 8d
93 d4 13 ce 31 96 e4 3f 78 2a 0a ee 04 06 c0 a8
01 10 05 06 00 00 00 03
1 Code = Access-Request (1)
1 ID = 0
2 Length = 56
16 Request Authenticator
Attributes:
6 User-Name = "nemo"
18 User-Password
6 NAS-IP-Address = 192.168.1.16
6 NAS-Port = 3
RADIUS服务器认证nemo用户,然后给NAS发送接入成功回应UDP报文,告诉NAS将 nemo用户telnet到主机192.168.1.3。
回应认证字(Response Authenticator)是一个16字节的MD5校验码,对代码域(2),标识符域(0),长度 域(38),上面的请求认证字,回应报文中的属性域以及共享密钥进行MD5加密 生成回应认证字。
02 00 00 26 86 fe 22 0e 76 24 ba 2a 10 05 f6 bf
9b 55 e0 b2 06 06 00 00 00 01 0f 06 00 00 00 00
0e 06 c0 a8 01 03
1 Code = Access-Accept (2)
1 ID = 0 (same as in Access-Request)
2 Length = 38
16 Response Authenticator
Attributes:
6 Service-Type (6) = Login (1)
6 Login-Service (15) = Telnet (0)
用户使用CHAP认证
IP地址为192.168.1.16的NAS发送接入请求UDP报文给RADIUS服务器,表示一个 flopsy用户使用PPP协议在端口20使用CHAP认证方式登录。NAS发送了 Service-Type和Framed-Protocol属性,以提示RADIUS服务器该用户想使用PPP 协议,尽管NAS不需要这样做。
请求认证字是一个NAS生成的16个字节的随机数,它也用来表示CHAP挑战字。
CHAP-Password属性由1个字节的CHAP ID(本例中为22)以及后面的16个字节的 CHAP回应组成。
01 01 00 47 2a ee 86 f0 8d 0d 55 96 9c a5 97 8e
0d 33 67 a2 01 08 66 6c 6f 70 73 79 03 13 16 e9
75 57 c3 16 18 58 95 f2 93 ff 63 44 07 72 75 04
06 c0 a8 01 10 05 06 00 00 00 14 06 06 00 00 00
02 07 06 00 00 00 01
1 Code = 1 (Access-Request)
1 ID = 1
2 Length = 71
16 Request Authenticator
Attributes:
8 User-Name (1) = "flopsy"
19 CHAP-Password (3)
6 NAS-IP-Address (4) = 192.168.1.16
6 NAS-Port (5) = 20
6 Service-Type (6) = Framed (2)
6 Framed-Protocol (7) = PPP (1)
RADIUS服务器认证flopsy用户,然后给NAS发送接入成功回应UDP报文,告诉NAS开始PPP服务,并且为用户从动态地址池中分配一个IP地址。
回应认证字是一个16字节的MD5校验码,对代码域(2),标识符域(1),长度域(56),上面的请求认证字,回应报文的属性域以及共享密钥进行MD5加密生成回应认证字。
02 01 00 38 15 ef bc 7d ab 26 cf a3 dc 34 d9 c0
3c 86 01 a4 06 06 00 00 00 02 07 06 00 00 00 01
08 06 ff ff ff fe 0a 06 00 00 00 02 0d 06 00 00
00 01 0c 06 00 00 05 dc
1 Code = Access-Accept (2)
1 ID = 1 (same as in Access-Request)
2 Length = 56
16 Response Authenticator
Attributes:
6 Service-Type (6) = Framed (2)
6 Framed-Protocol (7) = PPP (1)
6 Framed-IP-Address (8) = 255.255.255.254
6 Framed-Routing (10) = None (0)
6 Framed-Compression (13) = VJ TCP/IP Header Compression (1)
6 Framed-MTU (12) = 1500
使用挑战回应卡认证
IP地址为192.168.1.16的NAS发送一个接入请求UDP报文给RADIUS服务器,表示 一个mopsy用户要在端口7登录,在本例中,假定用户输入密码“challenge”。 在本例中,由智能卡生成的挑战和回应分别是“32769430”和“99101462”。
请求认证字是一个由NAS生成的16个字节的随机数。
User-Password属性是占位16个字节的密码,在本例中,密码为 “challenge”,后面使用null填充满16个字节。然后再和MD5(共享密码|请求 认证字)异或。
01 02 00 39 f3 a4 7a 1f 6a 6d 76 71 0b 94 7a b9
30 41 a0 39 01 07 6d 6f 70 73 79 02 12 33 65 75
73 77 82 89 b5 70 88 5e 15 08 48 25 c5 04 06 c0
a8 01 10 05 06 00 00 00 07
1 Code = Access-Request (1) 1 ID = 2 2 Length = 57 16 Request Authenticator
Attributes:
7 User-Name (1) = "mopsy"
18 User-Password (2)
6 NAS-IP-Address (4) = 192.168.1.16
6 NAS-Port (5) = 7
RADIUS服务器决定挑战mopsy用户,需要发送回一个挑战字符串并等待回应,因 此RADIUS服务器发送了一个接入挑战UDP报文给NAS。
回应认证字是一个16字节的MD5校验码,对代码域(11),标识符域(2),长 度域(78),上面的请求认证字,回应报文的属性域以及共享密钥进行MD5加密 生成回应认证字。
Reply-Message属性值为“Challenge 32769430. Enter response at prompt.”。
State属性是一个随着用户的回应返回的神奇的cookie,在本例中是一个8个字节 的数据(33 32 37 36 39 34 33 30,十六进制)。
0b 02 00 4e 36 f3 c8 76 4a e8 c7 11 57 40 3c 0c
71 ff 9c 45 12 30 43 68 61 6c 6c 65 6e 67 65 20
33 32 37 36 39 34 33 30 2e 20 20 45 6e 74 65 72
20 72 65 73 70 6f 6e 73 65 20 61 74 20 70 72 6f
6d 70 74 2e 18 0a 33 32 37 36 39 34 33 30
1 Code = Access-Challenge (11)
1 ID = 2 (same as in Access-Request)
2 Length = 78
16 Response Authenticator
Attributes:
48 Reply-Message (18)
10 State (24)
用户输入回应后,NAS发送一个新的携带该回应的接入请求报文,其中包括 State属性。
请求认证字是一个新的16字节随机数。
User-Password属性是用户回应的16字节字符串,在本例中为“99101462”,后 面用null填满16个字节,然后和MD5(共享密钥|请求认证字)异或
State属性是接入挑战报文中的神奇cookie,没有做修改。
01 03 00 43 b1 22 55 6d 42 8a 13 d0 d6 25 38 07
c4 57 ec f0 01 07 6d 6f 70 73 79 02 12 69 2c 1f
20 5f c0 81 b9 19 b9 51 95 f5 61 a5 81 04 06 c0
a8 01 10 05 06 00 00 00 07 18 10 33 32 37 36 39
34 33 30
1 Code = Access-Request (1)
1 ID = 3 (Note that this changes.)
2 Length = 67
16 Request Authenticator
Attributes:
7 User-Name = "mopsy"
18 User-Password
6 NAS-IP-Address (4) = 192.168.1.16
6 NAS-Port (5) = 7
10 State (24)
回应是不正确的(为了举例之便),所以RADIUS服务器告诉NAS拒绝了试图的登 录。
回应认证字是一个16字节的MD5校验码,对代码域(11),标识符域(3),长 度域(20),上面的请求认证字,回应报文的属性域以及共享密钥进行MD5加密 生成回应认证字。
03 03 00 14 a4 2f 4f ca 45 91 6c 4e 09 c8 34 0f
9e 74 6a a0
1 Code = Access-Reject (3)
1 ID = 3 (same as in Access-Request)
2 Length = 20
16 Response Authenticator
Attributes:
(none, although a Reply-Message could be sent)