Skip to content

FortiGate / FortiWiFi

Compatibility

Social WiFi has been tested and is proven to work on the following configurations:

FortiWiFi – wireless interfaces

  • FortiOS version 5.6.0 and above (tested up to 7.4.5)

FortiGate hardware or virtual machine – wired interfaces

  • recommended: FortiOS version 6.2.4 and above (tested up to 7.4.5)
  • FortiOS version 5.6.0 and above work if the captive portal is enabled on a physical interface, VLAN interfaces are not supported below FortiOS 6.2.4

Access the device’s configuration panel

This guide assumes using the web based UI of the controller, which you can access by entering the IP address of the device in your browser. The screenshots are based on firmware v5.6.2.

Alternatively, if your device is managed from FortiCloud, you can access the management UI from there.

RADIUS configuration

Go to User & DeviceRADIUS ServersCreate New and use the following settings:

NameSocial WiFi
Primary Server IP/Name35.205.62.147
Primary Server SecretRadius Secret is available in Access Points tab of the Social WiFi Panel
Secondary Server IP/NameLeave empty
Secondary Server SecretLeave empty
Authentication MethodSpecify
MethodPAP
NAS IPLeave empty

Press OK.

image_331558.png

Now you need to change the RADIUS port to 31812. Open the CLI Console (top right corner, between “help” and username).

image_372623.png

Copy (ctrl+C) and paste (ctrl+V) or type the following commands:

config user radius
edit "Social WiFi"
set radius-port 31812
next
end

image_351465.png

Also, please add an Accounting server the same way (CLI Console):

config user radius
edit "Social WiFi"
config accounting-server
edit 1
set status enable
set server 35.205.62.147
set secret [RADIUS secret from the panel]
set port 31813
next
next
end

2023-01-31_11-08.png

Setting the auth-timeout

In the CLI console, enter the following commands:

config user setting
set auth-timeout-type idle-timeout
end
config user group
edit Social\ WiFi\ -\ Guest
set authtimeout 480
end

Where the “set authtimeout 480” is in minutes and you can adjust the value freely. This will make your users have to relogin after not being active in the network for 8 hours.

2023-04-27_16-50.png

Then close the CLI console by clicking the “x” button in the top right corner.

Remote Group configuration

Go to User & Device → User Groups → Create New

image_153256.png

and use the following settings:

NameSocial WiFi - Guest
TypeFirewall
MembersLeave empty

Under Remote Groups, click Add and then select Social WiFi from the Remote Server dropdown list. Click OK to save and then click OK again.

image_594852.png

image_439981.png

Walled Garden configuration

Now we need to add all the services that will be available without logging in. This list includes Social WiFi login page and third-party social login services (like Facebook, Google). The following guide assumes firmware version 5.6.2, which doesn’t support domains with wildcard (e.g. “*.facebook.com”). Using wildcards was added in firmware 6.2.2, so if you have that version or higher, you may adjust the following steps accordingly.

The suggested way to add all required entries, is to use the CLI again to copy (ctrl+C) and paste (ctrl+V) the following scripts. Please note, that the script is split into two parts, because there’s a length limit that cannot be exceeded.

Part 1:

# Social WiFi main service
config firewall address
edit "Social WiFi - main 1"
set type fqdn
set fqdn "login.socialwifi.com"
next
edit "Social WiFi - main 2"
set type fqdn
set fqdn "sw-login.com"
next
end
config firewall addrgrp
edit "Social WiFI - main"
set member "Social WiFi - main 1" "Social WiFi - main 2"
next
end
# Facebook remarketing pixel
config firewall address
edit "Social WiFi - Facebook pixel 1"
set type fqdn
set fqdn "connect.facebook.net"
next
edit "Social WiFi - Facebook pixel 2"
set type fqdn
set fqdn "www.facebook.com"
next
end
config firewall addrgrp
edit "Social WiFI - Facebook pixel"
set member "Social WiFi - Facebook pixel 1" "Social WiFi - Facebook pixel 2"
next
end
# Google remarketing tag
config firewall address
edit "Social WiFi - Google tag 1"
set type fqdn
set fqdn "www.googletagmanager.com"
next
edit "Social WiFi - Google tag 2"
set type fqdn
set fqdn "www.googleadservices.com"
next
edit "Social WiFi - Google tag 3"
set type fqdn
set fqdn "googleads.g.doubleclick.net"
next
end
config firewall addrgrp
edit "Social WiFI - Google tag"
set member "Social WiFi - Google tag 1" "Social WiFi - Google tag 2" "Social WiFi - Google tag 3"
next
end
# Facebook login
config firewall address
edit "Social WiFi - Facebook 1"
set type fqdn
set fqdn "www.facebook.com"
next
edit "Social WiFi - Facebook 2"
set type fqdn
set fqdn "facebook.com"
next
edit "Social WiFi - Facebook 3"
set type fqdn
set fqdn "static.xx.fbcdn.net"
next
edit "Social WiFi - Facebook 4"
set type fqdn
set fqdn "external-frt3-2.xx.fbcdn.net"
next
end
config firewall addrgrp
edit "Social WiFi - Facebook"
set member "Social WiFi - Facebook 1" "Social WiFi - Facebook 2" "Social WiFi - Facebook 3" "Social WiFi - Facebook 4"
next
end

Part 2:

