FortiAuthenticator 6.6.0 Examples
FortiAuthenticator 6.6.0 Examples
FortiAuthenticator 6.6.0
FORTINET DOCUMENT LIBRARY
[Link]
FORTINET BLOG
[Link]
FORTIGUARD LABS
[Link]
FEEDBACK
Email: techdoc@[Link]
June 3, 2025
FortiAuthenticator 6.6.0 Examples
23-663-935255-20250603
TABLE OF CONTENTS
Change Log 7
FortiAuthenticator standalone IAM 9
Certificate management 9
FortiAuthenticator as a Certificate Authority 9
Creating a new CA on the FortiAuthenticator 10
Installing the CA on the network 10
Internet Explorer and Chrome 11
Firefox 13
Creating a CSR on the FortiGate 15
Importing and signing the CSR on the FortiAuthenticator 16
Importing the local certificate to the FortiGate 17
Configuring the certificate for the GUI 17
Results 18
FortiAuthenticator certificate with SSL inspection 18
Creating a CSR on the FortiGate 19
Creating an Intermediate CA on the FortiAuthenticator 21
Importing the signed certificate on the FortiGate 21
Configuring full SSL inspection 22
Results 24
FortiAuthenticator certificate with SSL inspection using an HSM 25
Configuring the NetHSM profile on FortiAuthenticator 26
Creating a local CA certificate using an HSM server 27
Creating a CSR on the FortiGate 28
Creating an Intermediate CA on the FortiAuthenticator 29
Importing the signed certificate on the FortiGate 30
Configuring full SSL inspection 30
Results 33
Authentication and User management 34
FortiToken Mobile Push for Agentless VPN 34
MAC authentication bypass with dynamic VLAN assignment 48
FortiAuthenticator user self-registration 54
Computer authentication using FortiAuthenticator with MS AD Root CA 62
Creating the SSID 73
Creating interfaces 74
Logging in to FortiGate as an administrator using FIDO2 authentication 75
Configuring FIDO2 authentication for Agentless VPN 82
WiFi and onboarding 90
WiFi onboarding using FortiAuthenticator Smart Connect 90
Advanced scenarios 141
Accessing an AD server with a zero trust tunnel on FortiAuthenticator 141
FortiAuthenticator SCIM integration with AWS 149
Log in to a Windows host using SSOMA 160
FortiAuthenticator SSOMA for native Microsoft Entra ID joined workstation 164
2024-01-10 Updated Creating a remote OAuth server with Azure application ID and authentication key on
page 225.
2024-01-25 Updated the topology diagram in SAML FSSO with FortiAuthenticator and Microsoft Entra ID
(formerly Microsoft Azure AD) on page 218.
2024-01-29 Updated SAML FSSO with FortiAuthenticator and Microsoft Entra ID (formerly Microsoft Azure
AD) on page 218.
2024-02-07 Updated:
l Accessing an AD server with a zero trust tunnel on FortiAuthenticator on page 141
2024-02-09 Updated Accessing an AD server with a zero trust tunnel on FortiAuthenticator on page 141 and
Configuring a ZTNA server on page 145.
2024-02-14 Updated the topology diagrams in FortiAuthenticator as a Wireless Guest Portal for FortiGate on
page 364 and FortiAuthenticator as a Wired Guest Portal for FortiGate on page 372.
2024-02-15 Updated the topology diagram in FortiToken Mobile Push for Agentless VPN on page 34.
2024-02-16 Updated the topology diagrams in FortiAuthenticator user self-registration on page 54, LDAP
authentication for Agentless VPN with FortiAuthenticator on page 276, and SMS two-factor
authentication for Agentless VPN on page 285.
2024-02-22 Updated the topology diagram in MAC authentication bypass with dynamic VLAN assignment
on page 48.
2024-02-23 Updated the topology diagrams in SAML FSSO with FortiAuthenticator and Okta on page 187.
2024-04-08 Updated the topology diagrams in Office 365 SAML authentication using FortiAuthenticator with
2FA on page 204 and FortiGate Agentless VPN with FortiAuthenticator as SAML IdP on page
254.
2024-04-11 Updated the topology diagram in Computer authentication using FortiAuthenticator with MS AD
Root CA on page 62.
2024-04-17 Updated the topology diagram in Google Workspace integration using LDAP on page 381.
2024-04-24 Updated the topology diagram in FortiGate Agentless VPN with FortiAuthenticator as the IdP
proxy for Azure on page 295.
2024-06-21 Added Configuring FIDO2 authentication for Agentless VPN on page 82.
2024-08-09 Added Logging in to FortiGate as an administrator using FIDO2 authentication on page 75.
2024-08-28 Added FortiAuthenticator SSOMA for native Microsoft Entra ID joined workstation on page 164.
2025-06-02 Added Configuring FortiAuthenticator SAML with Microsoft Entra ID (formerly Azure AD) on
page 208.
2025-06-03 Updated Configuring FortiAuthenticator SAML with Microsoft Entra ID (formerly Azure AD) on
page 208.
Certificate management
This section describes managing certificates with the FortiAuthenticator device.
FortiAuthenticator can act as a certificate authority (CA) for the creation and signing of X.509 certificates, such as server
certificates for HTTPS and SSH, and client certificates for HTTPS, SSL, and IPsec VPN.
1. On the FortiAuthenticator, go to Certificate Management > Certificate Authorities > Local CAs and create a new CA.
Enter a Certificate ID, select Root CA certificate, and configure the key options as shown in the example.
2. Make sure to place the certificate in the Trusted Root Certification Authorities store.
3. Finish the Wizard and select Yes to confirm and install the certificate.
Firefox
1. In the web browser, go to Options > Privacy & Security > Certificates, and select View Certificates.
1. On the FortiGate, go to System > Certificates and select Generate to create a new certificate signing request (CSR).
Enter a Certificate Name, the Internet facing IP address of the FortiGate, and a valid email address, then configure
the key options as shown in the example.
The Subject Alternative Name field must be configured with the internet facing IP address or FQDN in the following
format: IP:x.x.x.x or DNS:[Link].
2. Once created, the certificate will show a Status of Pending. Highlight the certificate and select Download.
1. Back on the FortiAuthenticator, go to Certificate Management > End Entities > Users and import the .csr certificate
created earlier.
Make sure to select the Certificate authority from the dropdown menu, and set the Hash algorithm to SHA-256, as
configured earlier.
2. Once imported, you should see that the certificate has been signed by the FortiAuthenticator, with a Status of
Active. Highlight the certificate and select Export Certificate.
1. Back on the FortiGate, go to System > Certificates, and select Local Certificate from the Import dropdown menu.
Browse to the .cer certificate, and select OK.
You should now see that the certificate's Status has changed from Pending to OK. You may have to refresh your
page to see the status change.
Apply.
Results
Close and reopen your browser, and go to the FortiGate admin login page. If you click on the lock icon next to the
address bar, you should see that the certificate has been signed and verified by the FortiAuthenticator. As a result, no
certificate errors will appear.
1. On the FortiGate, go to System > Certificates and select Generate to create a new certificate signing request (CSR).
Enter a Certificate Name, the Internet facing IP address of the FortiGate, and a valid email address, then configure
the key options as shown in the example.
The Subject Alternative Name field must be configured with the internet facing IP address or FQDN in the following
format: IP:x.x.x.x or DNS:[Link].
2. Once created, the certificate will show a Status of Pending. Highlight the certificate and select Download.
1. On the FortiAuthenticator, go to Certificate Management > Certificate Authorities > Local CAs and select Import.
Set Type to CSR to sign, enter a Certificate ID, and import the CSR file. Make sure to select the Certificate authority
from the dropdown menu, and set the Hash algorithm to SHA-256.
2. Once imported, you should see that the certificate has been signed by the FortiAuthenticator, showing a Status of
Active, and with the CA Type of Intermediate (non-signing) CA. Highlight the certificate and select Export
Certificate.
1. Back on the FortiGate, go to System > Certificates, and select Import > Local Certificate.
Browse to the CRT file and select OK.
2. You should now see that the certificate has a Status of OK.
2. Add the certificate to your web browser's list of trusted certificates. End users will likely see certificate warnings
unless the certificate is installed in their browser.
3. Next go to Policy & Objects > IPv4 Policy and edit the policy that allows Internet access.
Under Security Profiles, enable SSL/SSH Inspection and select the custom profile created earlier.
Enable Application Control and set it to default.
Results
1. To test the certificate, open your web browser and attempt to navigate to an HTTPS website (in the example,
[Link]
Click on the lock icon next to the address bar and click Show connection details.
2. You should now see that the certificate from the FortiGate ([Link]) has signed and verified access to
the site. As a result, no certificate errors will appear.
1. In FortiAuthenticator, go to System > Administration > NetHSMs, and click Create New.
2. In the Create New HSM Server window, configure the following:
Server IP/FQDN Enter the IP address or FQDN of the HSM server to which the
FortiAuthenticator will connect.
Partition Password Enter the key partition password from the HSM server.
Client IP Enter the address of the FortiAuthenticator interface that the HSM will see.
Upload server certificate Click Upload server certificate to select the certificate from your HSM.
1. Make sure the FortiAuthenticator client certificate uses the <FAC IP>.pem naming convention. For example:
[Link].pem
2. Upload the FortiAuthenticator client certificate to Safenet Luna HSM using SCP transfer.
scp [certificate filename] admin@[HSM address]:
3. Use SSH to connect to the HSM, then register your FortiAuthenticator, and associate it with a partition.
ssh -1 admin [HSM address]
client register -c [client name] -ip [client address]
client assignpartition -c [client name] -p [partition name]
4. Confirm the status of the NetHSM client. For example:
client show -c my_fac
ClientID: my_fac
IPAddress: [Link]
Partitions: my_partition
1. On FortiAuthenticator, go to Certificate Management > Certificate Authorities > Local CAs, and click Create New.
1. On the FortiGate, go to System > Certificates and select Generate to create a new certificate signing request (CSR).
Enter a Certificate Name, the Internet facing IP address of the FortiGate, and a valid email address, then configure
the key options as shown in the example.
The Subject Alternative Name field must be configured with the internet facing IP address or FQDN in the following
format: IP:x.x.x.x or DNS:[Link].
2. Once created, the certificate will show a Status of Pending. Highlight the certificate and select Download.
1. On the FortiAuthenticator, go to Certificate Management > Certificate Authorities > Local CAs and select Import.
Set Type to CSR to sign, enter a Certificate ID, and import the CSR file.
2. Select the Certificate authority configured with the HSM from the dropdown menu, and set the Hash algorithm to
SHA-256. Click OK.
3. Once imported, you should see that the certificate has been signed by the FortiAuthenticator, showing a Status of
Active, and with the CA Type of Intermediate (non-signing) CA.
4. Highlight the certificate and select Export Certificate.
1. Back on the FortiGate, go to System > Certificates and select Import > Local Certificate.
Browse to the .crt file, and select OK.
2. You should now see that the certificate has a Status of OK.
1. On the FortiGate, go to Security Profiles > SSL/SSH Inspection, and create a new profile.
Enter a Name, select the certificate from the CA Certificate dropdown menu, and make sure Inspection Method is
set to Full SSL Inspection.
2. Add the certificate to your web browser's list of trusted certificates. End users will likely see certificate warnings
unless the certificate is installed in their browser.
3. Next go to Policy & Objects > IPv4 Policy and edit the policy that allows Internet access.
4. Under Security Profiles, enable SSL/SSH Inspection and select the custom profile created earlier.
5. Enable Application Control and set it to default.
Results
1. To test the certificate, open your web browser and attempt to navigate to an HTTPS website (in the example,
[Link]
Click on the lock icon next to the address bar, and click Show connection details.
2. You should now see that the certificate from the FortiGate has signed and verified access to the site. As a result, no
certificate errors will appear.
In this example, you set up FortiAuthenticator to function as a RADIUS server to authenticate Agentless VPN users
using FortiToken Mobile Push two-factor authentication. With Push notifications enabled, the user can easily accept or
deny the authentication request.
For this configuration, you:
l Create a user on the FortiAuthenticator.
l Assign a FortiToken Mobile license to the user.
l Create the RADIUS client (FortiGate) on the FortiAuthenticator, and enable FortiToken Mobile Push notifications.
l Connect the FortiGate to the RADIUS server (FortiAuthenticator).
l Create an Agentless VPN on the FortiGate, allowing internal access for remote users.
The following names and IP addresses are used:
l Username: gthreepwood
l User group: RemoteFTMGroup
l RADIUS server: OfficeRADIUS
l RADIUS client: OfficeServer
l Agentless VPN user group: SSLVPNGroup
l FortiAuthenticator: [Link]
l FortiGate: [Link]
For the purposes of this example, a FortiToken Mobile free trial token is used. This example also assumes that the user
has already installed the FortiToken Mobile application on their smartphone. You can install the application for Android
and iOS. For details, see:
l FortiToken Mobile for Android
l FortiToken Mobile for iOS
If FortiAuthenticator is not accessible to the Internet, you must create a VIP and policy on
FortiGate in order for mobile push to work. The VIP must point from an external port to
FortiAuthenticator at port 443.
To add a FortiToken:
1. On the FortiAuthenticator, go to Authentication > User Management > FortiTokens, and select Create New.
2. Set Token type to FortiToken Mobile, and enter the FortiToken Activation codes in the field provided.
1. On the FortiAuthenticator, go to Authentication > User Management > Local Users, and select Create New.
Enter a Username (gthreepwood) and enter and confirm the user password.
Enable Allow RADIUS authentication, and select OK to access additional settings.
2. Enable Token-based authentication and select to deliver the token code by FortiToken. Select the FortiToken
added earlier from the FortiToken Mobile drop-down menu.
Set Delivery method to Email. This will automatically open the User Information section where you can enter the
user email address in the field provided.
3. Next, go to Authentication > User Management > User Groups, and select Create New.
Enter a Name (RemoteFTMUsers) and add gthreepwood to the group by moving the user from Available users to
Selected users.
4. The FortiAuthenticator sends the FortiToken Mobile activation to the user’s email address. If the email does not
appear in the inbox, check the spam folder.
The user activates their FortiToken Mobile through the FortiToken Mobile application by either entering the
activation code provided or by scanning the QR code attached.
1. On the FortiAuthenticator, go to Authentication > RADIUS Service > Clients, and select Create New to add the
FortiGate as a RADIUS client.
2. Enter a Name (OfficeServer), the IP address of the FortiGate, and set a Secret.
The secret is a pre-shared secure password that the FortiGate will use to authenticate to the FortiAuthenticator.
3. Click OK.
1. Go to Authentication > RADIUS Service > Policies, and select Create New.
2. Enter the RADIUS policy name, description, and select the FortiGate RADIUS client.
3. Optionally, configure RADIUS attribute criteria.
4. Choose Password/OTP authentication as the authentication type.
5. Choose a username format (in this example: username@realm), and select the Local realm.
6. Set the authentication method to Mandatory two-factor authentication, and enable the Allow FortiToken Mobile push
notifications option.
7. Click Save and Exit.
Note the Username input format. This is the format that the user must use to enter their
username in the web portal, made up of their username and realm. In this example, the full
username for gthreepwood is gthreepwood@local.
1. On the FortiGate, go to User & Device > RADIUS Servers, and select Create New to connect to the RADIUS server
(FortiAuthenticator).
Enter a Name (OfficeRADIUS), the IP address of the FortiAuthenticator, and enter the Secret created before.
Select Test Connectivity to be sure you can connect to the RADIUS server. Then select Test User Credentials and
enter the credentials for gthreepwood.
Because the user has been assigned a FortiToken, the test should return stating that More validation is required.
The FortiGate can now connect to the FortiAuthenticator as the RADIUS client configured earlier.
2. Then go to User & Device > User Groups, and select Create New to map authenticated remote users to a user
group on the FortiGate.
Enter a Name (SSLVPNGroup) and select Add under Remote Groups.
Select OfficeRADIUS under the Remote Server drop-down menu, and leave the Groups field blank.
#set remoteauthtimeout 60
#end
1. On the FortiGate, go to VPN > Agentless VPN Portals, and edit the full-access portal.
Toggle Enable Split Tunneling so that it is disabled.
3. Then go to Policy & Objects > IPv4 Policy and create a new Agentless VPN policy.
Set Incoming Interface to the Agentless VPN tunnel interface and set Outgoing Interface to the Internet-facing
interface (in this case, wan1).
Set Source to the SSLVPNGroup user group and the all address.
Set Destination to all, Schedule to always, Service to ALL, and enable NAT.
Results
1. From a remote device, open a web browser and navigate to the Agentless VPN web portal ([Link]
ip>:10443).
2. Enter gthreepwood‘s credentials and select Login. Use the correct format (in this case, username@realm), as per
the client configuration on the FortiAuthenticator.
3. The FortiAuthenticator will then push a login request notification through the FortiToken Mobile application. Select
Approve.
Upon approving the authentication, gthreepwood is successfully logged into the Agentless VPN portal.
4. On the FortiGate, go to Monitor > Agentless VPN Monitor to confirm the user’s connection.
Alternatively, you can use the Import option to import this information from a CSV file.
RADIUS attributes can only be added after the group has been created.
1. Go to Authentication > RADIUS Service > Clients and create a new RADIUS client.
Configure the IP and shared secret from your switch, and click OK.
1. Go to Authentication > RADIUS Service > Policies and create a new RADIUS policy.
In RADIUS clients, enter a policy name, and add the previously configured RADIUS client.
3. In Identity source, add the previously configured MAC group to Authorized groups.
4. Configure the RADIUS response to reject unauthorized requests, and click Save and exit.
Results
1. Connect the wired device (in this case, the printer).
2. Using tcpdump, FortiAuthenticator shows receipt of an incoming authentication request (execute tcpdump
host [Link] -nnvvXS):
tcpdump: listening on port1, link-type EN10MB (Ethernet), capture size 262144 bytes
[Link].110399 IP (tos 0x0, ttl 64, id 18417, offset 0, flags [none], proto UDP (17),
length 185)
[Link].60114 > [Link].1812: [udp sum ok] RADIUS, length: 157
Access-Request (1), id: 0x08, Authenticator: b77fe0657747891fc8d53ae0ad2b0e7a
User-Name Attribute (1), length: 14, Value: 0022681af1a0 #Switch forces username
to be endpoint MAC address, no configuration needed on endpoint
0x0000: 3030 3232 3638 3161 6631 6130
NAS-Port Attribute (5), length: 6, Value: 70
0x0000: 0000 0046
EAP-Message Attribute (79), length: 19, Value: .
0x0000: 0200 0011 0130 3032 3236 3831 6166 3161
0x0010: 30
Message-Authenticator Attribute (80), length: 18, Value: .y{.j.%..9|es.'x
0x0000: a679 7b82 6344 2593 f639 7c65 73eb 2778
Acct-Session-Id Attribute (44), length: 24, value: 802.1x81fa002500078442
0x0000: 384f 322e 3178 3831 6661 3030 3235 3030
0x0010: 3037 3834 3432
NAS-Port-rd Attribute (87), length: 12, Value: ge-0/0/0.0
0x0000: 6765 2430 2f30 2f30 2e30
Calling-Station-Id Attribute (31), length: 19, value: 00-22-68-1a-fl-a0
0x0000: 3030 2032 3220 3638 2031 6120 6631 2461
0x0010: 30
Called-Station-Id Attribute (30), length: 19, Value: a8-40-e5-b0-21-80
0x0000: 6138 2464 3024 6535 2d62 302d 3231 2d38
0x0010: 30
NAS-Port-Type Attribute (61), length: 6, value: Ethernet
0x0000: 0000 000f
3. On the FortiAuthenticator, go to Logging > Log Access > Logs to verify the device authentication.
The Debug Log (at [Link] should also confirm successful authentication.
4. Continuing with the tcpdump, authentication is accepted from FortiAuthenticator and authorization attributes
returned to the switch:
[Link].115264 IP (tos Ox0, ttl 64, id 49111, offset 0, flags [none], proto UDP (17),
length 73)
[Link].1812 > [Link].60114: (bad udp cksum 0x1880 -> 0x5ccel] RADIUS, length: 45
Access-Accept (2), id: 0x08, Authenticator: b5c7b1bb5a316fb483a622eaae58ccc2
Tunnel-Type Attribute (64), length: 6, Value: Tag[Unused] #13
0x0000: 0000 000d
Tunnel-Medium-Type Attribute (65), length: 6, Value: Tag[Unused] 802
0x0000: 0000 0006
Tunnel-Private-Group-ID Attribute (81), length: 13, Value: engineering
0x0000: 656e 6769 6e65 6572 696e 67
0x0000: 4500 0049 bfd7 0000 4011 a293 0a01 021d E..I....@ .......
0x0010: 0a01 021b 0714 ead2 0035 1880 0208 002d 5
0x0020: b5c7 blbb 5a31 6fb4 83a6 22ea ae58 ccc2 ....21o..."..X..
0x0030: 4006 0000 0000 4106 0000 0006 510d 656e @ A Q en
0x0040: 6769 6e65 6572 696e 67 gineering
5. Post-authentication DHCP transaction is picked up by FortiAuthenticator
The Switch CLI shows a successful dot1x session:
root# run show dotlx interface ge-0/0/0.0
802.1X Information:
Interface Role State MAC address User
ge-0/0/0.0 Authenticator Authenticated [Link] 0022681af1a0
The MAC address interface has been dynamically placed into correct VLAN:
root# run show vlans engineering
Name Tag Interfaces
engineering 10
ge-0/0/0.0*, ge-0/0/11.0*
Additionally, the printer shows as available on the network:
root# run show arp interface vlan.10
MAC Address Address Name Interface Flags
[Link] [Link] [Link] vlan.10 none
[Link]l [Link] [Link] vlan.10 none
[Link] [Link] [Link] vlan.10 none
[Link]l:a0 [Link] [Link] vlan.10 none
[Link] [Link] [Link] vlan.10 none
Total entries: 5
{master:0}[edit]
root* run ping [Link]
PING [Link] ([Link]): 56 data bytes
64 bytes from [Link]: icmp_seq=0 tt1=128 time=2.068 ms
64 bytes from [Link]: icmp_seq=1 tt1=128 time=2.236 ms
64 bytes from [Link]: icmp_seq=2 tt1=128 time=2.699 ms
1. Go to Authentication > User Management > User Groups and create a new user group for self-registering users.
Enter a Name and select OK. Users will be added to this group once they register through the self-registration
portal.
Enabling self-registration
To enable self-registration:
2. Then go to Authentication > Self-service Portal > Self-registration and select Enable.
Enable Require administrator approval and Enable email to freeform addresses, and enter the administrator’s email
address in the field provided.
Enable Place registered users into a group, select the user group created earlier, and configure basic account
information to be sent to the user by Email.
Open the Required Field Configuration dropdown and enable First name, Last name, and Email address.
1. Go to System > Messaging > SMTP Servers and create a new email server for your users.
Enter a Name, the IP address of the FortiAuthenticator, and leave the default port value (25).
Enter the administrator’s email address, Account username, and Password.
Note that, for the purpose of this example, Secure connection will not be set to STARTTLS as a signed CA
certificate would be required.
2. Once created, highlight the new server and select Set as Default.
The new SMTP server will now be used for future user registration.
Results - Self-registration
1. When the user visits the login page, [Link] they can click the Register
button, where they will be prompted to enter their information.
They will need to enter and confirm a Username, Password, First name, Last name, and Email address. These are
the only required fields, as configured in the FortiAuthenticator earlier.
Select Submit.
2. The user's registration is successful, and their information has been sent to the administrator for approval.
3. When the administrator has enabled the user’s account, the user will receive an activation welcome email.
The user's login information will be listed.
5. The user is now logged into their account where they can review their information.
As recommended in the user’s welcome email, the user may change their password. However, this is optional.
2. In the administrator’s email account, open the user’s Approval Required email. The user’s full name will appear in
the email’s subject, along with their username in the email’s body.
Select the link to approve or deny the user.
3. The link will take you to the New User Approval page, where you can review the user’s information and either
approve or deny the user’s full registration.
Select Approve.
4. The user has now been approved and activated by the administrator.
This can be confirmed by going back to Authentication > User Management > Local Users. The user’s Status has
changed to Enabled.
5. You can also go to Logging > Log Access > Logs to view the successful login of the user and more information.
2. Link the GPO to the OU where the client computers are located.
The computer account in Active Directory must use the attribute dNSHostName with the value of the computer's
name. This attribute is used later on FortiAuthenticator when creating the user remote sync rule.
Once the Root CA is configured, you can issue certificates from AD to both the FortiGate and the FortiAuthenticator.
1. In FortiAuthenticator, go to Authentication > Remote Auth. Servers > LDAP, and click Create New.
2. Under Create New LDAP Server, set the following:
a. Name: Enter the server name, for example: AD_Computers.
b. Primary server name/IP: Enter the LDAP server name, for example: [Link] using Port 636.
c. Base distinguished name: Enter the base distinguished name, for example: DC=wl-cse,DC=net.
d. Bind type: Regular.
Enter the username and password for your LDAP user.
3. Under Query Elements, set the following:
a. User object class: computer.
b. Username attribute: dNShostName.
c. Group object class: group.
d. Obtain group memberships from: Group attribute.
e. Group membership attribute: memberOf.
5. Click OK.
1. Go to Authentication > User Management > Realms, and click Create New.
2. Set the following:
a. Name: Enter a name for the realm, for example: host.
b. User source: Select the previously configured remote LDAP server.
3. Click OK.
1. Go to Authentication > User Management > User Groups, and click Create New.
2. Set the following:
a. Name: Enter a name for the LDAP group, for example: AD_LAB_PC.
b. Type: Remote LDAP.
c. User retrieval: Set a list of imported remote LDAP users.
d. Remote LDAP: Select the previously configured remote LDAP server, for example AD_Computers.
e. LDAP users: Add your chosen LDAP users to the Selected LDAP Users pane.
3. Click OK.
1. Go to Authentication > User Management > Remote User Sync Rules, and click Create New.
2. Under Edit Remote LDAP User Synchronization Rule, set the following:
a. Name: Enter a name for the rule, for example: AD-computers.
b. Remote LDAP: Select the remote LDAP server you previously configured.
c. Base distinguished name: Enter your base distinguished name, for example: DC=wl-cse,DC=net.
d. LDAP filter: Select the LDAP filter which matches your specific group in Active Directory, for example: (&
(objectClass=computer)(memberof=CN=LAB-Computers,OU=Computers,OU=LAB,DC=wl-
cse,DC=net)).
3. Under Synchronization Attributes, set the following:
a. Token-based authentication sync priorities: Select None.
b. Sync every: Select the sync frequency based on your preferences, for example: 1 hour(s).
c. Sync as: Remote LDAP User.
d. User role for new user imports: User.
e. Group to associate users with: Select your remote LDAP user group.
f. Certificate binding CA: Select your CA for certificate binding.
5. Click OK.
Once the user sync rule has been created, run it to import your user (computer) account, and then verify the user was
successfully created in Authentication > User Management > Remote Users and that the certificate binding is in place.
1. Go to Authentication > User Management > User Groups, and edit the user group associated with the remote
LDAP users.
2. Under RADIUS Attributes, add the RADIUS attributes required by your configuration. In this example, the following
attributes are required:
l Tunnel-Type: VLAN.
l Tunnel-Medium-Type: IEEE-802.
l Tunnel-Private-Group-Id: 240.
l Fortinet-Group-Name: FTNT_LAB_Computers.
1. Go to Authentication > RADIUS Service > Clients, and click Create New.
2. Set the following:
a. Name: Enter a name for the RADIUS client, for example: FGT-LAB.
b. Client address: Select IP/Hostname, and enter your RADIUS client's IP or hostname, for example: [Link]-
[Link].
c. Secret: Enter a shared secret. This will also be used to configure RADIUS settings on FortiGate.
d. (Optional) Accept RADIUS accounting messages for usage enforcement: Enabled.
e. (Optional) Support RADIUS Disconnect messages: Enabled.
3. Click OK.
3. Click OK.
1. Go to Authentication > RADIUS Service > Policies, and click Create New.
2. Under RADIUS clients, configure the following, and click Next.
a. Policy name: Enter a name for this policy, for example: FGT-Computer-TLS.
b. RADIUS clients: Add the previously configured FortiGate RADIUS client to the Chosen RADIUS Clients
section.
4. Under Authentication type, choose Client Certificates (EAP-TLS), and click Next.
1. On FortiGate, go to User & Authentication > RADIUS Servers, and click Create New.
2. Under New RADIUS Server, set the following:
a. Name: Enter a name for the RADIUS server, for example: FAC.
b. Authentication method: Default.
4. Click OK.
1. On FortiGate, go to WiFi & Switch Controller > SSID, and click Create New > SSID.
2. Create a new SSID with Dynamic VLAN assignment enabled under Additional Settings.
Creating interfaces
You can now create interfaces as required.
Results
Once the configuration is complete, you should now be able to authenticate your computer using FortiAuthenticator with
a Microsoft AD Root CA.
To confirm computer authentication is working as intended:
1. When connecting to the client, you can see Authentication Success in the FortiAuthenticator logs.
2. When reviewing the debug logs, you can see that certificate binding check has passed.
4. Packet capture shows the RADIUS-Accept message, including the VLAN 240.
In this example, we will log in to a FortiGate device using FIDO2 authentication method for SAML.
FortiGate acts as the web authentication relying party:
l SAML authentication configured for the admin authentication using FortiAuthenticator as the IdP.
FortiAuthenticator is the web authenticator:
l FortiAuthenticator uses local and remote LDAP users as example.
l FortiAuthenticator is the IdP for FortiGate.
All Fortinet products supporting SAML for authentication can also use FIDO2.
3. In the Security Fabric Settings window, in SAML Single Sign-On, click Advanced Options.
A new SAML SSO window opens.
5. Click OK.
6. Click OK.
1. Go to Authentication > SAML IdP > General, and select Enable SAML Identity Provider portal.
2. In Server address, enter the FQDN for FortiAuthenticator.
3. Enable Use default realm when user-provided realm is different from all configured realms.
4. In Realms, add realms.
5. Click Save.
8. Click Save.
1. Go to User Management > Remote Users and select the LDAP tab.
2. From the list, double-click an LDAP user to edit it.
The Edit Remote LDAP User window opens.
If you need to import a new remote user, see Remote users in the latest FortiAuthenticator Administration Guide.
3. Enable FIDO authentication.
4. Select Register FIDO key.
The Add new FIDO Key window opens.
5. Enter a key name in FIDO Key name.
6. Click OK.
7. Follow step 7 from Editing a local user to set up FIDO authentication.
8. Click Save.
Results
1. On the web browser, go to the FortiGate GUI.
2. Select Sign in with Security Fabric.
3. In the IdP login screen, enter the user name and click Next.
4. In the Verify your identity dialog that appears, select USB security key, push the button on the FortiToken 410
physical device.
If this is the first login, the user account is created.
5. Click Continue.
1. Go to User & Authentication > Single Sing-On, and select Create new.
A New Single Sign-On wizard opens.
2. In Name, enter the name for the SP.
3. Click Next.
4. In the Service Provider Configuration:
a. In Address, keep the FQDN of the SP (FortiGate).
1. Go to Authentication > SAML IdP > General, and select Enable SAMLIdentity Provider portal.
2. In Server address, enter the FQDN address of the FortiAuthenticator.
3. Enable Use default realm when user-provided realm is different from all configured realms.
4. In Realms, add realms.
5. In Default IdP certificate dropdown, select the same certificate as in step 5-d of Configuring SAML SP on FortiGate
on page 82.
6. Click Save.
1. Go to Authentication> SAML IdP > Service Providers, and select Create New.
The Create New SAML Service Provider window opens.
2. In SP name, enter the name of the SP.
3. In Create an identifier for this IdP, select +, in the Create an Alternate indentifier window, enter the same identifier
used as the prefix in IdP settings in Configuring SAML SP on FortiGate on page 82, and click OK.
4. In Authentication method, select FIDO.
Ensure that FIDO-only is selected and Allow two-factor authentication (password and OTP) if no FIDO keys are
available for the user account is enabled.
5. In Assertion Attribute Configuration, keep the default settings.
6. In Assertion Attributes, select Add Assertion Attribute:
a. In SAML attribute, enter username.
b. In the User attribute dropdown, select Email.
7. In Assertion Attributes, select Add Assertion Attribute:
a. In SAML attribute, enter groups
b. In the User attribute dropdown, select Group.
8. Click Save.
The Edit SAML Service Provider window opens.
9. From the text file that you saved in step 9 in Configuring SAML SP on FortiGate on page 82, in the SP Metadata
pane on FortiAuthenticator:
a. In SP entity ID, paste the Entity ID from FortiGate.
b. In SP ACS (login) URL, paste Assertion consumer service URL from FortiGate.
c. In SP SLS (logout) URL, paste Single logout service URL from FortiGate.
8. Click Save.
1. Go to User & Authentication > User Groups, and select Create New.
The New User Group window opens.
2. In Name, enter a name for the user group.
3. In Type, select Firewall.
4. In the Remote Groups pane, select Add:
The Add Group Match window opens.
a. In Remote Server, select the SSO server created in Configuring SAML SP on FortiGate on page 82.
b. Click OK.
5. Click OK.
3. Click Apply.
New Agentless VPN related tabs are now ready to be configured in VPN.
4. Go to VPN > Agentless VPN Settings.
5. In Listen on Port, enter 14003.
This is the same port appended to the WAN accessible FQDN for the SP (FortiGate).
See Configuring SAML SP on FortiGate on page 82.
This port number will be used when configuring FortiClient.
See Configuring Agentless VPN on FortiClient on page 88.
6. In the Server Certificate dropdown, select a server certificate.
7. Enable Redirect HTTP to Agentless VPN.
8. In Restrict Access, select Allow access from any host.
9. In Address Range, select Specify custom IP ranges.
10. In IP Ranges, add IP address ranges.
11. In DNS Server, select Specify.
12. Enter IP addresses for DNS servers in DNS Server #1 and DNS Server #2.
13. In the Authentication/Portal Mapping pane, select Create New:
The New Authentication/Portal Mapping window opens.
a. In Users/Groups, select +, from the Select Entries list, select the user group created in Creating a user group
with the SAML SSO server on page 86, and click Close.
b. In the Portal dropdown, select full-access.
c. Click OK.
14. Click Apply.
1. Go to Policy & Objects > Firewall Policy, and select Create new.
The Create New Policy window opens.
2. In the Settings tab:
a. In Name, enter a name for the firewall policy.
b. In Type, select Standard.
c. In Incoming interface, select +, from the Select Entries list, select an incoming interface, and click Close.
d. In the Outgoing interface, select +, from the Select Entries list, select outgoing interfaces, and click Close.
e. In Source:
i. Select +, from the Select Entries list, select all.
ii. From the dropdown, select User, select the user group created in Creating a user group with the SAML
SSO server on page 86, and click Close.
f. In Destination, select destinations.
g. In Service, select +, from the Select Entries list, select ALL, and click Close.
h. In Inspection mode, select Proxy-based.
i. Disable NAT.
3. Click OK.
Results
1. On the FortiClient console, go to REMOTE ACCESS.
2. From the dropdown, select the VPN connection created in Configuring Agentless VPN on FortiClient on page 88.
3. Select Connect.
The default web browser is automatically launched by FortiClient.
4. On the FortiAuthenticator login page that open, enter the user name, and click Next.
5. In the Verify your identity dialog that appears, select USB security key, push the button on the FortiToken 410
physical device.
The web browser completes the authentication and responds to FortiClient.
LDAP.
l Have the appropriate Fortinet infrastructure in place, for example, Fortigate running FOS 6.2.4GA+, FortiSwitch
running 6.2.4GA+, FortiAP/FortiAP-U running latest GA and FortiAuthenticator 6.1.1 and above.
Install certificates
2. In Certificate Management > End Entities > Local Services, click Import, select Certificate and Private Key, and
import your domain wildcard certificate as *domainname. For example, *[Link].
The following steps are optional and can be done if the server certificate matching the FortiAuthenticator FQDN is not yet
available.
1. In Certificate Management > End Entities > Local Services, select the Create New button.
Configure the following settings:
a. Under Create New Server Certificate, set the Certificate ID to your certificate name, for example,
[Link].
b. Under Subject Information, configure the Name, Department, Company, City, State/Province, Country and
Email Address for your certificate.
c. (Optional) If you are using a self-signed certificate on FortiAuthenticator, add a Subject Alternative Name
(SAN) matching the FQDN under Subject Alternative Name.
d. (Optional) Under Advanced Options: Key Usages, choose all Key Usages and Extended Key Usages.
e. All other fields can be left in their default state. Click OK to save your changes.
2. Export the pending CSR by selecting the pending entry and then clicking Export Certificate. Use the downloaded
[Link] file to obtain a certificate from a public CA.
3. Import the signed certificate file from the public CA by selecting Import and uploading the [Link]
file.
1. In Certificate Management > Certificate Authorities > Local CAs, select Create New.
2. Configure the following settings:
a. Set the Certificate ID to the Local_Root_CA_Name.
b. In Certificate Authority Type, set the Certificate Type to Root CA.
c. In Subject Information, configure the Name, Department, Company, City, State/Province, Country, and Email
address for your certificate.
d. In Advanced Options > Key Usages, choose all Key Usages and Extended Key Usages.
4. Click OK.
Configure FortiAuthenticator to communicate with Google Workspace via Secure Lightweight Directory Access Protocol
(LDAPS).
1. Login to the Google Workspace admin console using a Google Workspace admin account.
2. Click the Apps icon, then select LDAP and Add Client.
You will now be prompted to connect your client to the LDAP service.
Unzip the certificate file to a local folder. Contained within will be a public certificate along with a private key.
7. Select Continue to Client Details. Select Service status and change the status to On.
8. Click Save.
1. In FortiAuthenticator, go to Certificate Management > Certificate Authorities > Trusted CAs, and click Import.
2. Enter a Certificate ID and then upload the Google Root CA certificate previously downloaded.
3. Go to Certificate Management > End Entities > Local Services, and click Import.
4. Under Import Certificate , select Certificate and Private Key as the Type.
Enter a Certificate ID, and select the Certificate file and Private key file from the file you unzipped previously. A
Passphrase is not required. Click OK.
1. In FortiAuthenticator, go to Authentication > Remote Auth. Servers > LDAP, and click Create New.
2. Under Create New LDAP Server, set the following:
a. Name: Enter a name for the remote LDAP server, for example [Link].
b. Primary server name/IP: [Link].
c. Base distinguished name: Enter the base LDAP search directory, for example the Google Workspace
domain: dc=fortixpert,dc=com.
d. Bind type: Simple.
3. Under Query Elements, set the following:
a. Pre-defined templates: Select OpenLDAP/G Suite from the dropdown box, and click Apply.
4. Under Secure Connection, enable the secure connection function, and set the following:
a. Protocol: LDAPS.
b. CA Certificate: Select the Google_RootCA_GSR2 certificate from the dropdown box.
c. Use Client Certificate for TLS Authentication: Enabled.
d. Client certificate: Select the G Suite_LDAP client certificate from the dropdown box.
5. At the top of the page under Base distinguished name, select the directory lookup icon.
Once the LDAPS connection is established you'll see the Directory of Groups and Users within Google Workspace.
Select OK.
1. Go to Authentication > User Management > Remote Users, and confirm that LDAP is selected at the top right of the
page.
2. Click Import.
3. Under Import Remote LDAP Users, set the following:
a. Remote LDAP server: Select your connector bound to [Link] from the dropdown box.
b. Action: Import Users.
4. Click Go. A list of all the users within your Google Workspace directory will be displayed.
5. Select the users you want to be able to connect to the wireless network using their Google Workspace account, and
select OK to import the relevant user accounts.
6. Under Synchronization Attributes, set the following:
a. Token-based authentication sync priorities: None.
b. Sync every: Select the sync frequency. In production environments, this should be set to 30 minutes or more
depending on the number of users being synchronized.
c. Sync as: Remote LDAP User.
d. User role for new user imports: User.
7. Leave all other settings in their default state, and click OK.
1. Go to Authentication > User Management > Realms, and click Create New.
2. Configure the following settings:
a. Name: Enter a name for your realm, for example [Link].
b. User source: Select the remote LDAP service from the dropdown box.
3. Click OK.
1. Go to Authentication > Portals > Smart Connect Profiles, and click Create New.
2. Under General Information, enter a name for the profile, and click Next.
3. Under Wireless Connection Settings, set the following and then click Next.
a. SSID: Enter your SSID name, for example Secure Wi-Fi.
b. Auth method: WPA2 Enterprise.
c. Hidden SSID: Disabled.
4. Under EAP General Settings, set the following and then click Next.
a. EAP Type: TLS.
b. Signing CA: Select the local Root CA configured earlier.
5. Under Certificate Installation Settings, set the following and then click OK.
a. Install local CA certificates: Choose to install the local Root_CA certificate.
b. Install trusted CA certificates: Choose to install any certificate that is required for all relevant certificate
chains to be fully trusted.
4. Select OK.
1. Go to Authentication > Portals > Policies. Select the Self-Service Portal option, and click Create New.
2. Under Policy Type, set the following and then click Next.
a. Name: Enter a policy name, for example SmartConnect.
b. Description: Enter an optional description for the policy.
c. URL: Note this URL. This is the external captive portal redirection URL which must be added to the Onboarding
SSID configured on the FortiGate/WLC later.
d. Portal: Select the previously configured Smart Connect portal.
3. Under Identity sources, set the following and then click Next:
a. Username format: username@realm.
b. Realms: In the dropdown box, select the LDAP realm associated with [Link], for example
[Link].
4. Under Authentication factors, leave the default options in place, and click Save and exit.
1. Go to Authentication > RADIUS Service > Policies, and click Create New.
2. Under RADIUS clients, set the following and then click Next:
a. Policy Name: Enter a name for the policy, for example EAP-TLS Policy Google Workspace.
b. Description: Enter an optional description, for example EAP-TLS Policy for User Authentication.
c. RADIUS Clients: Add the FortiGate to the Chosen RADIUS Clients section.
5. Under Identity source, set the following and then click Next:
a. Username format: Select your preferred format, for example username@realm.
b. Realms: Select the realm that you set up to communicate with [Link], for example [Link].
1. Configure Microsoft Entra ID (formerly Microsoft Azure AD) DS LDAPS integration on page 104
2. Configure Smart Connect and the captive portal on page 108
3. Configure RADIUS settings on FortiAuthenticator on page 112
c. Upload your domain wildcard certificate, for example *.[Link], in .PFX format.
d. Enter the password to decrypt the PFX file.
7. Select the Save button at the top of the page, and wait for Azure to configure Secure LDAP.
This process takes approximately five minutes.
8. Once provisioning is complete, you must now allow inbound access for the secure LDAP protocol (port 636 to your
AD DS instance.
9. Browse to the network security group linked in your Secure LDAP connector.
10. Select the network secure group link to access the network security group settings.
You can follow the steps found on Microsoft's support website to enable user accounts for Azure AD DS. This is
required for users to authenticate through Secure LDAP.
1. Within the network security group, go to Settings > Inbound Security Rules, and click Add.
2. In Add inbound security rule, set the following:
a. Source: IP Address.
b. Source IP address/CIDR ranges: Set as the IP address/range that the inbound request will be originating
from.
1. In FortiAuthenticator, go to Authentication > Remote Auth. Servers > LDAP, and click Create New.
2. In the Create New LDAP Server window, set the following:
a. Name: Enter a name, for example [Link].
b. Primary server name/IP: Enter the Secure LDAP IP.
c. Bind type: Regular.
d. Username/Password: Enter a username and password that can access MS Azure DS to perform directory
lookups.
e. Base distinguished name: Leave blank.
3. In the Query Elements section, set the following:
a. Pre-defined templates: Select Microsoft Active Directory and click Apply.
b. Force use of administrator account for group membership lookups: Enabled.
4. In the Secure Connection section, set the following
a. Secure Connection: Enabled.
b. Protocol: LDAPS.
c. CA Certificate: Select the Root CA certificate for the wildcard certificate that was uploaded to MS Azure to use
with the Secure LDAP connector.
5. Select the lookup icon next to Base distinguished name. Choose the base DN for your user accounts, for example
DC=fortixpert,DC=com. Click OK.
1. Go to Authentication > User Management > Remote Users. Confirm LDAP is selected at the top of the page, and
click Import.
2. Under Import Remote LDAP User, complete the following:
a. Remote LDAP Server: Select the Azure remote LDAP server.
b. Action: Select Import users, and click Go to view a list of users within your Azure directory.
c. Select the users you wish to be able to connect to the wireless network using their Azure based account.
3. Click OK.
1. Go to Authentication > User Management > Remote User Sync Rule, and click Create New.
2. Under Create New Remote LDAP User Synchronization Rule, set the following:
a. Name: Enter a name, for example Azure_Remote_Sync.
b. Remote LDAP: Select your Azure remote LDAP server.
c. Base distinguished name: This setting can be left as the default, for example DC=fortixpert,DC=com.
3. Under Synchronization Attributes, set the following:
a. Token-based authentication sync priorities: Enable None.
b. Sync every: Select the sync frequency. In production environments, this should be set to 30 minutes or more
depending on the number of users being synchronized.
c. Sync as: Remote LDAP User.
d. User role for new user imports: User.
4. Leave all other settings in their default states, and click OK.
1. Go to Authentication > User Management > Realms, and click Create New.
2. Under Create New Realm, set the following:
a. Name: Enter the realm name, for example [Link].
b. User source: Select the remote LDAP service from the dropdown box.
3. Click OK.
1. Go to Authentication > Portals > Smart Connect Profiles, and click Create New.
2. Under General Information, enter a name for the profile, and click Next.
3. Under Wireless Connection Settings, set the following and then click Next.
a. SSID: Enter your SSID name, for example Secure Wi-Fi.
b. Auth method: WPA2 Enterprise.
c. Hidden SSID: Disabled.
4. Under EAP General Settings, set the following and then click Next.
a. EAP Type: TLS.
b. Signing CA: Select the local Root CA configured earlier.
c. Username Format: Select your preference, for example username@realm.
5. Under Certificate Installation Settings, set the following and then click OK.
a. Install local CA certificates: Choose to install the local Root_CA certificate.
b. Install trusted CA certificates: Choose to install any certificate that is required for all relevant certificate
1. Go to Authentication > Portals > Policies. Select the Self-Service Portal option, and click Create New.
2. Under Policy Type, set the following and then click Next.
a. Name: Enter a policy name, for example SmartConnect.
b. Description: Enter an optional description for the policy.
c. URL: Note this URL. This is the external captive portal redirection URL which must be added to the Onboarding
SSID configured on the FortiGate/WLC later.
d. Portal: Select the previously configured Smart Connect portal.
3. Under Identity sources, set the following and then click Next:
a. Username format: username@realm.
b. Realms: In the dropdown box, select the LDAP realm associated with Azure, for example [Link].
4. Under Authentication factors, leave the default options in place, and click Save and exit.
1. Go to Authentication > RADIUS Service > Policies, and click Create New.
2. Under RADIUS clients, set the following and then click Next:
a. Policy Name: Enter a name for the policy, for example EAP-TLS Policy Azure.
b. Description: Enter an optional description, for example EAP-TLS Policy for User Authentication.
c. RADIUS Clients: Add the FortiGate to the Chosen RADIUS Clients section.
5. Under Identity source, set the following and then click Next:
a. Username format: Select your preferred format, for example username@realm.
b. Realms: Select the realm that you set up to communicate with Azure, for example [Link].
FortiGate configuration
This section outlines the configuration required on FortiGate WLAC to provision an onboarding (Smart Connect enabled)
WiFi network and a secure (WPA2 + EAP-TLS enabled) Wi-Fi network.
1. In FortiGate, go to User & Authentication > RADIUS Servers, and click Create New.
2. Under New RADIUS Server, set the following:
a. Name: Enter a name for the RADIUS server, for example FAC.
b. NAS IP: Enter the Network Access Server (NAS) IP. This should ideally be the IP from the
interface/VLAN FortiAuthenticator is on.
3. Under Primary Server, set the following:
a. IP/Name: Enter the FortiAuthenticator IP address.
b. Secret: Enter the secret matching the one configured on FortiAuthenticator.
4. Click Test Connectivity to test if the connection is correctly configured, and click OK.
1. Go to User & Authentication > User Groups, and click Create New.
2. Configure the following settings:
a. Name: Configure a name, for example Onboarding.
b. Type: Firewall.
c. Remote Groups: Select Add. Within the Add Group Match window, select FortiAuthenticator as the remote
server from the dropdown box.
d. Groups: Any.
3. Select OK on the Add Group Match window. The Onboarding group is now created.
1. Go to Wi-Fi & Switch Controller > SSID, and click Create New.
2. Under Create New SSID, set the following:
a. Profile name: Enter a name for the profile, for example Onboarding.
b. Traffic mode: Tunnel.
3. Under Address, set the following:
a. IP/Netmask: Enter the interface IP address for the Onboarding SSID.
4. Under DHCP Server, enable the DHCP Server setting and set the following:
a. Leave Address range, Netmask, Gateway, and Lease time in their default states.
b. DNS server: Select Same as Interface IP or specify a local DNS server that can resolve your FortiAuthenticator
FQDN. If you are using the DNS database on FortiGate, select Same as Interface IP.
7. Click OK.
1. Go to WiFi & Switch Controller > SSID, and click Create New.
2. Configure the following settings:
a. Profile name: Enter a profile name, for example Secure Wi-Fi.
b. Traffic mode: Bridge.
c. SSID: Enter the SSID name, for example Secure Wi-Fi.
d. Security mode: WPA2 Enterprise.
e. Authentication: Choose RADIUS Server, and select the FortiAuthenticator.
f. Optional VLAN ID: This setting is optional and can be configured if WiFi traffic needs to be tagged by the AP to
a VLAN configured on your local switch. Dynamic VLAN assignment is also supported.
3. Click OK.
AP radio interfaces.
3. Confirm the SSIDs are broadcasting and can be seen by WiFi enabled devices.
4. Click OK.
1. Go to Policy & Objects > Addresses, and click Create New > Address.
2. Configure the following settings:
a. Name: Enter a name, for example FAC.
b. Type: Subnet.
c. IP/Netmask: The FortiAuthenticator IP address.
d. Interface: any.
3. Click OK.
1. Go to Policy & Objects > Firewall Policy, and click Create New.
2. On the New Policy page, set the following:
a. Name: Enter a name, for example Onboarding Policy.
b. Incoming Interface: Select the Onboarding SSID.
c. Outgoing Interface: Select the Management VLAN.
d. Source: Select all or the Onboarding address subnet range.
e. Destination: Select FortiAuthenticator and the DNS server if you are using a third party DNS server.
f. Service: DNS, HTTP, and HTTPS.
g. Under Advanced, enable the Exempt from Captive Portal option.
When using a FortiOS version earlier than 6.4.1, you can enable this setting in the CLI with the command set
captive-portal-exempt enable.
3. Click OK.
Results
You can now connect your device to the Onboarding SSID and proceed with the Smart Connect onboarding process:
l Smart Connect Windows device onboarding process on page 137
l Smart Connect iOS device onboarding process on page 139
3. Enter a unique Device ID and choose your operating system from the Platform dropdown. Click OK.
Your device will now be provisioned with the wireless network information and certificates in order to connect to the
Secure Wi-Fi SSID.
6. Once provisioning is complete, click Connect. Your device will now connect to the Secure Wi-Fi network using
WPA2 and EAP-TLS.
You may wish to forget the Onboarding network to prevent your device from automatically connecting to it in the
future.
3. Enter a unique Device ID and choose your operating system from the Platform dropdown. Click OK.
7. On the warning screen, select Install to install any root certificates included within the profile. Once the installation is
finished, click Done.
8. In Settings, select the information icon next to the Onboarding WiFi network and select Forget this Network. Once
the network has been forgotten, the device will automatically connect to the Secure Wi-Fi network.
FortiGate configuration
This section outlines the configuration required on FortiGate WLAC to provision an onboarding (Smart Connect enabled)
WiFi network and a secure (WPA2 + EAP-TLS enabled) Wi-Fi network.
1. In FortiGate, go to User & Authentication > RADIUS Servers, and click Create New.
2. Under New RADIUS Server, set the following:
a. Name: Enter a name for the RADIUS server, for example FAC.
b. NAS IP: Enter the Network Access Server (NAS) IP. This should ideally be the IP from the
interface/VLAN FortiAuthenticator is on.
3. Under Primary Server, set the following:
a. IP/Name: Enter the FortiAuthenticator IP address.
b. Secret: Enter the secret matching the one configured on FortiAuthenticator.
4. Click Test Connectivity to test if the connection is correctly configured, and click OK.
1. Go to User & Authentication > User Groups, and click Create New.
2. Configure the following settings:
a. Name: Configure a name, for example Onboarding.
b. Type: Firewall.
c. Remote Groups: Select Add. Within the Add Group Match window, select FortiAuthenticator as the remote
server from the dropdown box.
d. Groups: Any.
3. Select OK on the Add Group Match window. The Onboarding group is now created.
1. Go to Wi-Fi & Switch Controller > SSID, and click Create New.
2. Under Create New SSID, set the following:
a. Profile name: Enter a name for the profile, for example Onboarding.
b. Traffic mode: Tunnel.
3. Under Address, set the following:
a. IP/Netmask: Enter the interface IP address for the Onboarding SSID.
4. Under DHCP Server, enable the DHCP Server setting and set the following:
a. Leave Address range, Netmask, Gateway, and Lease time in their default states.
b. DNS server: Select Same as Interface IP or specify a local DNS server that can resolve your FortiAuthenticator
FQDN. If you are using the DNS database on FortiGate, select Same as Interface IP.
7. Click OK.
1. Go to WiFi & Switch Controller > SSID, and click Create New.
2. Configure the following settings:
a. Profile name: Enter a profile name, for example Secure Wi-Fi.
b. Traffic mode: Bridge.
c. SSID: Enter the SSID name, for example Secure Wi-Fi.
d. Security mode: WPA2 Enterprise.
e. Authentication: Choose RADIUS Server, and select the FortiAuthenticator.
f. Optional VLAN ID: This setting is optional and can be configured if WiFi traffic needs to be tagged by the AP to
a VLAN configured on your local switch. Dynamic VLAN assignment is also supported.
3. Click OK.
AP radio interfaces.
3. Confirm the SSIDs are broadcasting and can be seen by WiFi enabled devices.
4. Click OK.
1. Go to Policy & Objects > Addresses, and click Create New > Address.
2. Configure the following settings:
a. Name: Enter a name, for example FAC.
b. Type: Subnet.
c. IP/Netmask: The FortiAuthenticator IP address.
d. Interface: any.
3. Click OK.
1. Go to Policy & Objects > Firewall Policy, and click Create New.
2. On the New Policy page, set the following:
a. Name: Enter a name, for example Onboarding Policy.
b. Incoming Interface: Select the Onboarding SSID.
c. Outgoing Interface: Select the Management VLAN.
d. Source: Select all or the Onboarding address subnet range.
e. Destination: Select FortiAuthenticator and the DNS server if you are using a third party DNS server.
f. Service: DNS, HTTP, and HTTPS.
g. Under Advanced, enable the Exempt from Captive Portal option.
When using a FortiOS version earlier than 6.4.1, you can enable this setting in the CLI with the command set
captive-portal-exempt enable.
3. Click OK.
Results
You can now connect your device to the Onboarding SSID and proceed with the Smart Connect onboarding process:
l Smart Connect Windows device onboarding process on page 137
l Smart Connect iOS device onboarding process on page 139
3. Enter a unique Device ID and choose your operating system from the Platform dropdown. Click OK.
Your device will now be provisioned with the wireless network information and certificates in order to connect to the
Secure Wi-Fi SSID.
6. Once provisioning is complete, click Connect. Your device will now connect to the Secure Wi-Fi network using
WPA2 and EAP-TLS.
You may wish to forget the Onboarding network to prevent your device from automatically connecting to it in the
future.
3. Enter a unique Device ID and choose your operating system from the Platform dropdown. Click OK.
7. On the warning screen, select Install to install any root certificates included within the profile. Once the installation is
finished, click Done.
8. In Settings, select the information icon next to the Onboarding WiFi network and select Forget this Network. Once
the network has been forgotten, the device will automatically connect to the Secure Wi-Fi network.
Requirements:
In this example:
1. FortiAuthenticator operates as a local certificate authority (CA).
2. FortiAuthenticator generates a client certificate for the connection between FortiAuthenticator and the AD server.
3. The local root CA certificate is exported and installed on the FortiGate in order to authenticate and trust the client
connection.
4. FortiGate acts as a ZTNA application gateway allowing FortiAuthenticator to access the AD server using TCP
forwarding access proxy.
1. Configure certificate authentication for FortiAuthenticator. See Configuring certificate authentication for
FortiAuthenticator on page 143.
2. Configure a zero trust tunnel on FortiAuthenticator. See Configuring a zero trust tunnel on FortiAuthenticator on
page 142.
3. Configure an LDAP server on FortiAuthenticator. See Configuring an LDAP server with zero trust tunnel enabled on
FortiAuthenticator on page 142.
4. Configure the FortiGate device as the ZTNA server. See Configuring a ZTNA server on page 145.
5. Configure a ZTNA rule on the ZTNA server. See Configuring a ZTNA rule on page 147.
6. For troubleshooting, see Debugging: Zero trust tunnel related issues on page 148.
1. Go to Authentication > Remote Auth. Servers > LDAP, and select Create New.
2. In Create New LDAP server:
a. In Name, enter a name.
b. Enable Use Zero Trust tunnel, and from the dropdown, select the zero trust tunnel configured in Configuring a
zero trust tunnel on FortiAuthenticator on page 142.
c. In Primary Server IP, enter the IP address/FQDN of the AD server.
d. In Port, enter the port number of the LDAP server.
e. In Base distinguished name, enter a base distinguished name.
f. In Bind Type, select Regular.
Enter the username and password for the LDAP server administrator account.
3. Click OK.
1. Go to Certificate Management > Certificate Authorities > Local CAs, and select Create New.
The Create New Local CA Certificate window opens.
2. In Certificate ID, enter a unique ID for the CA.
3. Ensure that the Certificate type is Root CA.
4. In Name(CN), enter the subject name, e.g., a domain name.
5. Click Save.
1. Go Certificate Management > End Entities > Local Services, and select Create New.
The Create New Server Certificate window opens.
2. In Certificate ID, enter a unique ID for the certificate.
3. In the Certificate Signing Options pane, ensure that the Issuer is Local CA and the Certificate authority is the local
CA created in Configuring a local root CA.
4. In the Subject Information pane, for Name(CN), enter the FQDN of the FortiAuthenticator.
The certificate is used when configuring the zero trust tunnel. See Configuring a zero trust tunnel on
FortiAuthenticator on page 142.
1. Go to System > Certificates, and from the Create/Import dropdown, select CA Certificate.
The Import CA Certificate window opens.
2. In Type, select File.
The imported root CA is available with the name CA_Cert_X where X denotes the number
of certificates imported.
The Issuer field for the imported root CA is the Name(CN) you gave it.
To create address objects on FortiGate for FortiAuthenticator and the LDAP server:
1. Go to Policy & Objects > Addresses, and select the Address tab.
2. In the Address tab, select Create new.
The New Address window opens.
3. In Name, enter a name for the address, e.g., FAC.
4. In IP/Netmask, enter the public IP address of the FortiAuthenticator with its subnet mask.
5. Click OK.
The address is used when Configuring an authentication rule.
6. Go to Policy & Objects > Addresses, select the Address tab.
7. In the Address tab, select Create new.
The New Address window opens.
8. In Name, enter a name for the address, e.g., lab-ad-address.
9. In IP/Netmask, enter the private IP address of the LDAP server with its subnet mask.
10. Click OK.
To configure authentication setting to use the CA that issued the client certificate as the user-cert-ca:
1. Go to Policy & Objects > ZTNA and select the ZTNA Servers tab.
2. Select Create new.
The New ZTNA Server window opens.
Once set up, Type cannot be changed when editing the ZTNA server.
All hosted servers must be the same address type. The address type cannot be
changed after the mapping is created.
The address and the port number must match the Primary Server IP and Port
when Configuring an LDAP server with zero trust tunnel enabled on
FortiAuthenticator on page 142.
1. Go to [Link]
2. From the tree menu, go to Others > GUIto see extended FortiAuthenticator debug logs.
You can change the Log level to increase or decrease the depth of details.
cert-status: failure
cert-status: success
3. In Select preferred setup, select Continue with setup by creating the account instance. Only one account instance
can be created per account for all regions.
4. Select Continue.
5. Optionally, select Add new tag to add tags to organize AWS resources in your IAM Identity Center instance.
6. Select Enable.
The IAM Identity Center Dashboard opens.
4. Click Next.
The Configure external identity provider page opens.
Keep the Configure external identity provider page open in a separate tab as you need it to perform steps 7, 8, and
9.
11. Review your settings in the Confirm change page and enter ACCEPT in the Confirm that you want to change your
identity source by entering ACCEPT in the field below field.
12. Select Change identity source.
A green banner at the top confirms that you have successfully changed the identity source from IAM Identity Center
to an external IdP, in this example, FortiAuthenticator.
1. In the Service Providers list, click the recently created SP to edit it.
2. In the Configure external identity provider page opened in a separate tab as described in step 4 in Changing the
identity source from IAM Identity Center to FortiAuthenticator on page 151, under the Service provider metadata
pane, select Download metadate file.
The SP metadata file is downloaded to your management computer.
3. On FortiAuthenticator, go to Authentication > SAML IdP > Service Providers and select the SP entry created in step
6 in Changing the identity source from IAM Identity Center to FortiAuthenticator on page 151.
4. In the SP Metadata pane, select Import SP metadata.
5. In the Import Service Provider Metadata pane, select Upload a file, locate the SP metadata file on your
management computer, click Open.
1. In the Service Providers list, click the recently created SP to edit it.
2. In IdP Metadata, select an identifier from the dropdown.
3. Select IdP metadata to download the IdP metadata to your local computer.
4. In the Configure external identity provider page opened in a separate tab as described in step 4 in Changing the
identity source from IAM Identity Center to FortiAuthenticator on page 151, under the Identity provider metadata
pane, select Choose file in IdP SAML metadata, locate the IdP metadata file on your local computer, and click
Open.
1. In the Identity provider metadata pane, we will be importing the IdP certificate.
2. In FortiAuthenticator, for this example, we are using the Default-Server-Certificate.
You can verify the default IdP certificate being used by going to Authentication > SAML IdP > General.
3. Go to Certificate Management > End Entities > Local Services.
4. Select Default-Server-Certificate from the server certificate list, then select Export Certificate from the top.
The IdP certificate is downloaded to your management computer.
5. In the Configure external identity provider page opened in a separate tab as described in step 4 in Changing the
identity source from IAM Identity Center to FortiAuthenticator on page 151, under the Identity provider metadata
pane, select Choose file in IdP certificate.
6. Locate the IdP certificate on your management computer, and click Open.
7. Continue from step 10 in Changing the identity source from IAM Identity Center to FortiAuthenticator on page 151.
1. Ensure that the automatic provisioning is enabled for your identity center directory.
Copy and save the access token on your management computer as it is required on the
FortiAuthenticator side.
The access token is only displayed once. If you do not save it, you must generate a new
access token.
Copy and save the SCIM endpoint and the Access token on your management computer.
SCIM endpoint and Access token are needed on the FortiAuthenticator side.
l Display name
l First name
l Last name
If any of the above user related fields are missing, AWS rejects the sync.
9. Click Save.
The fields in User Attributes Mapping are the variables for the JSON schema being
imported to AWS, e.g., the FortiAuthenticator user name will map to the user name of the
JSON schema.
6. Click Sync.
1. Go to Authentication > Remote Auth. Servers > LDAP, and select Create New.
The Create New LDAP Server window opens.
2. In Name, enter a name.
3. In Primary server name/IP, enter the AD server IP address.
4. In Base distinguished name, enter DC=iamexperts,DC=lab.
5. In Bind type, select Regular.
6. In Username, enter the user name.
7. In Password, enter a password.
8. Ensure that the Server type is Microsoft Active Directory.
9. Leave the settings in the Query Elements pane as default.
10. Click Save.
Go to Monitor > SSO > Domains to see all the configured DC/LDAP servers as well as the
known domains that have been provisioned.
1. Go to System > Network > Interfaces, and double-click port1 to edit it.
2. In Access Rights, in Services, enable FortiGate FSSO (TCP/8000) and FortiClient FSSO (TCP/8001).
3. Click Save.
FortiAuthenticator restarts.
The Secret key must match the value entered in the FSSO connector on FortiGate.
d. Click Save.
Installing SSOMA
We install SSOMA on a Windows host.
To install SSOMA:
SSOPORT is the FortiClient listening port in Fortinet SSO > Settings > Methods when
FortiClient SSO Mobility Agent Service is enabled.
See Configuring SSO settings on page 161.
SSOPSK is the Secret key set up in Fortinet SSO > Settings > Methods when FortiClient
SSO Mobility Agent Service and Enable authentication are selected.
See Configuring SSO settings on page 161.
Result
1. Log in to the Windows host.
2. Go to Monitor > SSO > SSO Sessions to see information about the recent SSO session.
Prerequisites:
Authentication flow:
1. In EMS, edit the desired endpoint profile's XML configuration to match the IP address, port, and PSK configured on
the FortiAuthenticator, and to have FortiClient detect Azure user information and send it to FortiAuthenticator.
<fssoma>
<enabled>1</enabled>
<serveraddress>[Link]</serveraddress>
<presharedkey>Fortinet123!</presharedkey>
<prefer_azure>1<prefer_azure>
<fssoma>
To install the standalone Windows FSSO Mobility Agent, see Technical Tip: How to install a
standalone Windows FSSO Mobility Agent.
To create a tenant:
5. In Configuration, enter the Organization name, Initial domain name, and Country/Region.
6. Select Next: Review + create to review the entries, and select Create to create the tenant.
5. Sign in with the Microsoft Entra ID user, e.g., john@[Link], and click Next.
7. Note that the domain is the Microsoft Entra ID primary domain and select Join.
3. On the Azure portal, in All devices, you can see that the endpoint is Microsoft Entra ID joined.
5. In the newly created enterprise application, select Assign users and groups.
6. Select Add user/group.
7. In the Add Assignment page, select None Selected.
8. From Users and groups, select to add the user created in Creating a user and associating with groups on page 167.
9. Select Assign to assign the user to the application.
1. In the Microsoft Entra ID tenant created in Creating a Microsoft Entra ID tenant on page 166, go to Manage > App
registrations.
2. In the All applications tab, select the application created in Creating FortiAuthenticator enterprise application on
page 171.
3. Go to Manage > Certificates & secrets.
4. Select New client secret.
5. In Add a client secret:
a. Enter a description.
b. Click Add.
The key is displayed.
c. Copy and save the key value on your management computer. You cannot retrieve the key later.
2. Log in as john@[Link].
1. On FortiAuthenticator, go to Remote Auth. Servers > OAUTH, and click Create New.
2. Provide a name for the server and select Azure Directory as the OAuth source.
3. Enter the client ID and client key from the SAML application on your Azure account.
4. Click Save.
Results
To test Azure login through the SP:
1. Enter in the portal login URL from the service provider in a new browser.
You are redirect you to the FAC's IdP-server and proxy page.
2. Click on the link below the login options to be redirected to Microsoft's login page.
1. Go to Authentication > SAML IdP > Service Providers and create a new reference for the service provider that you
will be using as your SAML client.
1. On FortiAuthenticator, go to Remote Auth. Servers > OAUTH, and click Create New.
2. Provide a name for the server and select Google Workspace Directory as the OAuth source.
3. Enter the Google workspace admin, and upload the Service account key file from the SAML application on your
Google Workspace account.
4. Click OK to save your changes.
1. Go to Authentication > SAML IdP > Service Providers and create a new reference for the service provider that you
will be using as your SAML client.
2. Enter the following information:
a. SP name: Enter a name for the SP device.
b. IdP prefix: Select +, enter an IdP prefix in the Create Alternate IdP Prefix dialog or select Generate prefix, and
click OK.
c. Server certificate: Select the same certificate as the default IdP certificate used in Authentication > SAML IdP
> General. See Configuring IdP settings on page 185.
3. Click Save.
4. In the SP Metadata pane, enter the SP information from the client you will be using as the SAML service provider.
5. Download the IdP metadata.
This can be used to set up the SAML IdP configuration in your SAML SP client (if allowed by your client).
6. Click OK.
7. Select and click Edit to edit the recently created SP.
8. In Assertion Attribute Configuration:
a. Select Username from the Subject NameID dropdown.
b. Select urn:oasis:names:tc:SAML:2.0:nameid-format:unspecified in Format.
9. In Assertion Attributes, select Add Assertion Attribute:
a. Enter a SAML Attribute name that your SAML SP is expecting to identify the user.
b. Select a User Attribute for this selection. If you are unsure of which attribute to pick, select SAML username.
4. Click Save.
Results
To test Google Workspace login through the SP:
1. Enter in the portal login URL from the service provider in a new browser.
You are redirect you to the FAC's IdP-server and proxy page.
2. Click on the link below the login options to be redirected to Google's login page.
Okta is a secure authentication and identity-access management service that offer secure SSO solutions. Okta can be
implemented with a variety of technologies and services including Office 365, Google Workspace, Dropbox, AWS, and
more.
A user will start by attempting to make an unauthenticated web request. The FortiGate’s captive portal will offload the
authentication request to the FortiAuthenticator’s SAML SP portal, which in turn redirects that client/browser to the
SAML IdP login page. Assuming the user successfully logs into the portal, a positive SAML assertion will be sent back to
the FortiAuthenticator, converting the user’s credentials into those of an FSSO user.
In this example configuration, the FortiGate has a DMZ IP address of [Link], and the FortiAuthenticator has
the Port1 IP address of [Link]. Note that, for testing purposes, the FortiAuthenticator’s IP and FQDN have
been added to the host’s file of trusted host names; this is not necessary for a typical network.
This configuration assumes that you have already created an Okta developer account.
2. Enter the same name for the Host Name. This is so you can add the unit to the FortiGate's DNS list so that the local
DNS lookup of this FQDN can be resolved.
3. On FortiGate, open the CLI Console and enter the following command using the FortiAuthenticator host name and
internet-facing IP address.
config system dns-database
edit [Link]
config dns-entry
edit 1
set hostname [Link]
set ip [Link]
next
end
set domain [Link]
next
2. Go to Fortinet SSO Methods > SSO > Portal Services and select Enable SAML portal.
3. Next, go to Authentication > Remote Auth. Servers > SAML, and click Create New. Enter Okta as the name.
You will not yet be able to save these settings, as the IdP information - IdP entity ID, IdP
single sign-on URL, and IdP certificate fingerprint - must be entered. These fields will be
filled out later once the IdP application configuration is complete Okta.
2. Select Create New App and create a new application using the SAML 2.0 sign on method.
3. Enter a custom app name, and select Next. You may upload an app logo if you wish.
The name entered here is the name of the portal that users will log into.
4. Under A - SAML Settings, set Single sign on URL and Audience URL (SP Entity ID) to the ACS and Entity URLs
(respectively) from FortiAuthenticator.
Users will be required to provide their email address as their username, and their first and last names (as seen in the
example).
Before continuing, select Download Okta Certificate. This will be imported to the FortiAuthenticator later.
In the section below, configure a Group attribute to match on FortiAuthenticator. The word Group (case-sensitive)
must be entered in Text-based list under Obtain Group Membership from: SAML assertions inside the remote
SAML setup configuration on FortiAuthenticator. Regex matching is the most flexible option for group matching. The
below example matches all groups of a single user.
5. In the last step, confirm that you are an Okta customer, and set the App type to an internal app. Select Finish.
6. Once created, open the Sign On tab and download the Identity Provider metadata.
7. Finally, open the Assignments tab and select Assign > Assign to people.
Assign the users you wish to add to the application. This will permit the user to log in to the application's portal. Save
your changes, and select Done.
2. Enable SAML single logout and add the IdP single logout URL under the Single Logout section of the Okta Remote
SAML Server.
For example, if your Okta organization is "facschool" then the IdP single logout URL: entry would be
[Link]
3. Go to Fortinet SSO Methods > SSO > FortiGate Filtering, and create a new FortiGate filter.
Enter a name and the FortiGate's DMZ-interface IP address, and click OK.
Once created, enable Forward FSSO information for users from the following subset of users/groups/containers
only. Select Create New to create SSO group filtering objects that match each group inside Okta, and select OK to
apply all changes.
The names entered for the filter must be the same as the group names created in Okta.
Failing to enter the exact same names will result in the SSO information not being pushed
to FortiGate.
Select View and make sure that the FSSO group has been pushed to FortiGate.
3. Go to User & Device > User Groups and create a new user group.
Enter a name, set Type to Fortinet Single Sign-On (FSSO), and add the FSSO group as a Member.
In order to automatically redirect the user to the initial website after authentication, erase the existing HTML code and
replace it with the following HTML code on the FortiGate in System > Replacement Messages > Authentication > Login
Page.
Replace <FortiAuthenticator-FQDN> with the DNS name of the FortiAuthenticator.
<html>
<head>
<meta charset="UTF-8"/>
<script type="text/javascript">
[Link]="[Link]
continue_url=%%PROTURI%%&userip=%%USER_IP%%"
</script>
<title>
Page Redirection
</title>
</head>
<body>
If you are not redirected automatically,
<a href="[Link]
url=%%PROTURI%%&userip=%%USER_IP%%">
login
</a>
</body>
</html>
1. Go to Policy & Objects > Addresses and add the FortiAuthenticator as an address object.
In the SSO_Internet_Access policy, add the Firewall Guest-group and the Okta FSSO group that is received from
FortiAuthenticator. The Guest-group redirects the initial Internet access request from the browser to Okta. Once the
user is authenticated the browser will automatically redirect to the website from the initial HTTP/HTTPS request
matching the Okta SSO group.
Results
To test the connection, open a new browser window and attempt to browse to the Internet. The browser will redirect to
the FortiAuthenticator SAML portal, which pushes the browser to the SAML IdP.
Alternatively, you can directly navigate to the portal URL.
To configure Office 365 SAML authentication using FortiAuthenticator with two-factor authentication:
1. Go to Authentication > Remote Auth. Servers > LDAP and click Create New.
2. Configure the following settings:
a. Name: Provide a name for the remote LDAP server.
b. Primary server name/IP: Enter the IP address for the AD (Active Directory) source.
c. Base distinguished name: Configure the based distinguished name for your AD source.
d. Bind type: Select Regular.
e. Username/Password: Enter the username and password for your AD source.
The remaining settings can be left in their default state.
3. Click OK to save your changes.
1. Go to Authentication > User Management > Realms and click Create New.
2. Configure a name for the realm and select your LDAP server as the User source.
3. Click OK to save your changes.
1. Go to Authentication > SAML IdP > General and click Enable SAML Identity Provider portal.
2. Configure the following settings:
a. Server address: The IP address or FQDN of the FortiAuthenticator.
b. Realms: Select the previously created LDAP realm.
c. Default IdP certificate: Choose a certificate. The default can be used if desired.
The remaining settings can be left in their default state.
1. Go to Authentication > SAML IdP > Service Providers and click Create New.
2. Configure the following settings:
a. SP Name: enter a name for your service provider.
b. IdP Prefix: Click Generate prefix to create a new IdP prefix.
c. Server certificate: Select the certificate to be used in your configuration or choose Use default setting in
SAML IdP General page.
d. SP entity ID: Enter urn:federation:MicrosoftOnline.
e. SP ACS (login) URL: Enter [Link]
f. SP SLS (logout) URL: Enter [Link]
g. Participate in single logout: Can be enabled if you wish this SP to participate in SAML single logout.
3. In the Assertion Attributes section, configure the following settings:
a. Subject NameID: Select user mS-DS-Consistency Guid.
b. Format: Select urn:oasis:names:tc:SAML:2.0:nameid-format:persistent.
Press Enter and then SAML attributes can be created.
4. In the Debugging Options section click Create New to create a SAML attribute with the following settings:
a. SAML attribute: Enter IDPEmail.
b. User attribute: In the dropdown, select userPrincipalName under Remote LDAP server.
1. Go to Authentication > User Management > Remote User Sync Rules, and click Create New.
2. Configure the following settings:
a. Name: Enter a name for the sync rule (e.g. AD).
b. Remote LDAP: Select your remote LDAP server.
3. Configure the token-based sync priority settings under Synchronization Attributes by enabling and ordering the
authentication sync priorities.
This example scenario uses FortiToken Cloud for two-factor authentication, so the priority is FortiToken Cloud
followed by None (users are synced explicitly with no token-based authentication).
4. Select or create a user group to associate users with from the dropdown menu.
5. The remaining settings can be configured to your preference or left in their default state.
6. Click OK to save your changes when completed.
1. Go to Authentication > User Management > Remote Users and Import users from your Active Directory account.
2. Edit a user and enable Token-based authentication, and select FortiToken > Cloud as the delivery method.
3. Click OK to save your changes.
$domain = "[Link]"
$PassiveLogOnUri= "[Link]
idp/h9p8jetp8eez364e/login/"
$LogOffUri= "[Link]
$IssuerUri= "[Link]
$MetadataExchangeUri = "[Link]
idp/h9p8jetp8eez364e/metadata/"
$ActiveSignInUri= "[Link]
idp/h9p8jetp8eez364e/login/"
$SigningCert= Get-Content "C:\path\[Link]" -Raw
$DisplayName = "[Link]"
$FederatedIdpMfaBehavior = "acceptIfMfaDoneByFederatedIdp"
1. Launch Microsoft Entra ID Connect to create a synchronization service to sync attributes from Active Directory to
Office365.
3. On the User sign-in page, select Do not configure, and click Next.
4. On the Connect to Azure AD page, enter your Microsoft Entra ID global administrator credentials, and click Next.
5. Select your Active Directory Forest, and click Add Directory. Create your on-premise AD admin user account.
When finished, click Next. If completed successfully, you will see your domain has been verified.
Click Next again.
6. Click Next on the remaining pages in the configuration wizard, and click Install on the Ready to configure page.
7. Once the installation is complete, you are presented with the Configuration complete page which provides a
summary of the configuration changes.
Results
Once configured, Active Directory synchronized users can sign in to Office 365 using two-factor authentication from
FortiAuthenticator.
3. Authentication is redirected to FortiAuthenticator. Enter your user credentials, and click Login.
Enter your 2FA token or approve the access request from your FortiToken push request.
1. The client connects to FortiGate, which redirects the user to the FortiAuthenticator captive portal.
2. The client connects to FortiAuthenticator (SAML SP), which redirects the user to Microsoft Entra ID (SAML IdP).
3. The client connects to the Microsoft Entra ID to perform authentication. It receives SAML token on successful
authentication.
4. The client updates the SP with its SAML token.
5. The authenticated user is synced with the FortiGate device.
6. The user can now pass from LAN to WAN.
5. In Configuration, enter the Organization name, Initial domain name, and Country/Region.
6. Select Next: Review + create to review the entries, and select Create to create the tenant.
5. In the SAML-based Sign-on window, select Edit in the Basic SAML Configuration pane.
6. In the Basic SAML Configuration window, enter the following information from the FortiAuthenticator SP:
a. In Identifier (Entity ID), enter the SP entity ID.
b. In Reply URL (Assertion Consumer Service URL), enter the URL where the application receives the
authentication token.
c. In Sign on URL, enter the URL for the sign-in page for the application.
d. In Relay State, enter the URL to which the user is redirected to by the SP after a successful assertion response.
e. In Logout Url, enter the URL used to send the SAML logout response back to the application.
f. Click Save.
See Adding a user group SAML attribute to the enterprise application on page 223 and Adding users to an
enterprise application on page 224.
1. In the SAML-based Sign-on window that opens after step 4 in Setting up single sign-on for an enterprise application
on page 222, go to the Attributes & Claims pane, and select Edit.
2. In the Attributes & Claims window, select Add a group claim.
The Group Claims window opens.
3. In the Group Claims window, select All groups in Which groups associated with the user should be returned in the
claim? and then click Save.
In the SAML Signing Certificate pane, download the certificate file (base64) needed to
configure the remote SAML server.
1. In the SAML-based Sign-on window that opens after step 4 in Setting up single sign-on for an enterprise application
on page 222, go to Users and Groups.
2. Select Add user/group and then select None Selected to open the Users and groups window.
3. In the Users and groups window, search the name of the user(s) and select Select to include all users able to
authenticate using the enterprise application.
4. Select Assign to add the user(s).
Go to Manage > Properties and make note of the Application ID required when setting up an
OAuth server.
1. Go to Authentication > Remote Auth. Servers > OAUTH and select Create New.
The Create New Remote OAuth Server window appears.
2. Enter a name for the remote OAuth server.
3. In the OAuth source dropdown, select Azure Directory.
4. In Client ID, enter the application id that you saved when Adding users to an enterprise application on page 224.
5. In Client Key, enter the authentication key created in Registering the enterprise application with Microsoft identity
platform and generating authentication key on page 225.
6. Enable Include for SSO, and in Azure AD tenant ID, enter your Microsoft Entra ID tenant ID.
7. Select OK to add the remote OAuth server.
1. Go to Authentication > Remote Auth. Servers > SAML and select Create New.
The Create New Remote SAML Server window opens.
2. Enter a name for the remote SAML server.
The name of the remote SAML server is then used when configuring SAML single sign-on in Azure.
3. Select Type as FSSO.
The Portal URL is the Sign on URL in the SAML-based Sign-on window in Azure Active
Directory > Enterprise applications on the Azure portal.
1. Go to Fortinet SSO Methods > SSO > SAML Authentication and select Create New.
The Create New SAML Identity Provider window opens.
2. In Remote SAML server dropdown, select the remote SAML server created in Creating a remote SAML server on
page 226.
3. In the Domain Membership pane, enable Get SSO domain name from, and select Username prefix/suffix to obtain
the domain name specified in the username.
4. Click OK to create the new SAML SP portal.
1. Go to Fortinet SSO Methods > SSO > General to open the Edit SSO Configuration window.
2. In the FortiGate pane, select Enable authentication, then enter a secret key, or password, in the Secret key field.
3. Click OK.
To create a FortiGate filter and include the groups from Microsoft Entra ID:
1. Go to Fortinet SSO Methods > SSO > FortiGate Filtering and select Create New.
The Create New FortiGate Filter window opens.
2. Enter a name to identify the filter.
3. In FortiGate name/IP, enter FortiGate unit’s FQDN or IP address.
4. In Fortinet Single Sign-On (FSSO) pane, enable Forward FSSO information for users from the following subset of
users/groups/containers only, and include the groups from Microsoft Entra ID you intend to send information to the
FortiGate.
5. Click OK.
Select View next to Users/Groups to view the groups you previously added in
FortiAuthenticator.
1. Go to Policy & Objects > Firewall Policy and select Create New.
2. Enter a name for the policy.
3. In Incoming Interface, select the interface created to use an external captive portal.
4. In Outgoing Interface, select the interface for virtual WAN.
5. In Source:
a. Select + to open the Select Entries window.
b. In Address, search and select all.
c. Select Close.
6. In Destination:
a. Select + to open the Select Entries window.
b. In Internet Service, search and select Microsoft-Azure.
c. Select Close.
7. In Advanced pane, enable Exempt Captive Portal to exempt this policy from the captive portal.
8. Click OK.
d. Optionally, in User access, select Restricted to Groups, and then select groups for User Groups.
8. Click OK.
1. Go to Policy & Objects > Firewall Policy and select Create New.
2. Enter a policy name.
3. In Incoming Interface, select the interface created to use an external captive portal.
4. In Outgoing Interface, select the interface for DMZ.
5. In Source:
a. Select + to open the Select Entries window.
b. In Address, search and select all.
c. Select Close.
6. In Destination:
a. Select + to open the Select Entries window.
b. In Address, select Create > Address, and in the New Address window, enter details related to the
FortiAuthenticator SP. Click OK.
c. Select Close.
7. In Service:
a. Select + to open the Select Entries window.
b. Search and select HTTPS.
c. Select Close.
8. In the Firewall/Network Options pane, disable NAT.
9. In Advanced pane, enable Exempt Captive Portal to exempt this policy from the captive portal.
Results
1. Once the user attempts to access the SP, they are redirected to Azure for authentication.
2. After entering the credentials, user receives the information that the login was successful.
The SSO session is visible in both FortiAuthenticator and FortiGate:
l In FortiAuthenticator: Monitor > SSO > SSO Sessions.
l In FortiGate: Dashboard > User & Devices.
To configure Office 365 SAML authentication using FortiAuthenticator with two-factor authentication:
1. Go to Authentication > Remote Auth. Servers > SAML and click Create New.
2. Configure the remote SAML server:
a. Name: Provide a name for the remote SAML server.
b. Type: Proxy
c. IdP Settings: Enter the IdP entity ID, IdP Single sign-on URL, and IdP certificate fingerprint obtained from your
ADFS IdP.
d. Obtain username from: Select Text SAML Assertion and enter username.
1. Go to Authentication > User Management > Realms and click Create New.
2. Configure a name for the realm and select your remote SAML server as the User source.
3. Click OK to save your changes.
1. Go to Authentication > SAML IdP > General and click Enable SAML Identity Provider portal.
2. Configure the following settings:
a. Server address: The IP address or FQDN of the FortiAuthenticator.
b. Realms: Select the previously created SAML realm.
c. Default IdP certificate: Choose a certificate. The default can be used if desired.
The remaining settings can be left in their default state.
1. Go to Authentication > SAML IdP > Service Providers and click Create New.
2. Configure the following settings:
a. SP name: enter a name for your O365 service provider.
b. IdP Prefix: Click Generate prefix to create a new IdP prefix.
c. Server certificate: Select the certificate to be used in your configuration or choose Use default setting in
SAML IdP General page.
d. IdP signing algorithm: Select Use default signing algorithm in SAML IdP General page.
e. Participate in single logout: Can be enabled if you wish this SP to participate in SAML single logout.
3. In the Assertion Attribute Configuration section, configure the following settings:
a. Subject NameID: Select Subject NameID.
b. Format: Select urn:oasis:names:tc:SAML:2.0:nameid-format:persistent.
4. Click Save and the SP Metadata and Assertion Attribute fields are displayed. Configure the following settings for the
SP Metadata.
a. SP entity ID: Enter urn:federation:MicrosoftOnline.
b. SP ACS (login) URL: Enter [Link]
c. SP SLS (logout) URL: Enter [Link]
5. In Assertion Attributes click Create New and configure the following assertion attribute:
a. SAML attribute: IDPEmail
b. User attribute: SAML assertion
c. Custom field: IDPEmail
1. Go to Authentication > User Management > Remote User Sync Rules, choose SAML and then click Create New.
2. Configure the following settings:
a. Name: Enter a name for the sync rule (e.g. SAML Users).
b. Remote SAML server: Select the previously configured remote SAML server.
3. Configure the token-based sync priority settings under Synchronization Attributes by enabling and ordering the
authentication sync priorities.
This example scenario uses FortiToken Cloud for two-factor authentication, so the priority is FortiToken Cloud
followed by None (users are synced explicitly with no token-based authentication).
4. Select or create a user group to associate users with from the dropdown menu.
5. In SAML User Mapping Attributes, set the Username field to sAMAccountName.
6. The remaining settings can be configured to your preference or left in their default state.
7. Click OK to save your changes when completed.
1. Go to Authentication > User Management > Remote Users and Import users from the remote SAML account.
2. Edit a user and enable One-Time Password (OTP) authentication, and select FortiToken > Cloud as the delivery
method.
3. Click OK to save your changes.
1. Go to Authentication > SAML IdP > Replacement Messages, and click the Login Page replacement message.
2. Click Restore Default in the replacement message toolbar and select idp-proxy.
3. On the right side of the screen you can edit the replacement message's HTML. Follow the instructions included in
the HTML to replace [proxy_portal_url] with the ADFS portal URL.
4. Click Save.
Results
Once configured, Active Directory synchronized users can sign in to Office 365 using two-factor authentication from
FortiAuthenticator.
1. When the user attempts to access the Office 365 SP, they are redirected to the ADFS SAML IdP.
3. Enter your 2FA token or approve the access request from your FortiToken push request.
Following the example you can connect to an Agentless VPN configured FortiGate with your account validated by
OneLogin using FortiAuthenticator as an IdP proxy.
In this example:
l FortiAuthenticator is as an IdP proxy to OneLogin, i.e., FortiAuthenticator IdP proxy receives SAML authentication
requests to OneLogin and users are validated against the OneLogin user database.
l FortiAuthenticator is as an IdP to local resources. SAML clients act as SAML SP to FortiAuthenticator.
FortiAuthenticator uses local or remote databases for user authentication.
If you are unable to locate the Applications option, go to Administration > Users and
privileges and ensure that Permission is set as Super user.
See Configuring an application on OneLogin on page 238, Configuring application parameters on OneLogin on page
240, and Configuring SSO on OneLogin on page 241.
1. In the SAML Custom Connector (Advanced) window that opens after step 7 in Creating an OneLogin application on
page 238, go to the Configuration tab.
Alternatively, go to Applications > Applications, from the applications list select your application, and then go to the
Configuration tab.
2. In Audience (Entity ID), enter the Entity ID from the remote SAML server configuration on FortiAuthenticator.
3. In ACS (Consumer) URL Validator, enter the modified ACS (login) URL from the remote SAML server configuration
on FortiAuthenticator.
The ACS (Consumer) URL Validator must start with a “^”, end with a “$”, and have a “\”
preceding every “/”, “?” and “.”.
See the screenshot below.
4. In ACS (Consumer) URL, enter the ACS (login) URL from the remote SAML server configuration on
FortiAuthenticator.
5. In Single Logout URL, enter the SLS (logout) URL from the remote SAML server configuration on
FortiAuthenticator.
6. In Login URL, enter the Portal URLfrom the remote SAML server configuration on FortiAuthenticator.
7. SAML not valid before and SAML not valid on or after may be changed as required.
8. Ensure that SAML initiator is set as OneLogin.
9. Ensure that SAML nameID format is as Email.
10. Ensure that SAML issuer type is set as Specific.
11. In the SAML signature element dropdown, select Both.
12. Click Save.
Parameters while configuring an application on OneLogin must match the remote SAML
server configuration on FortiAuthenticator.
See Configuring a remote SAML server on page 243.
1. Go to Applications > Applications, from the applications list select your application.
2. Go to the Parameters tab and select +.
The New Field dialog opens.
3. In the New Field dialog:
a. In Field name, enter a name.
b. Select the Include in SAML assertion checkbox
c. Click Save.
4. Open the recently created field, and in the Value dropdown, select Email.
5. Click Save.
Once the field is configured, the window should appear as shown below.
1. Go to Applications > Applications, from the applications list select your application.
2. Go to the SSO tab.
3. In the SAML Signature Algorithm dropdown, select SHA-256.
4. Click Save.
Clicking View Details in X.509 Certificate shows the certificate assigned to the application
by OneLogin that includes the fingerprint information. Ensure that SHA fingerprint is
SHA256.
Select a format from the dropdown and download the certificate.
4. In the Assign new login to window, select the previously created application, and select Continue.
Some fields, including IdP entity ID, IdP single sign-on URL, and IdP certificate fingerprint, are
configured based on the corresponding OneLogin settings.
It is advised that you set up OneLogin and the SAML server simultaneously.
See Configuring SSO on OneLogin on page 241 and Configuring application parameters on
OneLogin on page 240.
1. Go to Authentication > Remote Auth. Servers > SAML and select Create New.
The Create New Remote SAML Server window opens.
2. Enter a name for the SAML server.
3. Select Type as Proxy.
In the Text-based list field, any value can be used so long it is a parameter for the
OneLogin application.
9. Optionally, enable Implicit group membership when only a single group exists.
Once the OneLogin application is set up and a certificate is associated with the application,
you can download the IdP metadata by going to More Actions > SAML Metadata in one of
the tabs when configuring the application.
1. Go to Authentication > User Management > Realms, and select Create New.
2. Enter an name for the realm.
3. In User source, select the remote SAML server created in Configuring a remote SAML server on page 243.
4. Click OK.
1. Go to Authentication > User Management > Remote Users, and select SAML.
2. Select Create New.
The Create New Remote SAML User window opens.
3. In the Remote SAML dropdown, select the remote SAML server created in Configuring a remote SAML server on
page 243.
4. In Username, enter a username in email format as set in OneLogin. Optionally, enter any useful information that you
may need in the User Information pane.
For successful authentication, the username must match with the email on OneLogin.
5. Click OK.
Once saved, the newly created remote SAML user allows for FortiAuthenticator MFA, if required.
1. Go to Authentication > SAML IdP > General, and select Enable SAML Identity Provider portal.
2. In Server address, enter the FortiAuthenticator FQDN.
Device FQDN can be configured from the System Information widget in System >
Dashboard > Status.
FQDN must be reachable via DNS for users using the service.
As a best practice, the default certificate should not be used as it is less secure than a
certificate issued by a trusted Certificate Authority (CA).
1. Go to Authentication > SAML IdP > Replacement Messages, and click the Login Page replacement message.
2. In Restore Default dropdown, select idp-proxy to automatically redirect users to the IdP proxy login page after 3
seconds.
Alternatively, select idp-server-and-proxy, and then select Or Sign in using a cloud server to go to the IdP proxy
login page.
3. On the right side of the screen, you can edit the replacement message in HTML. Replace all instances of [proxy_
portal_url] with Portal URL in Configuring a remote SAML server on page 243.
4. Click Save.
In the Restore Default dropdown, idp-server option must not be selected as it does not
redirect users to the IdP proxy, i.e., OneLogin for authentication.
For the configurations to work, the SAML IdP login page replacement message must be
edited to include the portal URL.
1. Go to Authentication > SAML IdP > Service Providers, and click Create New.
2. Enter the following information:
a. SP name: Enter a name for the FortiGate SP.
b. IdP prefix: Select +, enter an IdP prefix in the Create Alternate IdP Prefix dialog or select Generate prefix, and
click OK.
c. Server certificate: Select the same certificate as the default IdP certificate used in Authentication > SAML IdP
> General. See Configuring SAML IdP settings on page 246.
d. In Application name for FTM push notification, enter OneLogin.
3. Click Save.
4. In the SP Metadata pane, enter the following information:
a. SP entity ID: Enter the SP entity ID from Creating SAML user and server on page 250.
b. SP ACS (login) URL: Enter the SP single sign-on URL from Creating SAML user and server on page 250.
c. SP SLS (logout) URL: Enter the SP single logout URL from Creating SAML user and server on page 250.
SP entity ID, SP ACS (login) URL, and SP SLS (logout) URL must match their
respective configurations on the FortiGate SP side.
5. Click OK.
6. Select and click Edit to edit the recently created FortiGate SP.
7. In Assertion Attribute Configuration:
a. Select Subject NameID in Subject NameID.
b. Select urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress in Format.
8. In Assertion Attributes, select Add Assertion Attribute:
a. Enter a name for the SAML attribute. Here, group.
b. Select SAML assertion in the User attribute dropdown.
c. Enter group in Custom field.
d. Select Add Assertion Attribute again to create a new SAML attribute named email, and from the User attribute
dropdown select SAML username.
SAML assertion attribute names and values must match values configured in Creating
SAML user and server on page 250.
5. Click OK.
Ensure that the correct certificate is uploaded to the FortiGate SP, else SAML
authentication fails due to a mismatch in the certificate used by FortiAuthenticator to sign
the SAML assertion.
The FortiGate SP only trusts SAML assertions signed by the certificate selected in
Creating SAML user and server on page 250.
1. Go to User & Authentication > Single Sign-On and select Create New.
The single-sign on wizard opens.
2. Enter a name for the SAML server.
3. In SP address, enter the local IP address and port in the format <IP_ADDRESS>:<PORT>.
SP address is the IP address of the interface users use to connect to the Agentless VPN in
VPN > Agentless VPN Settings > Listen on Interface(s).
The port should be the same port configured in VPN > Agentless VPN Settings > Listen on
Port.
Click the icon beside the SP entity ID, SP single sign-on URL, and SP single logout URL
fields to copy the text.
SP entity ID, SP single sign-on URL, and SP single logout URL are then used when
configuring SP settings on FortiAuthenticator.
See Configuring FortiGate SP settings on FortiAuthenticator on page 247.
4. Click Next.
5. In IdP Details:
a. Ensure that IdP type is Fortinet Product.
b. In IdP address, enter the Server address from FortiAuthenticator. See Configuring SAML IdP settings on page
246.
c. In Prefix, enter the IdP prefix from Configuring FortiGate SP settings on FortiAuthenticator on page 247.
d. In the IdP certificate dropdown, select the certificate from Uploading SAML IdP certificate to the FortiGate SP
on page 249.
6. In the Additional SAML Attributes pane:
a. In Attribute used to identify users, enter email.
b. In Attribute used to identify groups, enter group.
Attribute used to identify users and Attribute used to identify groups must match Assertion
Attributes configured in Configuring FortiGate SP settings on FortiAuthenticator on page
247.
7. Click Submit.
FAC OneLogin IdP Proxy is the name of the SAML server set up in Creating a SAML
server.
You may set Groups as Specify to filter specific groups from the FortiGate SP.
6. Click OK.
7. Click OK.
In the Portal dropdown, web-access can also be selected if the user connects to the
network using the portal.
d. Click OK.
3. Click Apply.
1. Go to Policy & Objects > Firewall Policy and select Create New.
2. Enter a name for the policy.
3. In Incoming Interface, select Agentless VPN tunnel interface ([Link]).
4. In Outgoing Interface, select a destination interface.
5. In Source:
a. Select + to open the Selected Entries window.
b. In User, search and select the SAML user group created in Creating a SAML group and the Agentless VPN
Starting FortiOS 7.6.3, SSL VPN web mode is renamed Agentless VPN.
See IPsec and SSL VPN or Agentless VPN in the latest FortiOS New Features Guide.
In this configuration, the FortiGate acts as a SAML Service Provider (SP) requesting authentication from
FortiAuthenticator, which acts as a SAML Identity Provider (IdP). It connects to the Windows AD via LDAP to
authenticate user requests. The FortiAuthenticator also acts as a root CA to sign certificates for the SP, IdP and
FortiGate Agentless VPN portal.
Users are managed in Windows AD under the Security Groups Finance and Sales. The users are:
The following shows topology for the configuration used in this example:
Assumptions
1. A policy is configured on the FortiGate using VIP to allow external users access to the FortiAuthenticator for SAML
authentication. The VIP maps [Link]->[Link] on TCP/443.
2. A policy is configured on the FortiGate using VIP to allow external users access to EMS for Telemetry. The VIP
maps [Link]->[Link] on TCP/8013.
Certificate management
During the authentication process, the SAML SP and IdP must verify each other. This means that they must verify
certificates on both ends. Since the local CA manages the SAML certificates on the FortiAuthenticator, it has the
certificates necessary for its configurations. To complete its configuration, the SAML SP certificate and SAML IdP
certificate must be exported and loaded onto the FortiGate.
Furthermore, in this scenario, the CA on the FortiAuthenticator will also sign the Agentless VPN certificate used by the
FortiGate. This certificate must also be exported and loaded on the FortiGate.
1. Go to Certificate Management > Certificate Authorities > Local CAs and select Create New.
The Create New Local CA Certificate window opens.
1. Go to Certificate Management > End Entities > Users and select Create New.
2. In Certificate ID, enter a unique ID for the certificate.
3. Ensure that the Issuer is Local CA.
4. In Certificate authority dropdown, select the previously created local CA. See Configuring a local root CA.
5. In the Subject Information pane, enter the necessary subject information to identify the user certificate.
6. Click OK.
1. Go to Certificate Management > End Entities > Local Services and select Create New.
2. In Certificate ID, enter a unique ID for the certificate.
3. In Certificate authority dropdown, select the previously created local CA.
See Configuring a local root CA.
4. In the Subject Information pane, enter the necessary subject information to identify the server certificate.
5. Click OK.
To create and sign a user certificate for FortiGate Agentless VPN web portal:
1. On FortiGate, go to System > Certificate, and from the Create/Import dropdown, select Generate CSR.
2. 2. Enter the Certificate Name, Subject Information and any Optional Information such as a Subject Alternative
Name.
3. Click OK.
4. On the Certificates list page, select the user certificate you have created under Local Certificate.
11. In Certificate Management > End Entities > Users, select the above certificate.
12. Click Export Certificate to export a .cer file.
1. On FortiGate, go to System > Certificates, and from the Create/Import dropdown, select Remote Certificate.
2. Select Upload to locate and upload the .cer remote certificate from your computer.
3. Click OK.
On the certificates list page, the new certificate is now available in Remote Certificate.
To import the user certificate for the FortiGate Agentless VPN portal
1. On FortiGate, go to System > Certificates, and from the Create/Import dropdown, select Certificate.
2. Select Import Certificate to locate the .cer user certificate file from your computer.
3. Click Create.
On the certificates list page, the new certificate is now available in Local Certificate.
1. Go to Authentication > Remote Auth. Servers > LDAP, and select Create New.
2. Configure the LDAP server settings to connect to the Windows AD as shown in the screenshot.
3. Click OK.
1. Go to Authentication > User Management > Realms and select Create New.
2. Name the realm.
3. In User source, from the dropdown, select the recently created LDAP server.
4. Click OK.
1. Go to Authentication > User Management > User Groups and select Create New
2. To create a user group for Sales:
a. In Name, enter Sales.
b. Set the Type as Remote LDAP.
c. From the Remote LDAP dropdown, select the recently created LDAP server.
d. In LDAP filter, specify an LDAP filter using an LDAP query.
To select users who are memberOf the Sales group, enter
(&(objectclass=user)(memberOf=CN=Sales,CN=Users,DC=fortiad,DC=info))
3. Click OK.
4. To create a user group for Finance:
a. In Name, enter Finance.
b. Set the Type as Remote LDAP.
c. From the Remote LDAP dropdown, select the recently created LDAP server.
d. In LDAP filter, specify an LDAP filter using an LDAP query.
To select users who are memberOf the Finance group, enter
(&(objectclass=user)(memberOf=CN=Sales,CN=Users,DC=fortiad,DC=info))
e. Click OK.
The LDAP filter above will not match users whose group (Sales or Finance) is set as the
primary group. This is because the primary group is returned by the primaryGroupID
attribute by Windows AD and does not appear in the memberOf attribute.
Before configuring the IdP and SP settings, quickly note down the IP addresses and ports that
will be used by the client endpoint to connect to the IdP and SP.
In this topology, the IP addresses and ports used by the client endpoint are:
• FortiAuthenticator (IdP) – [Link]:443
• FortiGate (SP) – [Link]:10443 (10443 is used for access related to Agentless VPN based on the default listening
port for Agentless VPN. Change this accordingly when listening on a different port)
In general, the URLs used for the SP and IdP configurations in a Agentless VPN scenario are in the following format:
1. Go to Authentication > SAML IdP > Service Providers and select Create New.
2. Enter an SP name.
3. Enter an IdP prefix. This prefix will appear in the IdP URLs.
4. In Server certificate, choose the SAML IdP certificate created under Certificate Management > End Entities > Local
Services. See Generating a server certificate.
5. Store the IdP URLs on Notepad as they are needed on FortiGate.
6. Enter the SP entity ID, SP ACS (login) URL, SP SLS (logout) URL as recommended in the table above.
7. In Assertion Attributes, select Add Assertion Attribute:
a. In SAML attribute, enter username.
b. In User attribute dropdown, select FortiAuthenticator > Username.
8. Select Add Assertion Attribute:
a. In SAML attribute, enter group.
b. In User attribute dropdown, select Remote LDAP server > Group.
This is equivalent to returning the groups from the memberOf attribute.
c. Click OK.
SAML settings can be configured from the GUI, but the default SP URLs must be changed after they are created.
Therefore, the following instructions show how to configure the SAML settings from CLI instead.
1. In the CLI console, enter the following commands:
config user saml
edit "fac_saml_idp-sslvpn"
set cert "saml_sp.[Link]"
set entity-id "[Link]
set single-sign-on-url "[Link]
set single-logout-url "[Link]
set idp-entity-id "[Link]
set idp-single-sign-on-url "[Link]
set idp-single-logout-url "[Link]
set idp-cert "saml_idp.[Link]"
set user-name "username"
set group-name "group"
set digest-method sha1
next
end
1. Go to User & Authentication > User Groups and select Create New.
2. To create a user group for Sales:
a. In Name, enter Sales.
b. In Remote Groups, click Add.
c. Choose the SAML SSO settings as the Remote Server.
d. Set Groups to Specify and enter the group name CN=Sales,CN=Users,DC=fortiad,DC=info.
e. Click OK.
Besides the groups for SAML users, a non-SAML placeholder group needs to be created in order for Agentless VPN
portal to be active. The following shows a placeholder group named sslvpn_group with 2 local users.
f. Click OK.
f. Click OK.
1. Go to Policy & Objects > Firewall Policy and click Create New.
2. Create a policy named SSLVPN-Finance.
a. Set Incoming Interface to Agentless VPN tunnel interface ([Link]).
b. Set Outgoing Interface to port2.
c. Set Source to all and User to Finance.
d. Set Destination to the Finance address object. If needed, create this object with the IP address
[Link]/32.
e. Set Service to ALL.
f. Configure other settings as needed.
g. Click OK.
g. Click OK.
f. Click OK.
FortiClient configurations
In Agentless VPN tunnel mode, the FortiClient will initiate the connection. Below are two ways of configuring the
Agentless VPN connection profile.
9. Click Save.
9. Shortly after, the FortiClient endpoint should receive the newly synced EMS_SAML_SSLVPN profile.
Your sign-on request will be redirected by the FortiGate SAML SP to the FortiAuthenticator SAML IdP.
3. Enter the user credentials for the user and click Login.
In the background, the FortiAuthenticator authenticates this user over the LDAP connection to the Windows AD. If
the authentication succeeds and matches a user group on FortiAuthenticator, FortiAuthenticator sends a SAML
assertion back to the browser containing the username and group information.
The browser redirects the SAML assertion to the FortiGate SAML SP, which matches the username and group
information to a user group. Based on this user group, access is granted.
The Finance user can now see the Finance Agentless VPN Portal.
4. Clicking on the Finance Server bookmark, the user can access the Finance server.
1. On FortiGate, go to Dashboard > Network and expand the Agentless VPN widget.
2. From Log & Report > System Events, switch to VPN Events log.
Alternatively, in the CLI console, enter the following commands:
execute log filter category 1
execute log filter field subtype vpn
execute log display
1974 logs found.
10 logs returned.
38: date=2022-10-28 time=[Link] eventtime=1666992000214198069 tz="-0700"
logid="0101039938" type="event" subtype="vpn" level="warning" vd="root"
logdesc="SSL VPN pass" action="ssl-web-pass" tunneltype="ssl-web"
tunnelid=165774014 remip=[Link] user="dparker" group="Finance" dst_
host="[Link]" reason="https" msg="SSL web application activated
3. On FortiAuthenticator, go to Logging > Log Access > Logs.
The SAML IdP authentication for dparker will be displayed.
1. On FortiGate, go to Dashboard > Network and expand the Agentless VPN widget.
2. Go to Dashboard > User & Devices and expand the Firewall Users widget.
3. From Log & Report > System Events, switch to VPN Events log.
Alternatively, in the CLI console, enter the following commands:
1. On the FortiAuthenticator, go to Authentication > User Management > Local Users and select Create New.
Enter a name for the user, enter and confirm a password, and be sure to disable Allow RADIUS authentication —
RADIUS authentication is not required for this example.
Set Role as User, and select OK. New options will appear.
Make sure to enable Allow LDAP browsing — the user will not be able to connect to the FortiGate otherwise.
2. Create another user with the same settings. Later, you will use jgarrick on the FortiGate to query the LDAP
directory tree on FortiAuthenticator, and you will use bwayne credentials to connect to the VPN tunnel.
3. Next go to Authentication > User Management > User Groups, and create a user group for the FortiGate users. Add
the desired users to the group.
1. Go to Authentication > LDAP Service > Directory Tree, and create a Distinguished Name (DN). A DN is made up of
Domain Components (DC).
Both the users and user group created earlier are the User ID (UID) and the Common Name (CN) in the LDAP
Directory Tree.
Create an Organizational Unit (OU), and a Common Name (CN). Under the cn=HeadOffice entry, add UIDs for the
users.
If you mouse over a user, you will see the full DN of the LDAP server.
Later, you will use jgarrick on the FortiGate to query the LDAP directory tree on FortiAuthenticator, and you will
use bwayne credentials to connect to the VPN tunnel.
1. On the FortiGate, go to User & Device > LDAP Servers, and select Create New.
Enter a name for the LDAP server connection.
Set Server IP/Name to the IP of the FortiAuthenticator, and set the Common Name Identifier to uid.
Set Distinguished Name to dc=fortinet,dc=com, and set the Bind Type to Regular.
Enter the user DN for jgarrick of the LDAP server, and enter the user's Password.
The DN is an account that the FortiGate uses to query the LDAP server.
1. Go to User & Device > User Groups, and select Create New.
Enter a name for the user group. Under Remote Groups select Add.
1. On the FortiGate, go to VPN > Agentless VPN Portals, and edit the full-access portal.
Disable Split Tunneling.
3. Assign the LDAPgroup user group to the full-access portal, and assign All Other Users/Groups to the desired portal.
Select Apply.
4. Select the prompt at the top of the screen to create a new Agentless VPN policy, including the LDAPgroup, as
shown.
Results
1. From a remote device, access the Agentless VPN Web Portal.
Enter valid LDAP credentials (in the example, bwayne).
2. The user is now successfully logged into the Agentless VPN Portal.
3. On the FortiGate, go to Monitor > Agentless VPN Monitor to confirm the connection.
4. On the FortiAuthenticator, go to Logging > Log Access > Logs and confirm the connection.
1. On the FortiAuthenticator, go to Authentication > User Management > Local Users and add/modify a user to include
SMS Token-based authentication and a Mobile number using the preferred SMS gateway as shown.
The Mobile number must be in the following format:
+[international-number]
Enable Allow RADIUS authentication.
2. Go to Authentication > User Management > User Groups and add the above user to a new SMS user group (in the
example, SMSgroup).
1. On the FortiAuthenticator, go to Authentication > RADIUS Service > Clients, and select Create New.
2. Enter a Name, the IP address of the FortiGate, and set a Secret.
The secret is a pre-shared secure password that the FortiGate will use to authenticate to the FortiAuthenticator.
3. Click OK.
1. Go to Authentication > RADIUS Service > Policies, and select Create New.
2. Enter the RADIUS policy name, description, and select the FortiGate RADIUS client.
3. Optionally, configure RADIUS attribute criteria.
4. Choose Password/OTP authentication as the authentication type.
5. Choose a username format (in this example: username@realm), select the Local realm, and add the SMSgroup as
a filter.
1. On the FortiGate, go to User & Device > RADIUS Servers and create the connection to the FortiAuthenticator
RADIUS server, using its IP address and pre-shared secret.
Use Test Connectivity to make sure that the FortiGate can communicate with the FortiAuthenticator.
2. Next, go to User & Device > User Groups and create a RADIUS user group called RADIUSgroup.
Set the Type to Firewall and add the RADIUS server to the Remote groups table.
1. Go to Policy & Objects > IPv4 Policy and create a new Agentless VPN policy, including the RADIUSgroup, as
shown.
Results
In this example, we will use the web portal to access the Agentless VPN and test the two-factor authentication.
1. Open a browser and navigate to the Agentless VPN web portal, in this case [Link]
Enter a valid username and password and select Login. You should be prompted to enter a FortiToken Code.
2. The FortiToken Code should have been sent to your mobile phone as a text message containing a 6-digit number.
Enter the number into the Agentless VPN login portal and select Login.
4. To verify that the user has connected to the tunnel, on the FortiGate, go to Monitor > Agentless VPN Monitor.
5. On the FortiAuthenticator, go to Logging > Log Access > Logs to confirm the user's connection.
Configuring Azure
1. Login to the Azure portal. If you do not yet have a directory or need to create a new one, go to Azure AD and click
Create a tenant.
Configure the directory with the following settings:
a. Select a directory type: Azure Active Directory.
b. Organization name: Enter a name for the organization.
c. Initial domain name: Enter the domain name.
d. Country/Region: Select the relevant country or region.
e. Click Create. The directory will be created after a few minutes. When finished, select the directory in the top-
right corner of Azure.
2. Go to Enterprise Applications, and select Create your own application. Enter a name for your application, for
example: Azure_fac_as_idpproxy.
3. Go to the Single Sign-on section, select SAML, and edit the basic SAML configuration.
Here you will include information obtained from FortiAuthenticator. In this example, the FortiAuthenticator FQDN is
[Link], and the name of the server is defined as Azure_fac_as_idpproxy. You should adjust these settings
to match your FortiAuthenticator's configuration.
4. Edit the User Attributes & Claims section to insert any attributes required for the SAML assertion. In this example,
only user groups have been included.
Click the edit icon, and then click Add a group claim. Select All groups.
5. Download the certificate file. It will be used later when configuring FortiAuthenticator.
6. Go to Users and Groups, and click Add user. Include all users that will be able to authenticate using this application.
7. Go to Properties and get the Application ID. This will be required later.
8. From the directory home, select Roles and Administrators > Directory Readers, and click Add assignments. Search
for your application name, then select and add it.
9. Finally, create your authentication key. Go to App Registrations, click Certificates & Secrets, and create a new key.
Before proceeding, make sure to copy the key value. The key is presented only after its
creation, and you cannot get this information again later.
Configuring FortiAuthenticator
1. Go to Authentication > Remote Auth. Servers > OAUTH, and click Create New.
2. Configure the following information:
l Name: Enter a name for your OAuth server, for example: AzureCSE.
3. Click OK.
1. Go to Authentication > Remote Auth. Servers > SAML, and click Create New.
2. Under Remote SAML Server, configure the following:
l Name: Enter a name for the server. This name must match the server name configured in Azure. In this
l Import IdP metadata/certificate: Import the certificate that you previously exported from Azure.
l IdP entity ID: Enter the Azure AD Identifier from your Azure configuration.
l IdP single sign-on URL: Enter the Login URL from your Azure configuration.
l IdP single logout URL: Enter the Logout URL from your Azure configuration.
Azure configuration.
5. In Group Membership, configure the following:
l Obtain group membership from: Select Cloud and choose your remote OAuth server. Group membership of
6. Click OK.
1. Go to Authentication > User Management > Realms, and click Create New.
2. Configure the following information:
a. Name: Enter a name for your user realm, for example: azurecse
b. User source: Select your remote SAML server as the user source.
3. Click OK.
1. Go to Authentication > SAML IdP > General, click Enable SAML Identity Provider portal, and configure the following:
a. Server address: Enter the IP or FQDN of your FortiAuthenticator.
b. Realms: Select the SAML realm as the default.
2. Click OK.
You will also need to download your IdP certificate for use later. It can be downloaded from Certificate Management
> End Entities.
1. Go to Authentication > SAML IdP > Service Providers, and click Create New.
2. Under Edit SAML Service Provider, configure the following:
l SP name: Enter a name for this service provider, for example: fgt1sslvpn.
l IdP prefix: Enter a custom IdP prefix or click Generate prefix to automatically populate this field.
l Format: urn:oasis:names:tc:SAML:2.0:nameid-format:unspecified.
4. Under SAML Attributes, add the following attributes. The user and group information will be propagated by the
FortiAuthenticator IdP in SAML assertions to FortiGate. These must match with the user-name and group-name
keywords defined for the SAML user. See Configure the SAML user on page 305.
l Attribute 1: SAML attribute: groups, User attribute: SAML Group membership.
5. Click Save.
Once the settings have been saved, you will see that additional options are available.
You can return to complete the configuration of the SAML service provider settings on
FortiAuthenticator once you have configured your FortiGate SAML user. You will need to
enter the SP entity ID, SP ACS (login) URL, and SP SLS (logout) URL from the FortiGate
configuration.
The URL must be replaced in three places as indicated by [proxy_portal_url] in the text.
3. Click Save.
Configure FortiToken
To include tokens in a user's authentication:
1. Go to Authentication > User Management > Remote Users, select SAML, and click Import.
2. Under Import Remote SAML Users, configure the following settings:
a. Remote SAML server: Select your remote SAML server, for example: Azure_fac_as_idpproxy.
b. Group: Select All users or choose a user group.
3. Click OK.
4. Edit an imported user to define the token. Enable Token-based authentication, and select your token type.
5. Click OK.
Configuring FortiGate
The entity ID, single sign on URL, and single logout URL configured in the FortiGate CLI must
now be entered in the FortiAuthenticator service provider configuration.
See To add FortiGate as a SAML service provider: on page 302
The user-name and group-name configured must match what is being returned from
FortiAuthenticator in the SAML assertions. See Configure the SAML IdP settings on
FortiAuthenticator on page 301.
You can now create a SAML group which includes that user. You can also define the SAML groups that will be allowed to
login as this group. In this example, only user that belong to "FGTGroup1" will be allowed to login to the Agentless VPN.
This can only be done through FortiGate CLI.
Next, increase the remote authentication timeout. This must be set to allow for enough time for the user to authenticate
into Microsoft Entra ID. This can only be done through the FortiGate CLI.
1. Go to VPN > Agentless VPN Settings, and edit your Agentless VPN configuration.
2. Under Authentication/Portal Mapping, click Create New.
3. Configure the following information:
a. Users/Groups: Select the configured user group.
b. Portal: full-access.
4. Click OK and save your changes to the Agentless VPN settings.
5. Configure your Agentless VPN rules as required.
For more information on configuring Agentless VPN on FortiGate, see the FortiGate Administration Guide.
Results
To sign in to your Agentless VPN:
1. Once the user tries to connect to the Agentless VPN web portal, FortiGate will redirect the user to
FortiAuthenticator.
2. The FortiAuthenticator will act as a SAML proxy and forward the request to Azure for authentication.
3. After entering their credentials, if the user has a token assigned they will be requested to enter it for two factor
authentication.
config certificate ca
edit {name}
# CA certificate.
set name {string} Name. size[79]
set ca {string} CA certificate as a PEM file.
set range {global | vdom} Either global or VDOM IP address range for the CA
certificate.
global Global range.
vdom VDOM IP address range.
set source {factory | user | bundle} CA certificate source type.
factory Factory installed certificate.
user User generated certificate.
bundle Bundle file certificate.
set trusted {enable | disable} Enable/disable as a trusted CA.
set scep-url {string} URL of the SCEP server. size[255]
set auto-update-days {integer} Number of days to wait before requesting an updated
CA certificate (0 - 4294967295, 0 = disabled). range[0-4294967295]
1. On the FortiAuthenticator, go to Authentication > RADIUS Service > Clients, and select Create New.
2. Enter a Name, the IP address of the FortiGate, and set a Secret.
The secret is a pre-shared secure password that the FortiGate will use to authenticate to the FortiAuthenticator.
1. Go to Authentication > RADIUS Service > Policies, and select Create New.
2. Enter the RADIUS policy name, description, and select the FortiGate RADIUS client.
3. Do not configure RADIUS attribute criteria.
4. Choose Password/OTP authentication as the authentication type and enable all EAP types.
5. Choose a username format (in this example: username@realm), select the Local realm.
Add the employees user group as a filter.
6. Set the authentication method to Password only authentication.
7. Review the RADIUS response, and click Save and Exit.
1. Next go to Authentication > User Management > Local Users and create local user accounts as needed.
2. For each user, add the following RADIUS attributes which specify the VLAN information to be sent to the FortiGate.
The Tunnel-Private-Group-Id attribute specifies the VLAN ID.
In this example, jsmith is assigned VLAN 100 and twhite is assigned VLAN 200.
1. On the FortiGate, go to User & Device > RADIUS Servers and select Create New.
Enter the FortiAuthenticator IP address and the server Secret entered on the FortiAuthenticator earlier.
1. On the FortiGate, go to WiFi & Switch Controller > SSID and create a new SSID.
Set up DHCP service.
2. Select WPA2 Enterprise security and select your RADIUS server for authentication.
Enable Dynamic VLAN Assignment.
3. Then open the CLI Console and enter the following command to assignment and set the VLAN ID to 10. This VLAN
is used when RADIUS does not assign a VLAN:
config wireless-controller vap
edit example-wifi
set vlanid 10
next
end
2. Then create two more VLAN interfaces: one for marketing-100 and another for techdoc-200, both with
DHCP service.
3. Create another policy that allows outbound traffic from techdoc-200 to the Internet.
For this policy too, under Logging Options, enable logging for All Sessions.
Results
The SSID will appear in the list of available wireless networks on the users’ devices.
Both twhite and jsmith can connect to the SSID with their credentials and access the Internet.
If a certificate warning message appears, accept the certificate.
1. Go to FortiView > Policies.
Note that traffic for jsmith and twhite will pass through different policies. In this example, the marketing-100-internet
policy is displayed, indicating that jsmith has connected to the WiFi.
2. Double-click to drill-down, where the user's identity (including username, source IP, and device address) is
confirmed.
3. When twhite has connected to the WiFi network, go to FortiView > Policies and drill-down. The user, and techdoc-
200-internet policy, is confirmed.
FortiAuthenticator. 802.1X utilizes the Extensible Authentication Protocol (EAP) to establish a secure tunnel between
participants involved in an authentication exchange.
EAP-TLS is the most secure form of wireless authentication because it replaces the client username/password with a
client certificate. Every end user, including the authentication server, that participates in EAP-TLS must possess at least
two certificates:
1. A client certificate signed by the certificate authority (CA)
2. A copy of the CA root certificate.
This example specifically focuses on the configuration of the FortiAuthenticator, FortiGate, and Windows 10 computer.
1. On the FortiAuthenticator, go to Certificate Management > Certificate Authorities > Local CAs and select Create
New.
Configure the fields as required.
1. Go to Certificate Management > End Entities > Local Services and select Create New. Complete the information in
the fields pertaining to your organization.
4. Click OK.
1. On the FortiAuthenticator, go to Authentication > RADIUS Service > Clients, and select Create New.
2. Enter a Name, the IP address of the FortiGate, and set a Secret.
The secret is a pre-shared secure password that the FortiGate will use to authenticate to the FortiAuthenticator.
1. Go to Authentication > RADIUS Service > Policies, and select Create New.
2. Enter the RADIUS policy name, description, and select the FortiGate RADIUS client.
3. Do not configure RADIUS attribute criteria.
4. Set the authentication type as Client Certificates (EAP-TLS).
5. Choose a username format (in this example: username@realm), select the Local realm.
6. Set the authentication method to Password only authentication.
7. Review the RADIUS response, and click Save and Exit.
1. Go to Authentication > User Management > Local Users and select Create New.
Fill out applicable user information.
1. Go to Certificate Management > End Entities > Users and select Create New.
Fill out applicable user information to map the certificate to the correct user.
1. On the FortiGate, go to User & Device > RADIUS Servers and select Create New. Enter a Name, the
FortiAuthenticator’s IP address, and the same Secret set on the FortiAuthenticator.
1. Go to WiFi & Switch Controller > SSID and create an SSID with DHCP for clients.
2. Set the following WiFi Settings, assigning the RADIUS Server configured earlier.
3. Then go to WiFi & Switch Controller > FortiAP Profiles and edit your FortiAP default profile.
Select the new SSID for both Radio 1 and Radio 2.
4. Then go to Policy & Objects > IPv4 Policy and create a policy that allows outbound traffic from the EAP-TLS
wireless interface to the Internet.
1. On the FortiAuthenticator, go to Certificate Management > End Entities > Users. Select the certificate and select
Export Key and Cert.
2. In the Export User Certificate and Key File dialog, enter and confirm a Passphrase. This password will be used
when importing the certificate into a Windows 10 computer. Select OK.
3. Select Download PKCS#12 file to pull this certificate to the Widows 10 computer. Select Finish.
1. On the Windows 10 computer, double-click the downloaded certificate file from the FortiAuthenticator.
This will launch the Certificate Import Wizard. Select Next.
2. Make sure the correct certificate is shown in the File name section in the File to Import window. Select Next.
3. Enter the Password created on the FortiAuthenticator during the export of the certificate.
Select Mark this key as exportable and leave the remaining options to default. Select Next.
4. In the Certificate Store, choose the Place all certificates in the following store.
Select Browse and choose Personal. Select Next, and then Finish.
A dialog box will show up confirming the certificate was imported successfully.
1. On Windows 10, got to Control Panel > Network and Sharing Center > Set up a new connection or network >
Manually connect to a wireless network. Enter a Network name and set Security type to WPA2-Enterprise. The
Encryption type is set to AES.
2. Once created, you have the option to modify the wireless connection. Select Change connection settings.
3. In the Security tab, set Choose a network authentication method to Microsoft: Smart card or other certificates, and
select Settings.
4. Enable both Use a certificate on this computer and Use simple certificate selection.
Note that, for simplification purposes, Verify the server's identity by validating the certificate has been disabled.
However EAP-‐TLS allows the client to validate the server as well as the server validate the client. To enable this,
you will need to import the CA from the FortiAuthenticator to the Windows 10 computer and make sure that it is
enabled as a Trusted Root Certification Authority.
Select OK for all dialog windows to confirm all settings. The configuration for the Windows 10 computer has been
completed and the user should be able to authenticate to WiFi via the certificate without using their username and
password.
Results
1. On the user's device, attempt to connect to the WiFi. Select the user's certificate and select OK.
2. On the FortiAuthenticator, go to Logging > Log Access > Logs to confirm the successful authentication.
3. On the FortiGate, go to Monitor > WiFi Client Monitor to view various information about the client.
You can also go to Log & Report > Forward Traffic to view more log details.
1. Go to Authentication > User Management > Local Users and create a user account.
2. Then go to Authentication > User Management > User Groups and create a local user group (employees), adding
1. On the FortiAuthenticator, go to Authentication > RADIUS Service > Clients, and select Create New.
2. Enter a Name, the IP address of the FortiGate, and set a Secret.
The secret is a pre-shared secure password that the FortiGate will use to authenticate to the FortiAuthenticator.
1. Go to Authentication > RADIUS Service > Policies, and select Create New.
2. Enter the RADIUS policy name, description, and select the FortiGate RADIUS client.
3. Do not configure RADIUS attribute criteria.
4. Set the authentication type as Password/OTP authentication, and enable all EAP types.
5. Choose a username format (in this example: username@realm), select the Local realm.
Add the user group employees as a filter.
6. Review the remaining configurations, and click Save and Exit.
1. Go to User & Device > RADIUS Servers and add the FortiAuthenticator as a RADIUS server.
Select Test Connectivity to confirm the successful connection.
1. Go to WiFi & Switch Controller > SSID and define your wireless network.
1. Go to Network > Interfaces and configure a dedicated interface for the FortiAP.
Under Administrative Access, enable PING and CAPWAP, and enable DHCP Server.
Under Networked Devices, enable Device Detection.
2. Connect the FortiAP unit to the interface. Then go to WiFi & Switch Controller > Managed FortiAPs. Notice the
Status is showing Waiting for Authorization.
When the FortiAP is listed, select and Authorize it.
3. The FortiAP is now Online. The Status may take a few minutes to update.
4. Go to WiFi & Switch Controller > FortiAP Profiles and edit the profile.
This example uses a FortiAP-S 221E, so the FAPS221E-default profile applies.
For each radio, make sure to select your SSID.
1. Go to Policy & Objects > IPv4 Policy and add a policy that allows WiFi users to access the Internet.
2. Under Logging Options, enable Log Allowed Traffic and All Sessions.
Results
1. Connect to the example-staff network and browse Internet sites.
On the FortiGate, go to Monitor > WiFi Client Monitor to see that clients connect and authenticate.
1. On the FortiAuthenticator, go to Authentication > RADIUS Service > Clients, and select Create New.
2. Enter a Name, the IP address of the FortiGate, and set a Secret.
The secret is a pre-shared secure password that the FortiGate will use to authenticate to the FortiAuthenticator.
1. Go to Authentication > RADIUS Service > Policies, and select Create New.
2. Enter the RADIUS policy name, description, and select the FortiGate RADIUS client.
3. Do not configure RADIUS attribute criteria.
4. Set the authentication type as Password/OTP authentication, and enable all EAP types.
5. Choose a username format (in this example: username@realm), select the Local realm.
6. Review the remaining configurations, and click Save and Exit.
1. Go to Authentication > User Management > Local Users and select Create New.
Create one teacher user (smaguire) and another student user (whunting).
2. Note that, after you create the users, RADIUS Attributes appears as an option.
If your configuration involves multiple users, it is more efficient to add RADIUS attributes in their respective user
groups, in the next step.
1. Go to Authentication > User Management > User Groups and create two user groups: teachers and students.
Add the users to their respective groups.
2. Once created, edit both user groups and select Add Attribute.
3. Add the Fortinet-Group-Name RADIUS attribute to each group, which specifies the user group name to be sent to
the FortiGate.
1. On the FortiGate, go to User & Device > RADIUS Servers and select Create New.
Enter a Name, the Internet-facing IP address of the FortiAuthenticator, and enter the same Primary Server Secret
entered on the FortiAuthenticator.
1. Go to User & Device > User Groups and create two groups named the same as the ones created on the
FortiAuthenticator.
1. Go to Policy & Objects > IPv4 Policy and select Create New.
Create two policies (student-wifi and teacher-wifi) with WiFi-to-Internet access: one policy with Source set to the
students user group, and the other set to teachers. Make sure to add the SSID address (example-wifi) to both
policies also.
The student policy has a more restrictive Web Filter profile enabled.
1. Go to WiFi & Switch Controller > SSID and edit your pre-existing SSID interface.
Under WiFi Settings, set Security Mode to WPA2 Enterprise, set Authentication to RADIUS Server, and add the
RADIUS server configured on the FortiGate earlier from the dropdown menu.
Results
1. Connect to the WiFi network as a student.
2. Then on the FortiGate go to Monitor > Firewall User Monitor. From here you can verify the user, the user group, and
that the WSSO authentication method was used.
Topology
In this example, the user attempts to join the corporate WLAN; a WPA2-Enterprise WLAN, using FortiAuthenticator as a
RADIUS server. FortiGate acts as an authenticator forwarding the request to FortiAuthenticator.
FortiAuthenticator is the authentication server and forwards the user request to a remote LDAP server. Here, Google
Workspace using Secure LDAP.
If authentication succeeds, the user joins the corporate WLAN and receives attributes from FortiAuthenticator, such as a
dynamic VLAN.
To configure 802.1X authentication using FortiAuthenticator with Google Workspace User Database:
The realm name may only contain letters, numbers, periods, hyphens, and underscores. It
cannot start or end with a special character.
3. Select the previously set Google Workspace LDAP server for the realm from the User source dropdown.
4. Click OK to create the new realm.
This allows using EAP-TTLS and PAP in the user's device Wireless settings.
4. For Identity source, choose a username format, and select the realm related to Google Workspace Secure LDAP.
Click Next.
5. For Authentication factors, select Every configured password and OTP factors, and click Next.
In this menu you can also enable the option to Allow FortiToken Mobile push notifications.
6. For RADIUS response, review the policy, and click Save and exit.
1. Go to User & Authentication > RADIUS Servers, and click Create New.
2. Enter a Name for the RADIUS server.
3. For Authentication method, select Specify, then select PAP from the dropdown.
4. Enter the IP address of the RADIUS server.
5. Enter the shared Secret key, and click OK.
The secret is the same as the one used when setting up the RADIUS client, here, FortiGate.
6. Click Test Connectivity to test the connection to the server, and ensure that the connection status is Successful.
7. Click OK to save changes.
This example walks you through setting up FortiAuthenticator as a guest portal for users receiving a wireless connection
from a FortiGate.
1. Go to Authentication > User Management > User Groups and select Create New.
2. Enter a name for the group.
3. Select Local as the Type.
4. In RADIUS Attributes pane, select Add RADIUS Attribute:
a. In Vendor, select Fortinet.
b. In Attribute ID, select Fortinet-Group-Name.
c. In Value, enter the group name that you will match on the FortiGate.
FortiAuthenticator sends the RADIUS attribute to the FortiGate on successful authentication.
5. Click OK.
5. Click OK.
1. Go to Authentication > Portals > Access Points and select Create New.
2. Enter a name for the access point.
3. In Client address, select Range, and enter [Link]-[Link].
4. Click OK.
1. Go to Authentication > Portals > Policies, click Captive Portal and Create New.
2. In the Policy type tab:
a. Enter a name for the policy. Optionally, enter a description for the policy.
b. In Type, select Allow captive portal access. Copy the URL and keep it on Notepad. The URL needs to be
entered in the FortiGate configuration later.
c. Choose a portal created in Creating a guest portal on FortiAuthenticator on page 365.
d. Click Next.
5. In the Authentication type tab, select Password/OTP authentication, then enable Local/remote user to verify
credentials against one of the local or remote user accounts, and click Next.
c. Click Next.
1. Go to User & Authentication > RADIUS Servers and click Create New.
2. Enter a name for the RADIUS server.
3. For Authentication method, select Default.
4. In IP/Name, enter the IP address or DNS name of the RADIUS server.
5. In Secret, enter the shared secret key.
The secret is the same as the one used when setting up the RADIUS client, here, FortiGate.
6. Click Test Connectivity to test the connection to the server, and ensure that the connection status is Successful.
7. Click OK to save changes.
1. Go to User & Authentication > User Groups and click Create New.
2. Enter a name for the group.
3. In Type, select Firewall.
4. In Remote Groups, select Add, and then select the remote server created in Remote Server. Click OK.
Optionally, you may specify the group to be matched on the remote server. The group name must be configured as
a RADIUS attribute on the group configured on FortiAuthenticator. See Groups.
The RADIUS attribute will be sent to the FortiGate by the FortiAuthenticator on successful authentication.
5. Click OK.
8. Click OK.
1. Go to Policy & Objects > Firewall Policy and click Create New.
2. Enter a name for the policy.
3. In Incoming Interface, select the guest SSID created in Wireless Guest SSID.
4. In Outgoing Interface, select interfaces for FortiAuthenticator and DNS access.
5. In Source, select an Address object.
6. In Destination, select address objects for the FortiAuthenticator and DNS servers.
7. Enable or disable NAT as required.
8. Optionally, enable other options including Security Profiles for performing inspection using the security features of
FortiGate.
9. Click OK.
1. Go to Policy & Objects > Firewall Policy and click Create New.
2. Enter a name for the policy.
3. In Incoming Interface, select the guest SSID created in Wireless Guest SSID.
4. In Outgoing Interface, select the interface for internet access.
5. In Source, select the All address object and the guest group configured in Guest group on FortiGate.
6. In Destination, select the All address object.
7. Enable NAT.
8. Optionally, enable other options including Security Profiles for performing inspection using the security features of
FortiGate.
9. Click OK.
1. Enter the following commands to set to the firewall authentication portal address:
config firewall auth-portal
set portal-addr <addr> #portal-addr setting must be an FQDN that resolves to the
interface IP address of the guest SSID. The client must be able to resolve
this using the DNS server configured in the DHCP scope.
end
rd
The example may be used where 3 party access point is using a bridged SSID to place client
traffic into a specific VLAN (here, VLAN 61).
rd rd
A 3 party switch can also be used instead of FortiSwitch. When a 3 party switch is used,
FortiGate will connect to the switch's trunk port.
If FortiGate provides RADIUS services to other users and for other tasks, you should
configure a loopback interface. You can specify the RADIUS source IP address in the
FortiGate CLI for the loopback interface.
To configure a loopback interface using the FortiGate CLI:
config user radius
edit FAC
set source-ip <ip address> #use the IP address configured in the
RADIUS client on FortiAuthenticator.
end
1. Go to Authentication > User Management > User Groups and select Create New.
2. Enter a name for the group.
3. Select Local as the Type.
4. In RADIUS Attributes pane, select Add RADIUS Attribute:
a. In Vendor, select Fortinet.
b. In Attribute ID, select Fortinet-Group-Name.
c. In Value, enter the group name that you will match on the FortiGate.
FortiAuthenticator sends the RADIUS attribute to the FortiGate on successful authentication.
5. Click OK.
1. Go to Authentication > Portals > Access Points and select Create New.
2. Enter a name for the access point.
3. In Client address, select Range, and enter [Link]-[Link].
4. Click OK.
1. Go to Authentication > Portals > Policies, click Captive Portal and Create New.
2. In the Policy type tab:
a. Enter a name for the policy. Optionally, enter a description for the policy.
b. In Type, select Allow captive portal access. Copy the URL and store it on Notepad. The URL needs to be
entered in the FortiGate configuration later.
c. Choose a portal created in Creating a guest portal on FortiAuthenticator on page 374.
d. Click Next.
5. In the Authentication type tab, select Password/OTP authentication, then enable Local/remote user to verify
credentials against one of the local or remote user accounts, and click Next.
1. Go to User & Authentication > RADIUS Servers and click Create New.
2. Enter a name for the RADIUS server.
3. For Authentication method, select Default.
4. In IP/Name, enter the IP address or DNS name of the RADIUS server.
5. In Secret, enter the shared secret key.
The secret is the same as the one used when setting up the RADIUS client, here, FortiGate.
6. Click Test Connectivity to test the connection to the server, and ensure that the connection status is Successful.
1. Go to User & Authentication > User Groups and click Create New.
2. Enter a name for the group.
3. In Type, select Firewall.
4. In Remote Groups, select Add, and then select the remote server created in Remote Server. Click OK.
Optionally, you may specify the group to be matched on the remote server. The group name must be configured as
a RADIUS attribute on the group configured on FortiAuthenticator. See Groups.
The RADIUS attribute will be sent to the FortiGate by the FortiAuthenticator on successful authentication.
5. Click OK.
For the selected addresses and services, FortiGate does not present the captive portal
page when the policy for the selected traffic is matched.
In the Select Entries window, go to Create > Create New to create new addresses and services.
g. Optionally, in Redirect after Captive Portal, select Specific Request, and enter a URL to redirect users to a
specific URL once authenticated.
1. Go to Policy & Objects > Firewall Policy and click Create New.
2. Enter a name for the policy.
3. In Incoming Interface, select the wired guest interface created in Wired Guest Interface.
4. In Outgoing Interface, select the interface for FortiAuthenticator and DNS access.
5. In Source, select an Address object.
6. In Destination, select address objects for the FortiAuthenticator and DNS servers.
7. Enable or disable NAT as required.
8. Optionally, enable other options including Security Profiles for performing inspection using the security features of
FortiGate.
9. Click OK.
1. Go to Policy & Objects > Firewall Policy and click Create New.
2. Enter a name for the policy.
3. In Incoming Interface, select the wired guest interface created in Wired Guest Interface.
4. In Outgoing Interface, select the interface for internet access.
5. In Source, select an address object and the guest group configured in Guest group on FortiGate.
6. In Destination, select the All address object.
7. Enable NAT.
8. Optionally, enable other options including Security Profiles for performing inspection using the security features of
FortiGate.
9. Click OK.
1. Enter the following commands to set to the firewall authentication portal address:
config firewall auth-portal
set portal-addr <addr> #portal-addr setting must be an FQDN that resolves to the
interface IP address of the guest SSID. The client must be able to resolve
this using the DNS server configured in the DHCP scope.
end
Google workspace
l Google Workspace integration using LDAP on page 381
l SAML IdP proxy for Google Workspace on page 182
l 802.1X authentication using FortiAuthenticator with Google Workspace User Database on page 358
l Option A - WiFi onboarding with Smart Connect and Google Workspace on page 95
Once you have uploaded the certificate to your client, Google Workspace will generate a client certificate and key.
Example:
l Cert: Google_2022_09_09_72372.crt
l Key: Google_2022_09_09_72372.key
1. Go to Certificate Management > Certificate Authorities > Trusted CAs > Import.
2. Enter a Certificate ID, upload a file, and click OK.
Results:
You can now import the LDAP certificate generated by Google Workspace.
1. Go to Certificate Management > End Entities > Local Services > Import.
2. Select Certificate and Private Key as the Type.
3. Enter the Certificate ID, choose the files for the previously saved certificate and private key files, and select OK.
4.
Results:
g. Enable Use Client Certificate for TLS Authentication, and select the LDAP certificate.
2. Select OK.
If required, you can now import users by selecting Import users when editing the LDAP server, selecting the LDAP
server from the Remote LDAP server dropdown, and clicking the Go button next to the Import users dropdown. This
is not a required step, but can be done in cases where you want to include additional information to their accounts or
assign FortiTokens.
Troubleshooting
Missing option to use client certificate for TLS authentication
Use Client Certificate for TLS Authentication is only supported in FortiAuthenticator 6.0.1 and higher.
Microsoft
l SAML FSSO with FortiAuthenticator and Microsoft Entra ID (formerly Microsoft Azure AD) on page 218
l Office 365 SAML authentication using FortiAuthenticator with 2FA in Azure/ADFS hybrid environment on page 231
l Office 365 SAML authentication using FortiAuthenticator with 2FA on page 204
l FortiAuthenticator SSOMA for native Microsoft Entra ID joined workstation on page 164
l Option B - WiFi onboarding with Smart Connect and Azure on page 104
AWS
l FortiAuthenticator SCIM integration with AWS on page 149
OKTA
l SAML FSSO with FortiAuthenticator and Okta on page 187
OneLogin
l Agentless VPN SAML authentication using FortiAuthenticator with OneLogin as SAML IdP on page 236
SAMBA 4
l Using Samba 4 AD domain for FSSO on page 387
Prerequisites
l FortiGate 7.6
l FortiAuthenticator 6.6.3
l Debian 12 with Samba 4 Domain Controller and rsyslogd
l Client PC with Windows 10
2. Configure rsyslog:
a. Create a new configuration file /etc/rsyslog.d/[Link] and add:
if $programname == 'smbd_audit' and $syslogseverity == '5' then @[Link]
1. Open the interface being used by going to System > Network > Interfaces and clicking the in-use interface.
2. In Services, enable Syslog (UDP/514).
3. Click Save.
1. Go to Authentication > Remote Auth. Servers > LDAP and select Create New.
The Create New LDAP Server window opens.
2. In Name, enter a name for the Samba 4 server.
3. In Primary server name/IP, enter the IP address for the Samba 4 server.
4. In Base distinguished name, enter a base distinguished name for the server.
5. Ensure that Bind type is Regular, and enter a username and password.
6. Ensure the Server type is Microsoft Active Directory.
7. In the Query Elements pane. keep the default values:
8. In the Secure Connection pane:
a. Select Enable.
b. In Protocol, select LDAP.
c. Ensure that Trusted CA is Single.
d. In CA certificate, select a CA certificate to verify the server certificate.
9. Click Save.
1. Go to Fortinet SSO > Methods > Syslog and select the Matching Rules tab.
2. Select Create New.
The Create New Syslog Matching Rule window opens.
3. In Name, enter a name for the matching rule.
4. Ensure that the Mode is Key-value pairs.
5. In the Fields to Extract pane:
a. In Logon, enter connect.
b. In Username field, enter User-Name: {{:username}}.
c. In Client IPv4 field, enter Client-IP:{{:client_ip}} .
6. Click Save.
1. Go to Fortinet SSO > Methods > Syslog and select the Syslog Sources tab.
2. Select Create New to create a new Syslog source.
The Create New Syslog Source window opens.
3. In Name, enter a name for the Syslog source.
4. In IP address, enter the IP address of the Samba 4 DC. See Configuring Samba 4 domain controller on page 388.
5. In the Matching rule dropdown, select the matching rule created in Creating a matching rule on page 390.
6. In SSO user type, select Remote users.
a. From the dropdown, select the remote LDAP server created in Adding Samba 4 server as an LDAP server on
page 389.
7. Ensure that Strip off prefix or suffix from username if any is enabled.
8. Click Save.
5. Click OK.
Alternatively, use the following CLI commands to configure the FSSO agent on FortiAuthenticator:
config user fsso
edit "FortiAuthenticator"
set server <FortiAuthenticator_IP>"
set password <Your_Password>"
next
end
Copyright© 2025 Fortinet, Inc. All rights reserved. Fortinet®, FortiGate®, FortiCare® and FortiGuard®, and certain other marks are registered trademarks of Fortinet, Inc., and other Fortinet names herein
may also be registered and/or common law trademarks of Fortinet. All other product or company names may be trademarks of their respective owners. Performance and other metrics contained herein were
attained in internal lab tests under ideal conditions, and actual performance and other results may vary. Network variables, different network environments and other conditions may affect performance
results. Nothing herein represents any binding commitment by Fortinet, and Fortinet disclaims all warranties, whether express or implied, except to the extent Fortinet enters a binding written contract,
signed by Fortinet’s Chief Legal Officer, with a purchaser that expressly warrants that the identified product will perform according to certain expressly-identified performance metrics and, in such event, only
the specific performance metrics expressly identified in such binding written contract shall be binding on Fortinet. For absolute clarity, any such warranty will be limited to performance in the same ideal
conditions as in Fortinet’s internal lab tests. Fortinet disclaims in full any covenants, representations, and guarantees pursuant hereto, whether express or implied. Fortinet reserves the right to change,
modify, transfer, or otherwise revise this publication without notice, and the most current version of the publication shall be applicable.