FortiAuthenticator
FortiAuthenticator provides access management and single sign on.
Somashekara_Hanumant
Article Id 191701

Description

 

This article describes how SSL VPN users can bind the IP on Radius server using Framed IP option.
In this case, a Radius server is configured on FortiAuthenticator. On FortiGate, SSL VPN will be configured in tunnel mode.

Framed IP is also a requirement for IP lockout to work (Auth, User Account Policies, Lockouts, Enable IP lockout policy).

 

Scope

 

FortiAuthenticator.

Solution

 

Radius Server Configuration on FortiAuthenticator.

Remote users can also be used for Radius. In this example, LDAP users will be used as Radius users.

Configuring LDAP server on Authenticator.

 

Stephen_G_0-1693817211736.png

 
Import the LDAP users under Authentication -> User Management -> Remote Users -> Import. Select a previously created LDAP server and import the users. In this example 'sslvpn1' and 'sslvpn2' will be imported as below.
 
 
Configuring the Framed IP for these users (sslvpn1 and sslvpn2).
 
 
 
While adding the Radius Attributes, make sure to select the vendor as the default, search for the 'Framed-IP-Address' attribute, and configure the IP address to lease for the users when connecting the SSL VPN client.

Configuring a User Group.
 

 
 
Configuring a Realm.
 
 
Configuring the Radius Client.
 
 
Configuring FortiGate as a Radius Client.
 
 
 
config user radius
    edit "root-radius"
        set server "10.40.6.105"
        set secret xxxxxxx
    next
end

Configuring a Radius Group.
 
 
 
config user group
edit "framed_ip_grp1"
set member "root-radius"
config match
edit 1
set server-name "root-radius"
set group-name "framed_ip_grp1"
next
end
next
edit "framed_ip_grp2"
set member "root-radius"
config match
edit 1
set server-name "root-radius"
set group-name "vpn_users"
next
end
next
end
 
Make sure to configure the Radius Group in the same way as it was configured on the Radius server.

Configuring SSL VPN.

SSL VPN Portal.

Note: On the appropriate web portal, make sure to set the 'ip-mode' to 'user-group'. By default, it is set to 'range'. This can only be done in the CLI. In this example, 'vpnusers' is the web portal.

config vpn ssl web portal
edit "vpnusers"
set tunnel-mode enable
set web-mode enable
set ip-mode user-group
set auto-connect enable
set save-password enable
config bookmark-group
edit "gui-bookmarks"
next
end
next
end
 
Stephen_G_1-1693817677018.png
 
config vpn ssl settings
    set servercert "Fortinet_Factory"
    set tunnel-ip-pools "SSLVPN_TUNNEL_ADDR1"
    set tunnel-ipv6-pools "SSLVPN_TUNNEL_IPv6_ADDR1"
    set source-interface "port1"
    set source-address "all"
    set source-address6 "all"
    set default-portal "web-access"
config authentication-rule
        edit 1
            set groups "framed_ip_grp2" "framed_ip_grp1"
            set portal "vpnusers"
        next
end
end
 
Configuring the IPV4 firewall policies.
 
 
config firewall policy
    edit 5
        set name "sslvpn_policy"
        set uuid a3cbe1e8-afc5-51ea-e268-f2bf29cb77f0
        set srcintf "ssl.root"
        set dstintf "port2"
        set srcaddr "all"
        set dstaddr "local"
        set action accept
        set schedule "always"
        set service "ALL"
        set groups "framed_ip_grp2" "framed_ip_grp1"
    next
end
 
Troubleshooting.
 
Use the following commands on FortiGate to further troubleshoot:

diag debug application sslvpn -1
diag debug application fnbamd -1
diag debug enable

In the following scenario, the login is 'sslvpn1' and the IP address is 10.212.134.200.

[2461] fnbamd_auth_handle_radius_result      <-- The result for radius svr 'root-radius' 10.40.6.105(1) is 0.
[2385] fnbamd_radius_group_match-Passed group matching
[331] fnbamd_framed_ip_add_ip-Added IP 10.212.134.200
[1070] find_matched_usr_grps-Group 'framed_ip_grp2' failed group matching
[1067] find_matched_usr_grps-Group 'framed_ip_grp1' passed group matching
[1068] find_matched_usr_grps-Add matched group 'framed_ip_grp1'(3)
[2910] fnbamd_fas_send_push-username:sslvpn1, vdom:root, usertype:0, tfc=0, auth_type:2

[181] fnbamd_comm_send_result-Sending result 0 (error 0, nid 0) for req 379326533
[744] destroy_auth_session-delete session 379326533
[242:root:29][fam_auth_proc_resp:1239] Authenticated groups by FNBAM:
[242:root:29]auth_rsp_data.grp_list[0] = framed_ip_grp1
[242:root:29]Auth successful for user sslvpn1 in group framed_ip_grp1
[242:root:29]user sslvpn1 got framed IP 10.212.134.200
[2461] fnbamd_auth_handle_radius_result        <-- The result for radius svr 'root-radius' 10.40.6.105(1) is 0.
[2385] fnbamd_radius_group_match-Passed group matching
[331] fnbamd_framed_ip_add_ip-Added IP 10.212.134.201
[1067] find_matched_usr_grps-Group 'framed_ip_grp2' passed group matching
[1068] find_matched_usr_grps-Add matched group 'framed_ip_grp2'(4)
[1070] find_matched_usr_grps-Group 'framed_ip_grp1' failed group matching
[2910] fnbamd_fas_send_push-username:sslvpn2, vdom:root, usertype:0, tfc=0, auth_type:2

[181] fnbamd_comm_send_result-Sending result 0 (error 0, nid 0) for req 379326547
[744] destroy_auth_session-delete session 379326547
[242:root:2b][fam_auth_proc_resp:1239] Authenticated groups by FNBAM:
[242:root:2b]auth_rsp_data.grp_list[0] = framed_ip_grp2
[242:root:2b]Auth successful for user sslvpn2 in group framed_ip_grp2
[242:root:2b]user sslvpn2 got framed IP 10.212.134.201

 

Related article:

Technical Tip: Framed IP address for IPsec dialup users where RADIUS server is configured on FortiAu...