Radius认证配置与排错

配置Radius认证

  1. 配置接口地址及路由

    image-20230208163834235

    image-20230208163852215

    ping测试FortiGate与Radius Server之间的连通性。测试环境使用FortiAuthenticator作为Radius服务器,地址是192.168.91.209。

    # execute ping 192.168.91.209
    PING 192.168.91.209 (192.168.91.209): 56 data bytes
    64 bytes from 192.168.91.209: icmp_seq=0 ttl=63 time=0.3 ms
    64 bytes from 192.168.91.209: icmp_seq=1 ttl=63 time=0.2 ms
    64 bytes from 192.168.91.209: icmp_seq=2 ttl=63 time=0.1 ms
    64 bytes from 192.168.91.209: icmp_seq=3 ttl=63 time=0.1 ms
    64 bytes from 192.168.91.209: icmp_seq=4 ttl=63 time=0.2 ms
    
    --- 192.168.91.209 ping statistics ---
    5 packets transmitted, 5 packets received, 0% packet loss
    round-trip min/avg/max = 0.1/0.1/0.3 ms
    
  2. 配置Radius服务器

    选择”用户与认证“-->”RADIUS“,点击”新建“。

    image-20230208164128219

    配置参数:

    名称:输入一个名称,不冲突即可;

    认证方法:FortiGate支持CHAP,MS-CHAP,MS-CHAP,PAP认证方法。如果认证方法是默认,则FortiGate会使用PAP、MSCHAP_v2和CHAP三种方式向Radius服务器发送请求,Radius服务器的日志中往往会报一些错误,因此请指定一种认证方法,这里使用PAP;

    IP/名称:在主服务器输入Radius服务器的IP地址;

    密钥:FortiGate和Radius服务器之间的共享密钥,这里设置为fortinet。

    image-20230208164436743

    点击”确认“,配置完成。

    image-20230208165510787

    对应的命令行如下:

    config user radius
        edit "Radius209"
            set server "192.168.91.209"
            set secret ENC fJ6Xhg0wVEZyp8qAJfiuNSJLqyNVrWsRwQ1zELqWc7GnyBso4IrSelJJR4DBKmXQ/ex9cFWq3nJfoWEbWjRy1nrwUMl5HJGPiHO+c8MXXy6IAUE38ec4Y/x5VnRPZpEgPPiVIuCXZfbpnjcR1t5RdO8lgTTRkhiNqBFvrZtyxsucpqRYSH7eyTN0ih5nJigvUn8oAg==
            set auth-type pap
        next
    end
    

Radius服务器测试

  1. FortiGate与Radius服务器之间连通性测试

    GUI编辑Radius服务器的配置界面,点击”测试连接性“。

    CLI的语法:

    #diagnose test authserver radius-direct 
    <server_name or IP> <port number (0 default port)> <secret> <pap | chap | mschap | mschap2> <user> <password>
    
    • 如果连接状态是”成功“,则FortiGate与Radius服务器之间通信正常。

      image-20230208172456552

      对应的CLI测试结果如下:

      # diagnose test authserver radius-direct 192.168.91.209 1812 fortinet pap user1 12345678
      RADIUS server '192.168.91.209' status is OK
      Access-Accept
      AVP: l=12 t=Vendor-Specific(26) v=Fortinet(12356)
        VSA: l=6 t=Fortinet-Group-Name(1)
        Value: 'grp1'
      
    • 如果连接状态是“对服务器密钥无效”,则FortiGate与Radius服务器之间的密钥不一致。

      image-20230208172856353

      对应的CLI测试结果如下:

      # diagnose test authserver radius-direct 192.168.91.209 1812 fortinet pap user1 12345678
      RADIUS server '192.168.91.209' status is Secret invalid
      
    • 如果连接状态是“不能连接 RADIUS 服务器”,则Radius服务器的地址或者端口不正确,或者Radius服务器没有授权FortiGate作为客户端。

      image-20230208173503573

      对应的CLI测试结果如下:

      # diagnose test authserver radius-direct 192.168.91.209 1812 fortinet pap user1 12345678
      RADIUS server '192.168.91.209' status is Server unreachable
      
  2. 测试Radius服务器中的用户及密码

    GUI编辑Radius服务器的配置界面,点击”测试用户认证信息“。

    CLI的语法:

    # diagnose test authserver radius 
    <server_name> <chap | pap | mschap | mschap2> <username> <password>
    
    • 用户名或者密码不正确

      image-20230208174733396

      对应的CLI测试结果如下:

      # diagnose test authserver radius Radius209 pap user1 test123
      authenticate 'user1' against 'pap' failed, assigned_rad_session_id=730523922 session_timeout=0 secs idle_timeout=0 secs!
      
    • 用户名和密码正确

      可以看到Radius服务器返回的状态是成功,以及用户属于,如user1属于用户组grp1。

      image-20230208174928358

      对应的CLI测试结果如下:

      # diagnose test authserver radius Radius209 pap user1 12345678
      authenticate 'user1' against 'pap' succeeded, server=primary assigned_rad_session_id=730523923 session_timeout=0 secs idle_timeout=0 secs!
      Group membership(s) - grp1
      

