Fortinet white logo
Fortinet white logo

Cookbook

SSL VPN split tunnel for remote user

SSL VPN split tunnel for remote user

This is a sample configuration of remote users accessing the corporate network and internet through an SSL VPN by tunnel mode using FortiClient but accessing the Internet without going through the SSL VPN tunnel.

Sample topology

Sample configuration

WAN interface is the interface connected to ISP. This example shows static mode. You can also use DHCP or PPPoE mode. The SSL VPN connection is established over the WAN interface.

Note

The split tunneling routing address cannot use an FQDN or an address group that includes an FQDN.

To configure SSL VPN using the GUI:
  1. Configure the interface and firewall address. The port1 interface connects to the internal network.
    1. Go to Network > Interfaces and edit the wan1 interface.
    2. Set IP/Network Mask to 172.20.120.123/255.255.255.0.
    3. Edit port1 interface and set IP/Network Mask to 192.168.1.99/255.255.255.0.
    4. Click OK.
    5. Go to Policy & Objects > Address and create an address for internal subnet 192.168.1.0.
  2. Configure user and user group.
    1. Go to User & Device > User Definition to create a local user sslvpnuser1.
    2. Go to User & Device > User Groups to create a group sslvpngroup with the member sslvpnuser1.
  3. Configure SSL VPN web portal.
    1. Go to VPN > SSL-VPN Portals to create a tunnel mode only portal my-split-tunnel-portal.
    2. Enable Split Tunneling.
    3. Select Routing Address to define the destination network that will be routed through the tunnel. Leave undefined to use the destination in the respective firewall policies.
  4. Configure SSL VPN settings.
    1. Go to VPN > SSL-VPN Settings.
    2. For Listen on Interface(s), select wan1.
    3. Set Listen on Port to 10443.
    4. Optionally, set Restrict Access to Limit access to specific hosts, and specify the addresses of the hosts that are allowed to connect to this VPN.
    5. Choose a certificate for Server Certificate. The default is Fortinet_Factory.
    6. In Authentication/Portal Mapping All Other Users/Groups, set the Portal to tunnel-access.
    7. Create new Authentication/Portal Mapping for group sslvpngroup mapping portal my-split-tunnel-portal.
  5. Configure SSL VPN firewall policy.
    1. Go to Policy & Objects > IPv4 Policy.
    2. Fill in the firewall policy name. In this example, sslvpn split tunnel access.
    3. Incoming interface must be SSL-VPN tunnel interface(ssl.root).
    4. Choose an Outgoing Interface. In this example, port1.
    5. Set the Source to SSLVPN_TUNNEL_ADDR1 and group to sslvpngroup. The source address references the tunnel IP addresses that the remote clients are using.
    6. In this example, the Destination is 192.168.1.0.
    7. Set Schedule to always, Service to ALL, and Action to Accept.
    8. Click OK.
To configure SSL VPN using the CLI:
  1. Configure the interface and firewall address.
    config system interface 
        edit "wan1"
            set vdom "root"
            set ip 172.20.120.123 255.255.255.0
        next
    end
  2. Configure internal interface and protected subnet, then connect the port1 interface to the internal network.
    config system interface
        edit "port1"
            set vdom "root"
            set ip 192.168.1.99 255.255.255.0
        next
    end
    config firewall address
        edit "192.168.1.0"
            set subnet 192.168.1.0 255.255.255.0
        next
    end
  3. Configure user and user group.
    config user local
        edit "sslvpnuser1" 
            set type password
            set passwd your-password
        next 
    end
    config user group
        edit "sslvpngroup" 
            append member "sslvpnuser1"
        next 
    end
  4. Configure SSL VPN web portal.
    config vpn ssl web portal
        edit "my-split-tunnel-portal"
            set tunnel-mode enable
            set split-tunneling  enable
            set split-tunneling-routing-address "192.168.1.0"
            set ip-pools "SSLVPN_TUNNEL_ADDR1"
        next
    end
  5. Configure SSL VPN settings.
    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 "wan1"
        set source-address "all"
        set source-address6 "all"
        set default-portal "full-access"
        config authentication-rule
            edit 1
                set groups "sslvpngroup"
                set portal "my-split-tunnel-portal" 
            next        
        next
    end

    Optionally, to restrict access to specific hosts:

    config vpn ssl settings
        set source-address <address> <address> ... <address>
        set source-address6 <address> <address> ... <address>
    end
  6. Configure one SSL VPN firewall policy to allow remote user to access the internal network. Traffic is dropped from internal to remote client.
    config firewall policy 
        edit 1
            set name "sslvpn split tunnel access"
            set srcintf "ssl.root"
            set dstintf "port1"
            set srcaddr "SSLVPN_TUNNEL_ADDR1"
            set dstaddr "192.168.1.0"
            set groups “sslvpngroup”
            set action accept
            set schedule "always"
            set service "ALL"
        next
    end

Related Videos

sidebar video