# Twitter login
config firewall address
edit "Social WiFi - Twitter 1"
set type fqdn
set fqdn "twitter.com"
next
edit "Social WiFi - Twitter 2"
set type fqdn
set fqdn "api.twitter.com"
next
edit "Social WiFi - Twitter 3"
set type fqdn
set fqdn "x.com"
next
edit "Social WiFi - Twitter 4"
set type fqdn
set fqdn "api.x.com"
next
edit "Social WiFi - Twitter 5"
set type fqdn
set fqdn "pbs.twimg.com"
next
edit "Social WiFi - Twitter 6"
set type fqdn
set fqdn "abs-0.twimg.com"
next
edit "Social WiFi - Twitter 7"
set type fqdn
set fqdn "abs.twimg.com"
next
end
config firewall addrgrp
edit "Social WiFi - Twitter"
set member "Social WiFi - Twitter 1" "Social WiFi - Twitter 2" "Social WiFi - Twitter 3" "Social WiFi - Twitter 4" "Social WiFi - Twitter 5"
next
end
# LinkedIn login
config firewall address
edit "Social WiFi - LinkedIn 1"
set type fqdn
set fqdn "www.linkedin.com"
next
edit "Social WiFi - LinkedIn 2"
set type fqdn
set fqdn "static-exp1.licdn.com"
next
edit "Social WiFi - LinkedIn 3"
set type fqdn
set fqdn "media-exp1.licdn.com"
next
edit "Social WiFi - LinkedIn 4"
set type fqdn
set fqdn "static.licdn.com"
next
end
config firewall addrgrp
edit "Social WiFi - LinkedIn"
set member "Social WiFi - LinkedIn 1" "Social WiFi - LinkedIn 2" "Social WiFi - LinkedIn 3" "Social WiFi - LinkedIn 4"
next
end
# Group everything in one group
config firewall addrgrp
edit "Social WiFi"
set member "Social WiFI - main" "Social WiFI - Facebook pixel" "Social WiFI - Google tag" "Social WiFi - Google" "Social WiFi - Facebook" "Social WiFi - Twitter" "Social WiFi - LinkedIn"
next
end

WiFi configuration (wireless interface)

Go to WiFi & Switch Controller → SSID and set the “Broadcast SSID” toggle off.

image_143139.png

image_633695.png

Press OK and Create New SSID.

image_176170.png

Interface configuration:

Interface NameSocial WiFi
Aliassw interface
TypeWiFi SSID
Traffic ModeTunnel
IP/Network Mask10.8.0.1/255.255.0.0
DHCP ServerEnabled
Address RangeShould be prefilled, if not, use 10.8.0.2 – 10.8.255.254
NetmaskShould be prefilled, if not, use 255.255.0.0

image_596471.png

WiFi Settings:

SSIDSocial WiFi (or any name that you prefer)
Security ModeCaptive Portal
Portal TypeAuthentication
Authentication PortalExternal: http://login.socialwifi.com/
User GroupsSocial WiFi – Guest
Exempt SourcesLeave empty
Exempt Destinations/ServicesSocial WiFi (in ADDRESS GROUP tab, scroll down if it’s hidden)
Redirect after Captive PortalOriginal request

image_724420.png

Press OK.

Interface configuration (wired interface)

You can also run Social WiFi on a wired, physical interface and plug access points there. In this scenario those access points don’t have to be managed by the FortiGate unit.

Go to Network → Interfaces and double-click on the interface that you want to install Social WiFi on and configure as follows:

Interface Name*any lan interface you want Social WiFi on
Aliassocialwifi-lan*
RoleLAN
Addressing modeManual
IP/Network Mask10.8.0.1/255.255.0.0
IPv4Leave unchecked
DHCP ServerEnabled
Address rangeShould be autofilled, if not - copy from the image below
Security ModeCaptive Portal
Authentication PortalExternal: http://login.socialwifi.com/
User AccessRestricted to Groups
User GroupsSocial WiFi – Guest
Customize Portal MessagesUnchecked
Exempt SourcesLeave empty
Exempt Destinations/ServicesSocial WiFi

2023-01-23_13-22.png

2023-01-23_13-24.png

Press OK.

Firewall configuration

You need to allow for traffic from guests using the WiFi, because the default policy is to deny all traffic.

Go to Policy & Objects → IPv4 Policy → Create New and use the following settings:

NameSocial WiFi Allow Guests
Incoming InterfaceSocial WiFi (the interface created or edited in the previous point)
Outgoing Interfacewan1 (your WAN interface)
Sourceall
Destinationall
ServiceALL
ActionACCEPT

Press OK.

image_870202.png

Add the device to Social WiFi Panel

The setup of the controller is now finished. The last step is to add the MAC address(es) to the Social WiFi platform.
Usually the MAC address will be printed on a label on the device itself. It should be visible in the GUI as well on the edit interface screen. If you don’t know the MAC address, please contact Social WiFi Support.

Now, switch to Social WiFi Panel, go to Access Points tab, click the Add button and paste the MAC address(es). Click Create.

Test the solution

Connect with the WiFi network. You should see a login page. Go through the login process and, once finished, you should have internet access. You should see first connections and authorisations in the Social WiFi Panel’s statistics section.

Troubleshooting

If you have any external firewall behind the FortiGate device, please make sure that you enable these ports:

  • TCP/8080 (Captive Portal (http redirection))
  • TCP/8081 (Captive Portal (https redirection)
  • UDP/9177, 337008 (AP Communication (Capture Packets subsystem))