其他Radius配置参数

  1. 修改Radius端口

    config user radius
        edit Radius209
            set radius-port xxx
        next
    end
    
  2. 指定原IP地址

    config user radius
        edit Radius209
            set source-ip x.x.x.x
        next
    end
    

创建radius用户

  1. 选择“用户与认证”-->“设置用户”,点击“新建”

    image-20230210163103793

  2. 选择"远程RADIUS用户",点击“下一步”

    image-20230210163140159

  3. 输入“用户名”和“RADIUS服务器”,点击“下一步”

    image-20230210163309880

  4. 如果Radius用户需要绑定FortiGate本地的Fortitoken,则勾选“双因子认证”。这里不需要,直接点击“下一步”

    image-20230210163448854

  5. 如果需要现在为Radius用户指定一个用户组,可以勾选“用户组”来指定,也可以等创建完用户后,在用户组菜单中添加。这里不勾选,直接点击“提交”

    image-20230210163624287

  6. 创建完成

    image-20230210163920501

创建radius用户组

  1. 选择“用户与认证”-->"用户组",点击"新建"

    image-20230210163949636

  2. 配置参数

    输入用户组名称group1,在远程组下,点击“添加”,在”远程服务器“中选择已配置的Radius服务器。

    指定Radius的用户组,这里使用grp1,表示group1匹配Radius用户组grp1下的用户,可以添加多个组;如果组选择“Any”,表示匹配Radius服务器下的所用用户。

    image-20230210164100231

    选择完成后,点击“确认”。

    image-20230210164701754

  3. 配置完成

    image-20230210164722062

Radius认证Debug

  1. 认证成功

    [1906] handle_req-Rcvd auth req 730524052 for user1 in Radius209 opt=0000001d prot=0
    [466] __compose_group_list_from_req-Group 'Radius209', type 1
    [616] fnbamd_pop3_start-user1
    [518] __fnbamd_cfg_get_radius_list_by_server-Loading RADIUS server 'Radius209'
    [342] fnbamd_create_radius_socket-Opened radius socket 12
    [342] fnbamd_create_radius_socket-Opened radius socket 13
    [1394] fnbamd_radius_auth_send-Compose RADIUS request
    [1351] fnbamd_rad_dns_cb-192.168.91.209->192.168.91.209
    
    认证请求,radius服务器是192.168.91.209,用户名user1,认证方法是PAP
    [1323] __fnbamd_rad_send-Sent radius req to server 'Radius209': fd=12, IP=192.168.91.209(192.168.91.209:1812) code=1 id=6 len=101 user="user1" using PAP
    [319] radius_server_auth-Timer of rad 'Radius209' is added
    [633] create_auth_session-Total 1 server(s) to try
    [1360] fnbamd_auth_handle_radius_result-Timer of rad 'Radius209' is deleted
    
    认证响应,响应code 2,认证成功,返回的用户属性
    [1802] fnbamd_radius_auth_validate_pkt-RADIUS resp code 2
    [320] extract_success_vsas-FORTINET attr, type 1, val grp1
    [1385] fnbamd_auth_handle_radius_result-->Result for radius svr 'Radius209' 192.168.91.209(1) is 0
    [266] find_matched_usr_grps-Skipped group matching
    [216] fnbamd_comm_send_result-Sending result 0 (nid 0) for req 730524052, len=2154
    [789] destroy_auth_session-delete session 730524052
    
  2. 认证失败

    [1906] handle_req-Rcvd auth req 730524053 for user1 in Radius209 opt=0000001d prot=0
    [466] __compose_group_list_from_req-Group 'Radius209', type 1
    [616] fnbamd_pop3_start-user1
    [518] __fnbamd_cfg_get_radius_list_by_server-Loading RADIUS server 'Radius209'
    [342] fnbamd_create_radius_socket-Opened radius socket 12
    [342] fnbamd_create_radius_socket-Opened radius socket 13
    [1394] fnbamd_radius_auth_send-Compose RADIUS request
    [1351] fnbamd_rad_dns_cb-192.168.91.209->192.168.91.209
    
    认证请求,radius服务器是192.168.91.209,用户名user1,认证方法是PAP
    [1323] __fnbamd_rad_send-Sent radius req to server 'Radius209': fd=12, IP=192.168.91.209(192.168.91.209:1812) code=1 id=7 len=101 user="user1" using PAP
    [319] radius_server_auth-Timer of rad 'Radius209' is added
    [633] create_auth_session-Total 1 server(s) to try
    [1360] fnbamd_auth_handle_radius_result-Timer of rad 'Radius209' is deleted
    
    认证响应,响应code 3,认证拒绝
    [1802] fnbamd_radius_auth_validate_pkt-RADIUS resp code 3
    [1385] fnbamd_auth_handle_radius_result-->Result for radius svr 'Radius209' 192.168.91.209(1) is 1
    [216] fnbamd_comm_send_result-Sending result 1 (nid 0) for req 730524053, len=3172
    [789] destroy_auth_session-delete session 730524053
    

Copyright © 2023 Fortinet Inc. All rights reserved. Powered by Fortinet TAC Team.
📲扫描下方二维码分享此页面👇
该页面修订于: 2023-02-14 18:00:04

results matching ""

    No results matching ""