Teleworker Solution - SSL VPN Split Tunnel Set Up

  • 19,101 views
  • 4 years ago

More Links

SSL VPN split tunnel for remote user

SSL VPN split tunnel for remote user

This is a sample configuration of remote users accessing the corporate network and internet through an SSL VPN by tunnel mode using FortiClient but accessing the Internet without going through the SSL VPN tunnel.

Sample topology

Sample configuration

WAN interface is the interface connected to ISP. This example shows static mode. You can also use DHCP or PPPoE mode. The SSL VPN connection is established over the WAN interface.

Note

The split tunneling routing address cannot use an FQDN or an address group that includes an FQDN.

To configure SSL VPN using the GUI:
  1. Configure the interface and firewall address. The port1 interface connects to the internal network.
    1. Go to Network > Interfaces and edit the wan1 interface.
    2. Set IP/Network Mask to 172.20.120.123/255.255.255.0.
    3. Edit port1 interface and set IP/Network Mask to 192.168.1.99/255.255.255.0.
    4. Click OK.
    5. Go to Policy & Objects > Address and create an address for internal subnet 192.168.1.0.
  2. Configure user and user group.
    1. Go to User & Device > User Definition to create a local user sslvpnuser1.
    2. Go to User & Device > User Groups to create a group sslvpngroup with the member sslvpnuser1.
  3. Configure SSL VPN web portal.
    1. Go to VPN > SSL-VPN Portals to create a tunnel mode only portal my-split-tunnel-portal.
    2. Enable Split Tunneling.
    3. Select Routing Address to define the destination network that will be routed through the tunnel. Leave undefined to use the destination in the respective firewall policies.
  4. Configure SSL VPN settings.
    1. Go to VPN > SSL-VPN Settings.
    2. For Listen on Interface(s), select wan1.
    3. Set Listen on Port to 10443.
    4. Optionally, set Restrict Access to Limit access to specific hosts, and specify the addresses of the hosts that are allowed to connect to this VPN.
    5. Choose a certificate for Server Certificate. The default is Fortinet_Factory.
    6. In Authentication/Portal Mapping All Other Users/Groups, set the Portal to tunnel-access.
    7. Create new Authentication/Portal Mapping for group sslvpngroup mapping portal my-split-tunnel-portal.
  5. Configure SSL VPN firewall policy.
    1. Go to Policy & Objects > IPv4 Policy.
    2. Fill in the firewall policy name. In this example, sslvpn split tunnel access.
    3. Incoming interface must be SSL-VPN tunnel interface(ssl.root).
    4. Choose an Outgoing Interface. In this example, port1.
    5. Set the Source to SSLVPN_TUNNEL_ADDR1 and group to sslvpngroup. The source address references the tunnel IP addresses that the remote clients are using.
    6. In this example, the Destination is 192.168.1.0.
    7. Set Schedule to always, Service to ALL, and Action to Accept.
    8. Click OK.
To configure SSL VPN using the CLI:
  1. Configure the interface and firewall address.
    config system interface 
        edit "wan1"
            set vdom "root"
            set ip 172.20.120.123 255.255.255.0
        next
    end
  2. Configure internal interface and protected subnet, then connect the port1 interface to the internal network.
    config system interface
        edit "port1"
            set vdom "root"
            set ip 192.168.1.99 255.255.255.0
        next
    end
    config firewall address
        edit "192.168.1.0"
            set subnet 192.168.1.0 255.255.255.0
        next
    end
  3. Configure user and user group.
    config user local
        edit "sslvpnuser1" 
            set type password
            set passwd your-password
        next 
    end
    config user group
        edit "sslvpngroup" 
            append member "sslvpnuser1"
        next 
    end
  4. Configure SSL VPN web portal.
    config vpn ssl web portal
        edit "my-split-tunnel-portal"
            set tunnel-mode enable
            set split-tunneling  enable
            set split-tunneling-routing-address "192.168.1.0"
            set ip-pools "SSLVPN_TUNNEL_ADDR1"
        next
    end
  5. Configure SSL VPN settings.
    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 "wan1"
        set source-address "all"
        set source-address6 "all"
        set default-portal "full-access"
        config authentication-rule
            edit 1
                set groups "sslvpngroup"
                set portal "my-split-tunnel-portal" 
            next        
        next
    end

    Optionally, to restrict access to specific hosts:

    config vpn ssl settings
        set source-address <address> <address> ... <address>
        set source-address6 <address> <address> ... <address>
    end
  6. Configure one SSL VPN firewall policy to allow remote user to access the internal network. Traffic is dropped from internal to remote client.
    config firewall policy 
        edit 1
            set name "sslvpn split tunnel access"
            set srcintf "ssl.root"
            set dstintf "port1"
            set srcaddr "SSLVPN_TUNNEL_ADDR1"
            set dstaddr "192.168.1.0"
            set groups “sslvpngroup”
            set action accept
            set schedule "always"
            set service "ALL"
        next
    end