Вы находитесь на странице: 1из 428

DO NOT REPRINT

© FORTINET

Secure Access Study Guide


for FortiGate 6.0
DO NOT REPRINT
© FORTINET
Fortinet Training
http://www.fortinet.com/training

Fortinet Document Library
http://docs.fortinet.com

Fortinet Knowledge Base
http://kb.fortinet.com

Fortinet Forums
https://forum.fortinet.com

Fortinet Support
https://support.fortinet.com 

FortiGuard Labs
http://www.fortiguard.com

Fortinet Network Security Expert Program (NSE)


https://www.fortinet.com/support-and-training/training/network-security-expert-program.html

Feedback
Email: courseware@fortinet.com

8/21/2018
DO NOT REPRINT
© FORTINET

TABLE OF CONTENTS

01 RADIUS and LDAP 4


02 Certificate-Based Authentication 51
03 Single Sign-On 88
04 Dialup IPsec 144
05 FortiSwitch 188
06 802.1X Port Authentication 235
07 Securing Layer 2 258
08 Wireless 301
09 Guest Access 339
10 Security Assertion Markup Language (SAML) 368
Solutions Slides 401
 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

In this lesson, you will learn how to configure and troubleshoot RADIUS and LDAP authentication on
FortiGate. You will also review some FortiAuthenticator basics.

Secure Access 6.0 Study Guide 4


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

After completing this lesson, you should be able to achieve the objectives shown on this slide.

Secure Access 6.0 Study Guide 5


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

In this section, you will learn about Lightweight Directory Access Protocol (LDAP).

Secure Access 6.0 Study Guide 6


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Let’s start with a quick review about the LDAP protocol.

The hierarchy of an LDAP schema does not need to resemble the organizational hierarchy. However, the
naming conventions and group structure usually match the company name and organizational hierarchy very
closely.

At the top of the LDAP schema is the root, or DC. This is where an LDAP tree always starts, in any schema.

Next, the groups (or branches) are defined using C, OU, and/or O. The exact behavior and options used
depend on the schema and what exactly is being defined. Branches may contain objects, and each object
contains attributes. Objects are uniquely identified by their distinguish names (DNs). The full DN specifies
where the object is, and the name and value of an attribute that can be used to find it.

Secure Access 6.0 Study Guide 7


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

There are three different methods, or bind types, a FortiGate can use to access an LDAP server: simple,
anonymous and regular. During lesson, you will learn about simple and regular binds.

A simple bind works as long as all accounts are in the same branch of the LDAP tree. The Distinguished
Name defines the scope of the LDAP lookup. For example, if your distinguished name is set to ou=it,
c=france, dc=example, dc=com only the users under IT → France will be able to authenticate. However,
you will not be able to authenticate the users under any of the other containers.

Secure Access 6.0 Study Guide 8


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

When simple bind flow is used, FortiGate sends a bind request for the user who wants to authenticate with the
LDAP server. If the authentication is successful, the server responds to FortiGate with a bind response
success message.

Secure Access 6.0 Study Guide 9


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

This slide shows a summary of how to properly configure regular bind for Windows AD. A different type of
LDAP server might require a different approach.

First, the common name identifier is usually either cn or sAMAccountName. If you set it to cn, users must
authenticate using their full names (for example, John Smith). If you set it to sAMAccountName, users must
authenticate using their login names (for example, jsmith).

You can get the distinguished name by querying the users DNs with the Windows AD command dsquery.

You can get the user DN by querying the admin DN with the same Windows AD command dsquery.

Finally, the password setting is the LDAP administrator’s password.

Secure Access 6.0 Study Guide 10


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Regular bind is the most complex, versatile, and commonly used method. LDAP authentication using regular
bind is made up of four steps::

First, FortiGate logs to (bind to) the LDAP server using an LDAP administrator account.

At this point, FortiGate knows only the username, but it doesn't know the branch where the user is located.
During the second step, FortiGate does a search query in the LDAP database to locate the user. In other
words, to find the user’s DN.

If the user is found, the server replies with the user’s DN.

Then, FortiGate logs out of (unbind from) from the LDAP server.

The third step is another bind, but this time using the user credentials. FortiGate sends the DN learned in the
previous step, together with the password.

The last step is to get the user attribute and group information. How this works depends on the type of LDAP
server, but it is usually an LDAP query.

When isolating an LDAP problem, you must first identify which of these four steps is failing.

Secure Access 6.0 Study Guide 11


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Most LDAP authentication problems are caused by misconfigurations, which usually happen in one of the
following LDAP settings:

• Common name identifier


• Distinguished name
• User DN
• Password

Authentication problems most commonly occur on LDAP servers based on Windows AD. In this lesson, you
will verify if the regular-bind LDAP configuration on such a server is correct.

Secure Access 6.0 Study Guide 12


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

How do you check if the distinguished name is correct? You can run either of the following two commands at
the Windows AD server’s command prompt:

dsquery user –name <full_user_name>


dsquery user –samid <login_username>

The output displays the user DN. The distinguished name setting specifies a parent branch under which all
users are located. FortiGate searches users in any sub-branch below this parent branch. For example, in the
case shown on this slide, you can set the distinguished name setting to:

dc=example,dc=com

Secure Access 6.0 Study Guide 13


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

The user DN (or bind DN) setting is the full DN of the LDAP admin account. We can use the same Windows
LDAP server command (dsquery) to find that information.

You can copy and paste the full DN output from the server command prompt to the FortiGate configuration.

Secure Access 6.0 Study Guide 14


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

You can view the LDAP attributes in the Attribute Editor under each object’s properties. Here you can get
the value of all available LDAP attributes.

Note: You must enable Advanced Features in the AD to have access to the Attribute Editor.

Secure Access 6.0 Study Guide 15


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

The CLI includes an LDAP authentication test command. It is 'diagnose test authserver ldap'. If the
credentials are correct, and if the LDAP configuration is correct, the LDAP server returns an authentication
confirmation and a list of the user groups for that user.

You can run this test command as soon as you have completed the LDAP server configuration, even before
any user group or authentication firewall policy has been added to FortiGate. It tests only the LDAP server
configuration and the LDAP communication between FortiGate and the server.

Secure Access 6.0 Study Guide 16


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

The Fortinet non-blocking authentication module daemon (fnbamd) is the process that handles LDAP and
RADIUS authentication. This command enables the real-time debug for the fnbamd daemon.

In the example shown on this slide, the handle_req-Rcvd auth message indicates that the FortiGate
received a request for authentication for user jsmith on Training-Lab LDAP server. Below the initial message
you will find more information such as attribute that will be use to search the user in the LDAP tree, base DN
and server name/IP.

Secure Access 6.0 Study Guide 17


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Continuing with the output the next step for FortiOS is to perform a Admin Bind since we are using regular
bind flow for this example. This is a first step of the regular bind flow that starts with Admin Binding
heading. You can see that FortiOS is requesting authentication for administrator user and message ID 1
that indicates this is first step of the regular bind process.

Change state to 'DN search‘ message indicates that first step was successful and FortiOS is initiating
second step of the regular bind flow.

Secure Access 6.0 Study Guide 18


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Continuing with the fnbamd output, this section indicates that the FortiGate is performing the second step
mentioned earlier: searching for the user in the LDAP tree. The message includes the “base” branch
(distinguished name setting) and the name of the attribute used to locate the user (common name identifier
setting).

If user is located on the LDAP server, in the DN seach resp section LDAP server responds back with the
user DN.

Secure Access 6.0 Study Guide 19


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Change state to 'User Binding' indicates third step in the regular bind. In this step, FortiGate
requests authentication for user John Smith and User Bind resp indicates the reply from LDAP server. If
user authentication is successful, the process moves on to the last step of the process.

Secure Access 6.0 Study Guide 20


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

The last step in the regular bind process is attribute and group query. This is example, FortiGate queries
memberof attribute from the ldap server and ldap server replies with the information.

Secure Access 6.0 Study Guide 21


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Next is Primary group query of the authenticating user. The server responds with the primary group of
the user which FortiGate binds it to the user. This concludes all the steps in ldpa regular bind process.
SUCCESS indicates that authentication was successful and FortiGate now have all the required information
for the authenticated user.

Secure Access 6.0 Study Guide 22


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

If there is any problem with either step 1 (admin bind) or step 3 (user bind), you can sniffer the traffic between
FortiGate and the LDAP server to get the error code. Error codes are very explicit about the reason why the
bind is failing.

Secure Access 6.0 Study Guide 23


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Here are few industry standard LDAP result codes. During LDAP authentication, LDAP server returns a result
code for both successful and unsuccessful authentication. that can indicate why a authentication was
unsuccessful. For unsuccessful authentication requests, this error code can be used to understand why an
authentication failed. You can view RFC 4511 to get the full list of all LDAP result codes.

Secure Access 6.0 Study Guide 24


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

If there is any problem with either step 1 (admin bind) or step 3 (user bind), you can sniffer the traffic between
FortiGate and the LDAP server to get the error code. Error codes are very explicit about the reason why the
bind is failing.

Secure Access 6.0 Study Guide 25


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Real time debug for LDAP will display error 49 for invalid credentials.

Secure Access 6.0 Study Guide 26


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

The message No more DN left indicates a problem in step 2. The LDAP server couldn't find the user in
the LDAP tree.

Secure Access 6.0 Study Guide 27


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Error 49 in step 3 indicates invalid user credentials or user account is disabled on the AD.

Secure Access 6.0 Study Guide 28


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Finally, the following error indicates a problem in step 4::

get_member_of_groups-attr=<attribute_name> found 0 values

The user credentials are correct, but no user group information was found.

In some LDAP implementations, the user group information is not used. All LDAP users have the same
privileges regardless of their AD group memberships. In those implementations, you can ignore this error.

Secure Access 6.0 Study Guide 29


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

What should you do if the problem is in step 1 (admin bind not working)?

• Use the dsquery query to check the admin DN


• Check the admin password
• Sniffer the error code coming from the server

What should you do if the problem is in step 2 (LDAP server could not find the user):

• If the common name identifier is set to sAMAccountName, the user must use the login name. If it is set to
cn instead, the user must use the full name.
• Check the Distinguished Name setting with the dsquery command

Secure Access 6.0 Study Guide 30


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

In this section, you will learn about Remote Authentication Dial-In User Service (RADIUS).

Secure Access 6.0 Study Guide 31


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Remote Authentication Dial-in User Service (RADIUS) is a broadly supported client-server protocol that
provides centralized authentication, authorization, and accounting functions. RADIUS servers use UDP
packets to communicate with the RADIUS clients on the network to authenticate users before allowing them
access to the network, to authorize access to resources by appropriate users, and to account for those
resources that are used. You must configure the RADIUS server to accept FortiGate as a client. FortiGate
uses the authentication and accounting functions of the RADIUS server. FortiGate supports the following
RADIUS schemes: chap, pop, mschap and mschap2.

Secure Access 6.0 Study Guide 32


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Password Authentication Protocol (PAP) and Challenge Handshake Authentication Protocol (CHAP) are two
common authentication schemes that are used with RADIUS.

PAP is weak authentication scheme as it transmits the password.

CHAP is a stronger authentication scheme as it never sends the password. It uses hashing to perform the
authentication.

After the link is established between the client and server:

• Server sends a challenge message to the client, which includes a challenge value.
• Client responds back with a one-way hash of the password and the challenge value combined (note that
the password itself is never actually sent).
• Server also calculates the one-way hash using the stored user password and the challenge value
combined.
• Server compares the calculated hash with the hash received from the client.

Secure Access 6.0 Study Guide 33


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

RADIUS attributes can be used to provide information about a user or a user group. RADIUS attributes
configured at a user level can provide user-related information such as IP addresses. Attributes configured at
the user group level are used to provide information that will be applied to the all users within the specified
group.

Vendor-specific attributes (VSA) are used by vendors to extend the basic functionality of RADIUS. Each
vendor uses a unique VSA ID to transmits additional information based on authentication success or failure.
VSA dictionaries are required to understand proprietary VSA attributes that are supplied by the RADIUS
vendors.

Secure Access 6.0 Study Guide 34


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Normal authentication queries with the RADIUS protocol begin with an "Access-Request" being sent from the
FortiGate to the RADIUS server. Valid responses to this are "Access-Accept" and "Access-Reject" (yes and
no, respectively).

If two-factor authentication is enabled on the server, the server will return an "Access-Challenge" message, to
indicate it is looking for more information.

Secure Access 6.0 Study Guide 35


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

When configuring the RADIUS server on FortiGate, you must provide the following information: Name,
Primary Server IP/Name, Primary Server Secret and Authentication Method. When Authentication
Method is set to Default, FortiGate will try the different authentication schemes, starting with PAP, MS-
CHAP-V2, and CHAP. You can also specify a NAS IP if you want to send the authentication request with the
NAS-IP-Address or Called Station ID attribute attached to the RADIUS access request.

Note: MSCHAP is never used when the authentication method is set to Default. You must specify MSCHAP
manually if you want to use only MSCHAP as the authentication method scheme.

Secure Access 6.0 Study Guide 36


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Similar to LDAP, there is a CLI test command for RADIUS.

When you used the CLI test command for RADIUS, you must provide not only the credentials for a test user,
but also the authentication scheme.

Also, as in the case of LDAP, this command tests only the FortiGate RADIUS server configuration. It does not
require the FortiGate configuration to contain a user group or firewall policy.

Secure Access 6.0 Study Guide 37


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

RADIUS is either a one-step or two-step process (depending on the use of two-factor authentication). It is not
as long as the four-step process that happens with LDAP regular bind. So, the output of the real-time debug is
usually shorter. The output of the real-time command shows:

• The RADIUS server name, as defined on FortiGate


• The username requesting authentication
• The RADIUS scheme used
• Any RADIUS attribute sent by RADIUS server
• The authentication results as 0 for successful and 1 for failed

Secure Access 6.0 Study Guide 38


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Here is the full list of RADIUS response code that you can receive from the RADIUS server. These codes can
help you find the root cause of authentication issues.

Secure Access 6.0 Study Guide 39


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

In this section, you will learn about FortiAuthenticator basics.

Secure Access 6.0 Study Guide 40


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

FortiAuthenticator is a user authentication and identity management device. It provides standards-based


secure authentication to network devices. FortiAuthenticator provides RADIUS, LDAP, and 802.1X wireless
authentication, certificate management, and Fortinet single sign-on (FSSO). FortiAuthenticator is compatible
with FortiToken to provide two-factor authentication when using multiple FortiGates and third-party devices.
Together, FortiAuthenticator and FortiToken deliver cost-effective, scalable, secure authentication to your
entire network infrastructure.

Secure Access 6.0 Study Guide 41


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

FortiAuthenticator is a key component in the Fortinet secure access solution. FortiAuthenticator provides
authentication, which is used by FortiGate and/or controllers to assign appropriate access to clients. Based on
the configuration and roles defined on FortiGate, authentication rules can be enforced both wireless or wired
clients.

Secure Access 6.0 Study Guide 42


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

This list shown on the slide contains some of the key differences between FortiGate and FortiAuthenticator in
terms of RADIUS, two-factor authentication, FSSO, Active Directory, Wi-Fi authentication, and guest
management.

Secure Access 6.0 Study Guide 43


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Now you will explore another benefit of adding FortiAuthenticator to your secure access solution.

If FortiGate is configured to authenticate clients using a remote LDAP server, VPN and wireless clients using
CHAP schemas will not be able to authenticate. That is the case for wireless clients using PEAP/MSCHAP2
and IPsec VPN clients with extended authentication (XAuth) and CHAP.

The reason is that during CHAP authentication, a client sends a one-way hash of the password. However, the
LDAP server, which is on the back end, is expecting the password itself. The FortiGate, which is acting as the
LDAP client, does not have the client passwords, neither it can convert a hashed password to a clear-text
password.

Secure Access 6.0 Study Guide 44


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

Some of the solutions to the CHAP and LDAP problem are:

• Use PAP: you must configure FortiGate to use PAP instead of CHAP when authenticating clients. This
approach is unsecure due to the nature of the PAP protocol.
• Use RADIUS: change your backend server from LDAP to RADIUS.

If you are using Windows AD as your LDAP server, an alternative is to use FortiAuthenticator as an
authentication proxy. The FortiAuthenticator would be located between FortiGate and the Windows server.
You will also need to configure FortiAuthenticator to log in to the Windows domain using the credentials of a
Windows administrator. This will add FortiAuthenticator as a trusted device on the Windows AD domain,
allowing FortiAuthenticator to proxy the password hash from the client to the Windows server using Kerberos.

Secure Access 6.0 Study Guide 45


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

A FortiAuthenticator can store the user database locally. It can also proxy authentication requests from a
client to a back-end authenticator server.

This is how to configure FortiAuthenticator to proxy authentication requests to a remote LDAP server, which
can be a Windows AD server.

You must configure the following settings: Name, Primary server name/IP, Base distinguished name, Bind
type and administrator username and password for regular bind type. Note that the Base distinguished
name will set the root node where LDAP will start searching for user accounts.

There are predefined LDAP templates. They include default attribute settings for well-known LDAP servers,
such as Windows AD, OpenLDAP and Novell eDirectory.

As explained in the previous slides, if you want FortiAuthenticator to relay CHAP authentication to a Windows
AD server, you must enable Windows Active Directory Domain Authentication, and enter the credentials
for a Windows administrator. The FortiAuthenticator will log into the domain as a trusted device, allowing
FortiAuthenticator to proxy CHAP authentications using Kerberos.

Secure Access 6.0 Study Guide 46


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

This is a sample of the configuration required for FortiAuthenticator to proxy authentication requests to a
remote RADIUS server.

Secure Access 6.0 Study Guide 47


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

FortiAuthenticator will accept RADIUS authentication requests only from approved RADIUS clients. After you
have remote authentication servers or a local user database configured, you will need to allow FortiGate to
make authentication requests to FortiAuthenticator. This is done under RADIUS clients on the
FortiAuthenticator.

This is where you would define what type of authentication requests will be processed, and options that
FortiAuthenticator would apply to the RADIUS client.

Secure Access 6.0 Study Guide 48


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

FortiAuthenticator does not have real-time debug commands, as in the case of FortiGate. Instead, you can
access extended logs for individual services. You can access the debug log page using the URL at
https://<FortiAuthenticator_IP>/debug. These logs can be used to troubleshoot issues with
services running on FortiAuthenticator.

In the case of the debug logs for RADIUS authentication, there is the option of enabling the debug mode,
which allows administrators to test RADIUS authentication using the credentials of a test user from the debug
logs window.

Secure Access 6.0 Study Guide 49


 RADIUS and LDAP

DO NOT REPRINT
© FORTINET

This slides shows the objectives that you covered in this lesson.

Secure Access 6.0 Study Guide 50


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

In this lesson, you will learn how to configure and troubleshoot certificate-based authentication.

Secure Access 6.0 Study Guide 51


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

After completing this lesson, you should be able to achieve the objectives shown on this slide.

Secure Access 6.0 Study Guide 52


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

In this section, you will review the basics of digital certificates.

Secure Access 6.0 Study Guide 53


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

Now, you will review some terminology. There are two general types of encryption: symmetric and
asymmetric.

Symmetric encryption uses a single key for encrypting and decrypting. This key is shared by the parties that
are interchanging encrypted information.

Asymmetric encryption uses a pair of keys. Both keys are mathematically related. One key is used for
encrypting the information. The other key is used for decrypting the information.

Hashes, on the other hand, are not encrypted information as they cannot be decrypted. A hash algorithm
generates an irreversible output from any input.

Secure Access 6.0 Study Guide 54


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

Asymmetric cryptography, also known as public key cryptography, consists of a pair of keys that are
mathematically interrelated and perform inverse functions. Whatever is encrypted with one key, can be
decrypted only with the other key. One key is made public (it can be distributed to others) and the other key is
private. In the example shown in the slide, the sender knows the recipient’s public key. So, the sender uses
the recipient’s public key to encrypt the information that is intended for the recipient only. Because the
information was encrypted using the recipient’s public key, it can be decrypted using only the recipient’s
private key, which only the recipient has. In this way, the sender ensures that only the intended recipient will
be able to decrypt the information.

Secure Access 6.0 Study Guide 55


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

What is a digital certificate? It is a digital document that identifies an entity (such as a person or device). It
usually contains the entity’s public key.

Other important information contained in a certificate is:

• Serial number: A unique number for the issuing CA that identifies the certificate.
• Signature algorithm: Identifies the hashing and asymmetric algorithms used to produce the digital
signature that secures this certificate.
• Issuer and Subject: Identify the CA that produced the certificate and the entity to whom the certificate is
issued. The values are typically expressed using the X.500 or LDAP formats.
• Valid from and Valid to: Just like a passport or driver’s license, a certificate has a validity period–explicit
dates on which it is valid. The certificate is invalid on the dates that occur before and after the validity
period.
• CRL Distribution Points: Identifies to the application where it should retrieve the revocation list from.

Secure Access 6.0 Study Guide 56


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

Certificate authorities (CAs) issue and sign digital certificates for end entities. When a CA issues and signs a
digital certificate, the CA is essentially proclaiming, “This is the entity who I say it is and I certify it”. The CA
signature in the digital certificate is encrypted using the CA’s private key.

PKI uses a relationship trust model, and the CA is at the root of the hierarchy as the trusted third party:
everything begins with the CA. A CA issues its own digital certificate—known as the root certificate—in order
to establish this point of ultimate trust. Once the root certificate is established, the CA can generate digital
certificates that are issued and signed by the root.

Accordingly, if users trust the CA and can verify the CA’s signature as authentic, then they must trust that the
public key does belong to the entity identified in the digital certificate.

Secure Access 6.0 Study Guide 57


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

A CA can generate many different types of certificates, each with different functions (and sometimes,
confusingly, with different names). A few common certificate types include:

CA certificates (also called root, or authority, certificates): These certificates identify the CA and create the
root of a CA hierarchy. As such, the certificate details have the same input for both the Issuer and Subject
fields. These certificates are self-signed and contain the CA’s public key needed to decrypt signatures in the
signed certificates.

Web server certificates (also called local service certificates): These certificates identify services and are
used to secure communication to and from servers, such as an SSH server, HTTPS web sites, or EAP
802.1X authentication servers. The certificate details have the DNS name (or IP address) of the server in the
Subject field. The public key of the server is included.

User certificates (also called client certificates): These certificates identify one person to another, a person to
a device or gateway, or one device to another device. The certificate includes the public key associated with
the identity.

Both user and server certificates belong to the category of end-entity certificates.

Secure Access 6.0 Study Guide 58


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

In the example shown in the slide, a user with a web browser is connecting to an HTTPS web site. The
website sends its certificate, which contains its public key and is signed by a CA named CA1. The CA1
signature is encrypted with the CA1’s private key. The browser must have the CA1’s public key to decrypt and
validate the signature in the digital certificate. The CA1’s public key is installed in the browser by importing the
CA’s digital certificate, which contains its public key.

Most browsers already have preinstalled the CA certificates of the most well-known public CAs. However, if
the server’s certificate is signed by a private CA. The public CA’s certificate must be installed in the browser.
In this way, the browser trusts the private CA and can decrypt the digital certificates that the CA has signed.

Secure Access 6.0 Study Guide 59


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

In a similar way, digital certificates can be used to authenticate users. It can be combined with user
credentials for two-factor authentication. In this case, when the user is authenticating against an access
server, the user sends the digital certificate, which is signed by a CA. The CA signature is encrypted with the
CA’s private key. The access server must have the CA certificate installed (which contains the CA’s public
key) for decrypting and validating the user’s certificate.

Secure Access 6.0 Study Guide 60


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

Digital certificates are validated through a chain of trust. The simplest chain of trust occurs when the root CA
is directly signing the end-entity certificates. However, a chain of trust can include one or more intermediate
CAs. Both root and intermediate CAs can sign end-entity certificates.

Secure Access 6.0 Study Guide 61


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

In the example shown on this slide, the end-entity's certificate was signed by an intermediate CA. The
intermediate CA's certificate was signed by the root CA.

The process of validating the end-entity's certificate goes from bottom to top on the chain of trust. The public
key of the intermediate certificate (included in the intermediate CA's certificate) is used to validate the
signature in the end-entity's certificate. Additionally, the root public key (included in the root certificate) is used
to validate the signature in the intermediate CA's certificate. For this reason, the validation of the end-entity's
certificate requires the certificates of both the root CA and the intermediate CA.

Secure Access 6.0 Study Guide 62


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

For each step in the chain of trust, the following checks are run to validate a certificate:

• Valid period (start and expiration dates)


• Conformity with the X.509 standard
• Information in the fields are proper and complete
• Certificate intended use
• The issuing CA is trusted (following the chain of trust)
• Digital thumbprint and signature integrity
• Revocation status

Secure Access 6.0 Study Guide 63


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

In this section, you will review the Simple Certificate Enrollment Protocol (SCEP).

Secure Access 6.0 Study Guide 64


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

The process of obtaining a digital certificate begins with the creation of a certificate signing request (CSR).
The process is as follows:

1. The requester generates a CSR. A private and public key pair is created. The CSR is signed by the
requester's private key.
2. The requester submits the CSR to a CA. The CSR includes the requester's public key and specific
information about the requester (IP address, distinguished name, email address, and so on). Note that the
private key remains confidential.
3. The CA verifies that the information in the CSR is valid, and then creates a digital certificate for the
requester. The certificate is digitally signed using the CA’s private key.
4. The certificate is returned to the requester.

Secure Access 6.0 Study Guide 65


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

SCEP is probably the most widely used protocol for certificate management. It allows a requester to query a
registration authority (RA) to get CA certificates, revocation lists, and submit CSRs.

The RA forwards the query to the CA to get the information for the requester.

Secure Access 6.0 Study Guide 66


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

SCEP is based on HTTP. It uses the regular HTTP GET method to sends queries to the RA. Data although is
encrypted and signed using the standard PKCS#7.

CSRs sent by requesters follow the PKCS#10 format. When the RA receives a CSR, it replies with one of the
following three answers: reject, pending, and success. When the CSR is received successfully (and if it has
already been preapproved by an administrators) the RA issues, signs, and send the requester's certificate
back to the requester.

SCEP has some disadvantages though. It supports a very limited number of CRL queries, does not support
online certificate revocation check, and does not support strong authentication.

Secure Access 6.0 Study Guide 67


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

In this section, you will learn how to create PKI users FortiGate.

Secure Access 6.0 Study Guide 68


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

You must use the CLI to create the first PKI user. After your create the first PKI user, and as long as there is
at least one PKI user, the menu option to create and administrate more PKI users will appear on the GUI.

This slide shows the CLI commands for creating a PKI user. One of the most important settings (ca) defines
the digital certificate of the CA that signed the end-entity's certificate for this PKI user. This CA certificate must
have been installed previously on FortiGate.

You can combine certificate-based authentication with user credentials to offer two-factor authentication. After
you enable two-factor authentication for a PKI user, you must add the PKI user's password.

Secure Access 6.0 Study Guide 69


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

On some occasions, the user certificate might include the user principal name (UPN), which is an user
attribute in Windows AD you can use to identify the user. You can configure FortiGate to use LDAP to validate
this field against a Windows AD server. The authentication will fail if is there is no valid user with a UPN that
matches the UPN in the user's certificate.

Secure Access 6.0 Study Guide 70


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

To configure FortiGate to check the UPN in a user certificate, you must change the ldap-mode setting to
principal-name. Additionally, you must enter the name of the LDAP server previously configured on
FortiGate, that will be used to validate the UPN.

Secure Access 6.0 Study Guide 71


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

When you configure UPN validation for a PKI user, and the UPN belongs to a valid user, FortiGate will query
the LDAP for the user groups. You can use that information to authorize access only to users that belong to
specific groups.

Secure Access 6.0 Study Guide 72


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

In this section, you will review certificate revocation lists (CRLs) and learn how to use OCSP for certificate
revocation checks.

Secure Access 6.0 Study Guide 73


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

A certificate revocation list (CRL) contains the serial numbers of certificates that have been revoked. There is
usually one CRL per root CA.

Administrators can manually download a CRL from a CA and import it on FortiGate. Each time a user is
presenting a certificate, FortiGate will check that the serial number of the certificate is not in the CRL of the
CA that signed the certificate.

Secure Access 6.0 Study Guide 74


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

The online certificate status protocol (OCSP) offers an online service that provides the revocation status of a
digital certificate. Using this protocol, administrators do not need to manually import the CRL into FortiGate.
Each time a user presents a certificate, FortiGate uses OCSP to send the certificate's serial number to an
OCSP server. The OCSP server replies with one of three possible answers:

• Good: Certificate has not been revoked.


• Revoked: Certificate has been revoked.
• Unknown: The certificate was issued by another CA.

Secure Access 6.0 Study Guide 75


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

You can configure FortiGate with a list of OCSP servers that can be used to validate the revocation status of
users' certificates. For each OCSP server, you configure its URL and the CA certificate (cert) of the CA that
signed the OCSP certificate (this is used for authenticating the OCSP sever). Optionally, you can configure a
secondary (backup) OCSP server, for cases where there is no reply from the primary server.

If the unavail-action setting is set to revoke, the certificate will be rejected if the OCSP server replies
that it is unknown.

If the unavail-action setting is set to ignore, the certificate will be accepted even for cases when the
OCSP server replies that it is unknown.

Secure Access 6.0 Study Guide 76


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

Under config vpn certificate settings, you select which OCSP server (from the previous list) will
be the default server used for checking revocation status. You can override that setting per user using the
ocsp-override-server setting under config user peer.

If strict-ocsp-check is enabled, the certificate will be rejected if there is no reply from the OCSP server
(or from the secondary OCSP server, if there is one).

If you are using a CRL list instead of OCSP, the strict-crl-check setting defines what action to take
when the CRL has expired.

Secure Access 6.0 Study Guide 77


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

In some cases, the users' certificates contain the URL of an OCSP server that can be used to check the
revocation status. The FortiGate can be configured to either use this information (if available in the certificate),
or to ignore it (and keep using the OCSP server configured in the FortiGate configuration).

Secure Access 6.0 Study Guide 78


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

In this section, you will learn how to troubleshoot certificate-based authentication problems.

Secure Access 6.0 Study Guide 79


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

The Fortinet non-blocking authentication daemon (fnbamd) is the process that validates users' certificates.
The output of its real-time debug shows, step-by-step, what the non-blocking authentication daemon does
when a user's certificate is received and must be validated.

In the output shown on this slide, the FortiGate checks the chain of trust first until it finds that the certificate is
signed by a trusted CA. Then, FortiGate finds the user group that the PKI user belongs to and checks the
certificate subject.

Secure Access 6.0 Study Guide 80


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

In the example shown on this slide, FortiGate is configured to validate the certificate revocation status using
OCSP. The output of the real-time debug shows the OCSP URL and a log entry indicating that the OCSP
request has been sent.

Then, the output shows the response from the OCSP server, which in this case indicates that the certificate is
good. It has not been revoked yet.

Secure Access 6.0 Study Guide 81


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

If there is any problem during the validation of a user's certificate, the output of the non-blocking
authentication real-time debug will display an error explaining why the certificate validation failed. The
possible reasons are listed on this slide. Some of them are:

• Subject does not match the subject in the PKI user configuration
• Certificate is not valid yet or has expired
• CRL has expired
• Certificate has been revoked
• and so on

Secure Access 6.0 Study Guide 82


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

In this section, you will review how FortiAuthenticator can act as a certificate authority (CA).

Secure Access 6.0 Study Guide 83


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

FortiAuthenticator can act as a self-signed or local CA for issuing and revoking digital certificates.

As a CA, the administrator can also import other authorities' CA certificates and certificate revocation lists.

FortiAuthenticator can also act as an OCSP server (for certificate revocation checks) and SCEP RA (for
receiving CSRs and issuing certificates).

Secure Access 6.0 Study Guide 84


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

Once you have created a CA certificate, FortiAuthenticator can start issuing users' certificates. In each user
certificate you can define the subject field, expiration date, UPN, URL where the CRL can be downloaded,
and OCSP's URL.

Secure Access 6.0 Study Guide 85


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

FortiAuthenticator supports SCEP. When acting as a SCEP server, FortiAuthenticator can receive CSRs
coming from any device in your network. There are two types of SCEP enrollments:

• Automatic: Administrators preapprove the CSR before it arrives. Once it arrives, FortiAuthenticator replies
with the signed certificate.
• Manual: The requesters submit the CSRs first. The CSRs remain on FortiAuthenticator as pending until
the administrator approves them.

Secure Access 6.0 Study Guide 86


 Certificate-Based Authentication

DO NOT REPRINT
© FORTINET

This slide shows the objectives that you covered in this lesson.

Secure Access 6.0 Study Guide 87


 Single Sign-On

DO NOT REPRINT
© FORTINET

In this lesson, we will show you different ways of collecting logon events and converting them to FSSO
events. There are two types of Collector Agents: Software CA and on FortiAuthenticator. You will also learn
how to troubleshoot FSSO issues on Windows AD environment, using software CA and FortiAuthenticator
configured CA.

Secure Access 6.0 Study Guide 88


 Single Sign-On

DO NOT REPRINT
© FORTINET

After completing this lesson, you should be able to achieve the objectives shown on this slide.

Secure Access 6.0 Study Guide 89


 Single Sign-On

DO NOT REPRINT
© FORTINET

In this section, you will learn about FSSO collection methods.

Secure Access 6.0 Study Guide 90


 Single Sign-On

DO NOT REPRINT
© FORTINET

This slide shows the methods you can use to collect sign-on information from, and converted to, FSSO. You
can divide sign-on methods into two groups: AD and Windows, and generic sources. Sign-on information is
sent to FortiAuthenticator, which maintains a record of all the sign-on learned from different methods and
forwards them to FortiGate as FSSO. FortiGate can then use this information to provide accessibility to
resources based on FSSO information.

Secure Access 6.0 Study Guide 91


 Single Sign-On

DO NOT REPRINT
© FORTINET

FortiAuthenticator and the software CA are able to poll Windows domain controllers to monitor the security
event logs for login events. Polling of the Security Event log is configured to occur every five seconds so that
any login event that has occurred since the previous poll is captured and entered into FSSO. The CA can be
configured to use WMI logs to extract login and logout information.

Event log polling may run a bit slower, but will not miss events. Event log polling is required if there are Mac
OS users logging into Windows AD.

WMI is a Windows API designed to get system information from a Windows server. CA is a WMI client and
sends WMI queries for user logon events to DC, which in this case is a WMI server. The main advantage of
this mode is the CA does not need to search security event logs on the DC for user logon events. Instead, the
DC returns all requested logon events through WMI.

NetAPI polling is used to retrieve server logon sessions. This includes the logon event information for the
controller agent. NetAPI runs faster than Event log polling, but it may miss some user logon events under
heavy system load. It requires a query round-trip time of less than 10 seconds. This method is available only
on the software-based CA.

Note that while login events can be detected from the Security Event logs, logout events cannot. This is
because logout events can be triggered by many different processes, not just the logout process.

While some methods natively support logout detection (like the FortiClient SSO Mobility Agent), others, such
as AD polling, do not. To enable logout detection, FortiAuthenticator supports Windows Management
Instrumentation (WMI) polling to identify the current logged-in user state for a device and then log the user
out. A manual timeout period can also be set to remove the user from the authorization table.

Secure Access 6.0 Study Guide 92


 Single Sign-On

DO NOT REPRINT
© FORTINET

You can enable the Windows AD polling method on FortiAuthenticator under Fortinet SSO Methods > SSO
> General. FortiAuthenticator uses LDAP lookup to collect user group membership, and DNS lookup to get
the user’s hostname from the IP. DNS plays a big role in ensuring the overall reliability of FSSO events. If
DNS resolution is slow or not working properly, FSSO event information will not be accurate or even valid.

By default, FortiAuthenticator supports event IDs 4768, 4776, 672, and 680, however, you can enable support
for event IDs 520, 540, and 4624 by enabling Enable polling additional logon events. Note that
FortiAuthenticator will ignore usernames ending with a $ sign.

Secure Access 6.0 Study Guide 93


 Single Sign-On

DO NOT REPRINT
© FORTINET

Once you have enabled AD polling under FSSO methods, you must configure, FSSO source. You can
configure FSSO source and then enable it under FSSO methods or configure FSSO methods and then enable
it under the FSSO source. You must enable NetBIOS name, IP, Account, with admin privileges on AD and
password. There is an option that allows you to configure a secondary server for redundancy, and enable a
secure connection using LDAPS or STARTTLS.

Once the Windows Event Log Source is configured and enabled, you can check the Monitor SSO section on
FortiAuthenticator to verify that FortiAuthenticator can poll login events.

Secure Access 6.0 Study Guide 94


 Single Sign-On

DO NOT REPRINT
© FORTINET

In DC Agent mode, a Fortinet authentication agent is installed on each domain controller. These DC agents
monitor user logon events and pass the information to FortiAuthenticator (which is a collector agent), which
stores the information and sends it to the FortiGate unit.

The DC agent installed on the domain controllers is not a service like the collector agent—it is a DLL file
called dcagent.dll that is installed in the Windows\system32 directory. It must be installed on all domain
controllers of the domains that are being monitored. DC Agent mode provides reliable user logon information,
however, you must install a DC agent on every domain controller. A restart is needed after the agent is
installed. Each installation requires some maintenance as well. For these reasons, it may not be possible to
use DC Agent mode.

The Citrix/Terminal Server (TS) agent is installed on a Citrix terminal server to monitor user logons in real
time. It functions much like the DC Agent on a Windows AD domain controller.

Secure Access 6.0 Study Guide 95


 Single Sign-On

DO NOT REPRINT
© FORTINET

You must enable the DC/TS agent under FSSO methods on FortiAuthenticator to allow communication
between TS/DC agents and FortiAuthenticator. You can also enable optional authentication for added
security. Both the TS/DC agent and FortiAuthenticator must be configured with same password.

Secure Access 6.0 Study Guide 96


 Single Sign-On

DO NOT REPRINT
© FORTINET

The SSOMA is a feature of FortiClient that can also be installed a standalone feature. The SSOMA identifies
the logged in domain user and IP address and communicates this information to FortiAuthenticator.

The FortiClient SSOMA has several benefits over other FSSO detection methods:
• FortiClient sends regular HELLO packets. If FortiAuthenticator detects X number of missing HELLO
packets, the user is deauthenticated.
• If the device IP stack changes, for example, roaming on the wireless network, the update is sent to
FortiAuthenticator.
• If the user logs out, FortiClient notifies FortiAuthenticator during the logout process and de-authenticates
the user

Secure Access 6.0 Study Guide 97


 Single Sign-On

DO NOT REPRINT
© FORTINET

Like other SSO methods, you must enable SSOMA in the FSSO methods settings on FortiAuthenticator. By
default, SSOMA will connect to FortiAuthenticator on port 8001, but that can be changed to another port if
required. You can also enable optional authentication with preshare keys, and configure keepalive and idle
timeout intervals.

Optionally, you can enable NTLM within SSOMA settings that will work in conjunction with FSSO. When
enabled, FortiAuthenticator unit requires NTLM authentication when:
• user logs on to a workstation for the first time,
• user logs off and then logs on again,
• workstation IP address changes,
• workstation user changes,
• NTLM authentication expires (user configurable).

The default is set to disable NTLM.

Secure Access 6.0 Study Guide 98


 Single Sign-On

DO NOT REPRINT
© FORTINET

To avoid the need to poll the domain controller while retaining the ability to transparently authenticate
Windows users, FortiAuthenticator supports use of Kerberos tickets passed by the browser and validated
against the KDC to identify users. In the example shown on this slide, unauthenticated users are redirected
from FortiGate to FortiAuthenticator. FortiAuthenticator requests the service ticket from the browser and then
decrypts and uses the ticket to validate the user identity.

Secure Access 6.0 Study Guide 99


 Single Sign-On

DO NOT REPRINT
© FORTINET

In situations where the device or user identity cannot be established transparently, such as for non-domain
BYOD devices or shared kiosk machines, you can use a web portal to prompt users to log in. Often this
method is used with other transparent methods and used as a catch-all.

Once authenticated, the user User token stored in a cookie to identify the user on subsequent access (valid
for up to 30 days) or until they log out using the browser.

Secure Access 6.0 Study Guide 100


 Single Sign-On

DO NOT REPRINT
© FORTINET

Portal authentication and widgets require self-service portal and portal services configuration on
FortiAuthenticator. You must have a remote authentication server or local user database configured to
validate authentication requests. You must create a realm that will be used to authenticate users through
portal authentication. Optionally, you can select specific user groups that you want to use for portal
authentication. Once a realm is created and configured, you must enable portal services under Fortinet SSO
Methods and select the realms that will be used for SSO.

Secure Access 6.0 Study Guide 101


 Single Sign-On

DO NOT REPRINT
© FORTINET

FortiAuthenticator can also parse username and IP address information from a syslog feed from a third-party
device, and inject this information into FSSO so it can be used in FortiGate firewall policies. You can use the
syslog feed to trigger logon, update, or logout rules on FortiAuthenticator. You can use any syslog server to
send the username, and IP address information to FortiAuthenticator as long as you have configured a
corresponding matching rule.

Secure Access 6.0 Study Guide 102


 Single Sign-On

DO NOT REPRINT
© FORTINET

Syslog objects include sources and matching rules. Sources identify the entities sending the syslog
messages, and matching rules are used to extract the events from the syslog messages. FortiAuthenticator
ignores messages coming from nonconfigured sources.

Secure Access 6.0 Study Guide 103


 Single Sign-On

DO NOT REPRINT
© FORTINET

Once you have specified a syslog source, you must configure a matching rule. There are preconfigured
matching rules for some third-party syslog server formats, but you can create custom matching rules to match
the format of the any syslog server feed.

In the Fields to Extract section, you can specify key words to trigger logon, update, and logoff messages.
FortiAuthenticator will use these fields to extract the username and IP address from the messages to convert
them to FSSO events.

You can easily test custom matching rules by using the Test Rule section to verify that FortiAuthenticator can
extract all the required information from the syslog feed.

Secure Access 6.0 Study Guide 104


 Single Sign-On

DO NOT REPRINT
© FORTINET

The RADIUS accounting method uses RADIUS start, interim, and stop accounting packets to trigger logon
and logoff events to FSSO. Such RADIUS packets are commonly sent by networking devices such as SSL-
VPN devices, wireless controllers, switches, and so on.

The benefit of using this method is that for vendors who support sending such packets, do not require any
direct support from FortiAuthenticator (they use standard RADIUS which is already supported), and require
minimal change to enable the input of user authentication data into the FSSO.

Secure Access 6.0 Study Guide 105


 Single Sign-On

DO NOT REPRINT
© FORTINET

You must enable the RADIUS accounting SSO method in the FSSO methods section. You must also create a
RADIUS accounting source that will be used to learn sign-on information using RADIUS accounting
messages. FortiAuthenticator can look up group membership information for the users’ accounts that are
learned through RADIUS accounting, as long as they reside on the remote authentication server or local
database on the device. If External SSO user type is used, FortiAuthenticator will extract only the information
that is included in the accounting message and will not validate the group membership.

Secure Access 6.0 Study Guide 106


 Single Sign-On

DO NOT REPRINT
© FORTINET

FortiAuthenticator can use SAML assertions to generate FSSO events when you use FortiAuthenticator as a
SAML service provider. In service-provider mode, FortiAuthenticator can use SAML assertions to extract
username, IP address, and other available SAML attributes to generate FSSO events. These events then are
used to allow users to access resources within and outside the network using FortiGates. All the
authentication information will be validated and inserted in the cookie by an IdP, and FortiAuthenticator then
uses the information for FSSO events.

Secure Access 6.0 Study Guide 107


 Single Sign-On

DO NOT REPRINT
© FORTINET

In this section, you will learn about troubleshooting FSSO using FortiAuthenticator.

Secure Access 6.0 Study Guide 108


 Single Sign-On

DO NOT REPRINT
© FORTINET

FortiAuthenticator makes troubleshooting easier because all the tools required to check the status of different
components in FSSO are available in the GUI. Monitor > SSO section, you can view information such as
SSO domains, active SSO sessions, Windows event log sources status, currently active FortiGate
connections, and DC/TS agents connection status.

If you have trouble distinguishing SSO sessions from TS/DC agents, you can view if the TS/DC agents are
connected to FortiAuthenticator. If not, ensure that the correct IP, port, and secret are configured on both
FortiAuthenticator and the DC/TS agents.

Secure Access 6.0 Study Guide 109


 Single Sign-On

DO NOT REPRINT
© FORTINET

FortiAuthenticator displays all the active SSO sessions on the Monitor tab. This tab displays detailed
information about SSO sessions that are currently active on FortiAuthenticator. On this tab, you can view
SSO-related information such as logon time, logout time, username, IP address, workstation name (AD),
domain, group and SSO source. In the example shown on this slide, there are two SSO sources that are
currently in use, Eventlog polling and Syslog feed.

Secure Access 6.0 Study Guide 110


 Single Sign-On

DO NOT REPRINT
© FORTINET

You can also view debug-level logs on FortiAuthenticator by connecting to


https://<FortiAuthenticator_IP>/debug and selecting FSSO service. The debug log page allows
you to view detailed connection logs as well as basic information about configuration mismatches between
FortiAuthenticator and the SSO source. You can also view information that is exchanged between the FSSO
source and FortiAuthenticator that can be useful when troubleshooting FSSO-related issues.

Secure Access 6.0 Study Guide 111


 Single Sign-On

DO NOT REPRINT
© FORTINET

You can also view SSO-related logs that are specific to a single SSO source, such as RADIUS accounting or
the syslog feed. For example, you can view the RADIUS attributes that are sent in the accounting message,
or view the raw syslog feed that FortiAuthenticator is receiving.

Secure Access 6.0 Study Guide 112


 Single Sign-On

DO NOT REPRINT
© FORTINET

If you are having FSSO issues for a specific user, you can start troubleshooting by following these step:
o Ensure FortiAuthenticator can perform DNS lookup of workstation name and IP
o If using FortiGate Filtering, ensure you select all required user/group/containers
o Verify that SSO source is connected
o Verify that connection to FortiGate is stable and active
o Check active SSO sessions
o Ensure user is not excluded from SSO under Fine-grained Controls

When troubleshooting FSSO issues related to the DC Agent mode (Windows AD) environment, the steps are
the same for the software CA agent and FortiAuthenticator. The only difference between the two is that all the
DC agents are pointing to FortiAuthenticator instead of to the software CA agent.

Secure Access 6.0 Study Guide 113


 Single Sign-On

DO NOT REPRINT
© FORTINET

In this section, you will learn about different FSSO collection methods available.

Secure Access 6.0 Study Guide 114


 Single Sign-On

DO NOT REPRINT
© FORTINET

If you are using a software collector agent, you must select the domain controller that you want to monitor for
logon events. By default, the software CA uses the Windows Security Event Logs polling method to learn the
logon events.

Secure Access 6.0 Study Guide 115


 Single Sign-On

DO NOT REPRINT
© FORTINET

Before you start troubleshooting, you should change the CA logging settings to ensure that all the required
debug information will be captured.

First, change the log level to Information.

Second, increase the log file size limit. If the log file limit is too low, especially in big FSSO networks, you
might not have time to see the relevant debug information because it will be overridden quickly by new log
events.

Third, you can optionally record the logon events on a different file.

Secure Access 6.0 Study Guide 116


 Single Sign-On

DO NOT REPRINT
© FORTINET

By clicking show service status in the CA, you can check the connectivity between the FortiGate and the
CA. The window displays the serial numbers of all the active FortiGate devices.

Secure Access 6.0 Study Guide 117


 Single Sign-On

DO NOT REPRINT
© FORTINET

When FortiGate connects successfully to a CA, the CA logs contain the messages shown on this slide.
Additionally, you can confirm that a connection is successful while running the FSSO real-time debug on
FortiGate.

Secure Access 6.0 Study Guide 118


 Single Sign-On

DO NOT REPRINT
© FORTINET

While the TCP session between FortiGate and the CA is running, the CA sends heartbeat messages to
FortiGate. Both the CA logs and the FortiGate real-time debug logs show this heartbeat exchange.

Secure Access 6.0 Study Guide 119


 Single Sign-On

DO NOT REPRINT
© FORTINET

You can use the run authd application debug to troubleshoot connectivity issues between the CA and
FortiGate. This applies when you are using FortiAuthenticator as the CA or the software-based CA.

The error server authentication failed, aborting in the FortiGate real-time debug logs might
indicate a mismatch in the password shared between the CA and FortiGate.

The error connection refused might indicate that the TCP communication between FortiGate and the CA
is blocked by a firewall or another device.

The error no route to host might indicate that the CA IP address is not routable from FortiGate.

Secure Access 6.0 Study Guide 120


 Single Sign-On

DO NOT REPRINT
© FORTINET

To check communication between the CA and each DC, click Show Monitored DCs. The DC Agent Status
table opens, showing the time that the last logon event was received from each DC.

Secure Access 6.0 Study Guide 121


 Single Sign-On

DO NOT REPRINT
© FORTINET

The FortiGate FSSO real-time debug generates messages each time a logon event arrives. The messages
include the name and IP address of the user, together with the workstation name and user's group
information.

Secure Access 6.0 Study Guide 122


 Single Sign-On

DO NOT REPRINT
© FORTINET

You can check the list of logon users by clicking Show Logon Users. The status OK indicates that the user is
active. A user's status changes to Not Verified when they log out, or when there is a problem in the polling
done by the CA to the workstation.

Secure Access 6.0 Study Guide 123


 Single Sign-On

DO NOT REPRINT
© FORTINET

In this section, you will learn about common issues with FSSO and how to prevent them. The troubleshooting
methodology explained in this section applies to both the software CA as well as FortiAuthenticator used as
CA.

Secure Access 6.0 Study Guide 124


 Single Sign-On

DO NOT REPRINT
© FORTINET

What should you do if the CA does not have logon information?


- Verify that the CA is monitoring all DCs
- Check that the CA is receiving logon events from the DCs
- Test the user account and check the CA logs

What should you do if the CA does have the logon information, but FortiGate does not?
- Check that FortiGate is connected to the CA
- Run the real-time debugs while testing the user account

Secure Access 6.0 Study Guide 125


 Single Sign-On

DO NOT REPRINT
© FORTINET

If an FSSO user is listed as active on FortiGate but it cannot browse the Internet, you should first confirm the
IP address listed on FortiGate. Also, check the user's group information, firewall policies, and CA logs.
If FortiGate is randomly blocking some users after some time, you should check that the CA service, or any
FortiGate process, is not crashing. Confirm that the connection between FortiGate and the CA is running and
stable. Try to reproduce the problem, then check the CA logs.

Secure Access 6.0 Study Guide 126


 Single Sign-On

DO NOT REPRINT
© FORTINET

DNS resolution is essential for FSSO operation. If a CA cannot resolve a workstation name, the user will not
be listed as active and the CA logs contain the errors shown on this slide..

Secure Access 6.0 Study Guide 127


 Single Sign-On

DO NOT REPRINT
© FORTINET

Another common problem with FSSO authentication occurs when applications generate logon events using
an AD account that is different from the users'. In those cases, the logon event overrides the information about
the user for a workstation IP address (a different user is listed as active for the IP address). The CA is coded
to ignore any logon event for anonymous accounts, and accounts whose name starts with “$” (which are
system accounts). If any application is using an account that is overriding the user information, the solution is
to add that account to the ignore user list.

Secure Access 6.0 Study Guide 128


 Single Sign-On

DO NOT REPRINT
© FORTINET

Active users with the status not verified are also a common problem. That status is normal after a user has
logged out. However, it is not normal for a user who is still logged on, meaning that polling from the CA to the
workstation is failing. In those cases, check the CA logs. They provide more information about the cause of
the problem.

Secure Access 6.0 Study Guide 129


 Single Sign-On

DO NOT REPRINT
© FORTINET

What should you do if a user lost Internet access after the IP address changed?

This type of problem might happen when the user alternates from a wired to a wireless network. It might also
happens when a workstation exits hibernate mode (and gets a new IP address from the DHCP server).

The first step is to check the DNS resolution. As explained on a previous slide, when a user changes the IP
address, the DNS server must be automatically updated with the new IP information. If that is not possible,
one workaround to this problem is to configure FSSO guest access. So, users whose IP addresses have
changed can still have some (probably limited) access to some network resources.

For the cases where a workstation was assigned more than one IP address (for example one address for the
wired network and another one for the wireless), the DNS server should be able to return all of those IP
addresses when resolving the workstation name. The user is then listed multiple times in the FSSO active
user list, one time for each IP address.

Secure Access 6.0 Study Guide 130


 Single Sign-On

DO NOT REPRINT
© FORTINET

In this section, you will learn about troubleshooting FSSO.

Secure Access 6.0 Study Guide 131


 Single Sign-On

DO NOT REPRINT
© FORTINET

This slide shows how the FSSO traffic flows and which ports are used. In the case of polling mode, the polling
is done from either FortiGate or the CA, and, in both cases, port TCP 445 is used. By default, the
communication between the CA and FortiGate uses port TCP 8000. By default, the communication between
the DCs and the CA also uses port UDP 8002.

FSSO usually works by identifying each user based on the source IP address of the traffic. Each active FSSO
user is associated with one or more IP addresses, and one IP address is associated with only one user. This
creates conflicts in networks using terminal or Citrix servers, where more than one user is sharing the same
IP address. In those cases, you can install a terminal server (TS) agent. The TS agent provides the CA and
FortiGate with the source IP address of each user, as well as the source TCP/UDP ports they are using. So,
multiple users sharing the same IP address can be identified by combining the source IP address with the
source port. The communication between the TS agent and the CA also uses port UDP 8002.

Secure Access 6.0 Study Guide 132


 Single Sign-On

DO NOT REPRINT
© FORTINET

FSSO enables FortiGate to use your network’s existing authentication system for firewall authentication. Once
a user logs in, he or she can access other network resources without having to authenticate again.

The two most common FSSO methods are DC agent and polling.

DC agent requires one collector agent. It also requires DC agents to be installed on all Windows domain
controllers. The DC agents detect the login events and push this information to the CA. The CA forwards the
login events to FortiGate, together with the workstation IP address and user's group information.

Polling mode does not require any DC agent to be installed. In this mode, the CA frequently polls each DC to
get the latest login events. There are three types of polling modes:

• NetAPI: Polls NetSessionEnum API every nine seconds.

• WinSecLog: Polls all security event logs every three seconds.

• WMI: Polls specific security event logs every three seconds.

These poll intervals are estimated times that depend on the number of servers and network latency.

If a standalone CA is used, the three types of polling methods are supported. Alternatively, the polling can be
done directly from the FortiGate (agentless polling mode), so a standalone CA is not required. However, the
FortiGate acting as a CA only supports the WinSecLog polling type.

The NSE 4-level courses covers the advantages and disadvantages of each FSSO method.

Secure Access 6.0 Study Guide 133


 Single Sign-On

DO NOT REPRINT
© FORTINET

Each time the CA receives a logon event, it checks first if the user is on the ignore list. If FortiAuthenticator is
configured, the CA checks if the user is excluded from SSO.

If it is excluded from SSO, the CA discards the logon event. Then, the CA checks if the user's group
information is still in the cache.

If the user's group information is not in the cache, the CA performs either an LDAP or an API query to get the
group information from the Windows AD. Once the CA knows the user groups, it checks if any of them is
included on the list of monitored groups.

If none of the groups are included on the list of monitored groups, the logon event is not forwarded to
FortiGate. If at least one group is included, the logon event is forwarded to FortiGate.

Secure Access 6.0 Study Guide 134


 Single Sign-On

DO NOT REPRINT
© FORTINET

An external CA periodically checks if each active FSSO user is still logged on. It does this by polling all known
active workstations based on a configurable interval.

How this checking is done depends on the FSSO mode. For WMI polling mode, the CA checks the WMI
service. For all the other modes, the CA checks the HKEY_USERS hive through remote registry services.

If a workstation does not respond to these checks, the CA starts a timer (dead entry timeout interval). After
the expiration of that timer, the workstation's status changes to not verified and the CA assumes that the user
has logged out.

Secure Access 6.0 Study Guide 135


 Single Sign-On

DO NOT REPRINT
© FORTINET

You can also configure the external CA to check periodically if the IP address of an active FSSO user has
changed. This might happen, for example, when a user switches from a wired to a wireless network. When
you enable this CA feature, the CA periodically uses the DNS to resolve the workstation name.

If the DNS server replies with a new IP address, the CA first sends a logoff event to FortiGate, followed by a
logon event with the new IP address.

So, it is important for the DNS server to be immediately and automatically updated each time a user changes
the IP address.

Secure Access 6.0 Study Guide 136


 Single Sign-On

DO NOT REPRINT
© FORTINET

There are three important requirements for any FSSO network, and most of the FSSO problems occurs when
any of these requirements is not fulfilled.

As explained, the CA frequently polls each active workstation. For this polling to work correctly, TCP ports 139
and 445 must be open between the CA and the workstations. Firewalls must allow this traffic. Additionally, the
remote registry service must be running on the workstations.

As explained in the NSE 4-level courses, DNS is used to get the user IP address. So, administrators must
ensure that each workstation name is registered in the DNS server with the correct, current IP address.

Secure Access 6.0 Study Guide 137


 Single Sign-On

DO NOT REPRINT
© FORTINET

What steps should an administrator take when troubleshooting an FSSO problem? This slide shows a general
checklist. In the next slides, you will learn how to check each of those steps.

Secure Access 6.0 Study Guide 138


 Single Sign-On

DO NOT REPRINT
© FORTINET

If you can reproduce the FSSO problem, there are different tools to track the logon event as it travels from the
DC, to the CA and to the FortiGate.
• Perform the login
• Check which DC received the login using the Windows command: echo %logonserver%
• Go to that DC and use the Windows event viewer to find the generated logon event.
• Check the CA logs and the list of active FSSO users.
• Check that at least one user's group is listed as monitored in the group filter.
• On FortiGate, check that the logon event was received. List the active FSSO users. Generate traffic from
the user workstation and verify that it is added to the FortiGate user monitor.

Secure Access 6.0 Study Guide 139


 Single Sign-On

DO NOT REPRINT
© FORTINET

The Event Viewer is a Windows tool that displays all the server logs. You can use it to search for logon event
logs.

Secure Access 6.0 Study Guide 140


 Single Sign-On

DO NOT REPRINT
© FORTINET

To get the list of active users from FortiGate, use the command diagnose debug authd fsso list. You
can set up a filter first using the command diagnose debug authd fsso filter.

Secure Access 6.0 Study Guide 141


 Single Sign-On

DO NOT REPRINT
© FORTINET

The CLI command diagnose debug authd fsso refresh-logons refreshes the active FSSO user
list on FortiGate by getting this information again from the CA.

The CLI command diagnose debug authd fsso clear-logons flushes the list of active FSSO users
on FortiGate.

The CLI command diagnose debug authd fsso refresh-groups refreshes the user group
information on FortiGate by getting this information again from the CA.

To list the monitored user groups, use the command get user adgrp.

Secure Access 6.0 Study Guide 142


 Single Sign-On

DO NOT REPRINT
© FORTINET

This slide shows the objectives that you covered in this lesson.

Secure Access 6.0 Study Guide 143


 Dialup IPsec

DO NOT REPRINT
© FORTINET

In this lesson, you will learn best practices for connecting dialup IPsec users. You will also learn some
advanced configuration settings for dialup IPsec.

Secure Access 6.0 Study Guide 144


 Dialup IPsec

DO NOT REPRINT
© FORTINET

After completing this lesson, you should be able to achieve the objectives shown on this slide.

Secure Access 6.0 Study Guide 145


 Dialup IPsec

DO NOT REPRINT
© FORTINET

In this section, you will review how IPsec works.

Secure Access 6.0 Study Guide 146


 Dialup IPsec

DO NOT REPRINT
© FORTINET

The table shown on this slide summarizes the VPN technologies that are most commonly used for dialup
access. FortiOS supports all of these technologies. SSL and IPsec VPNs are the most popular VPN types.
Administrators can configure SSL and IPsec VPNs from the GUI. FortiOS also supports, from the CLI only,
PPTP and L2TP VPNs.

L2TP over IPsec combines L2TP (for tunneling) with IPsec (for encryption). You can configure L2TP over
IPsec on FortiGate using one of the IPsec wizards available on the GUI.

Secure Access 6.0 Study Guide 147


 Dialup IPsec

DO NOT REPRINT
© FORTINET

IKE negotiates the private keys, authentication, and encryption to be used in the tunnel. Security associations
(SAs) provide the basis for building security functions into IPsec.

IKE phase 1 uses either one of two modes: main or aggressive. Phase 2 uses quick mode.

Secure Access 6.0 Study Guide 148


 Dialup IPsec

DO NOT REPRINT
© FORTINET

This slide shows main mode, where six packets are exchanged:

1. The client initiates by proposing the security policies.


2. The responder selects which security policy it will agree to use, and replies.
3. The initiator sends its Diffie-Hellman public value.
4. The responder replies with its own Diffie-Hellman public value.
5. The initiator sends its peer ID, together with either a hash (for PSK) or signature (for certificate) payload.
6. The responder replies with its peer ID, and hash or certificate payload.

Observe that in main mode, the peer ID is not included in the first packet. So, the responder cannot use the
peer ID to identify which initiator is sending the first packet.

Secure Access 6.0 Study Guide 149


 Dialup IPsec

DO NOT REPRINT
© FORTINET

This slide shows the aggressive mode negotiation in which only three packets are exchanged:

1. The client initiates by suggesting the security policies, and providing its Diffie-Hellman public value and
peer ID.
2. The responder replies with the same information, plus either a hash (for PSK) or signature (for certificate)
payload.
3. The initiator sends its hash or certificate payload.

In this case, the peer ID is included in the first packet. So, it can be used to identify the initiator.

Secure Access 6.0 Study Guide 150


 Dialup IPsec

DO NOT REPRINT
© FORTINET

When the first phase-1 IPsec packet arrives, the FortiGate acting as the responder uses the first phase 1
configuration (in alphabetical order) that matches the following:

• Local gateway IP
• Mode (aggressive or main)
• Peer ID, if aggressive mode is used. As explained, only aggressive mode includes the peer ID in the first
packet.
• Authentication method (for pre-shared key and certificates)
• Digital certificate information, if certificates are used as the authentication method
• Proposal
• DH group

However, in some circumstances, FortiOS can switch to a different phase 1, if it finds that it initially selected
the wrong phase 1. This is called gateway revalidation and only applies to the following:

• IKEv1 with certificate authentication


• IKEv2 with pre-shared key authentication
• IKEv2 with certificate authentication

Secure Access 6.0 Study Guide 151


 Dialup IPsec

DO NOT REPRINT
© FORTINET

If a FortiGate has multiple dialup VPNs using pre-shared keys and sharing the same local gateway, proposal,
and DH group, you must use aggressive mode and different peer IDs. Using this method, the FortiGate
identifies the right VPN configuration for each incoming IPsec proposal.

Secure Access 6.0 Study Guide 152


 Dialup IPsec

DO NOT REPRINT
© FORTINET

There are two modes for encapsulating IP traffic over IPsec:

• In transport mode, only the IP payload is encrypted. The original IP headers are reused as the IP headers
of the IPsec packet.
• In tunnel mode, the whole original IP packet (including IP headers and payload) is encrypted. A new IP
header for IPsec (which can have different IP addresses) is created.

In both modes (transport and tunnel), an encapsulating security payload (ESP) header is inserted, together
with an ESP trailer and some additional fields for ESP authentication.

Secure Access 6.0 Study Guide 153


 Dialup IPsec

DO NOT REPRINT
© FORTINET

Transport mode is typically used when tunneling is done by another protocol that is encapsulated over IPsec.
Examples of this are GRE over IPsec, and L2TP over IPsec.

Transport mode can also be used when tunneling is not required, for example when the IPsec peers are the
actual recipients of the data.

For other cases, tunnel mode is usually preferred and required. The encapsulations mode (either tunnel or
transport) can be set in phase 2 using the CLI.

Secure Access 6.0 Study Guide 154


 Dialup IPsec

DO NOT REPRINT
© FORTINET

In this section, you will learn some best practices for configuring dialup IPsec VPNs.

Secure Access 6.0 Study Guide 155


 Dialup IPsec

DO NOT REPRINT
© FORTINET

At the end of phase 1, FortiGate uses the Diffie-Hellman (DH) key agreement protocol. DH uses public keys
(that both ends know), plus a mathematical factor called a nonce, to generate a common private key that is
never transmitted over the tunnel. This private key is later used for encryption and authentication.

This step is crucial. When you use Diffie-Hellman, even if attackers can listen in to the messages containing
the public keys, they cannot easily determine the secret key. The security strength of Diffie-Hellman (how
difficult it is to crack it and calculate the secret key) depends on the DH group.

Secure Access 6.0 Study Guide 156


 Dialup IPsec

DO NOT REPRINT
© FORTINET

The first set of DH groups (called more modular exponential or MODP) uses modular exponentiation
algorithms to calculate the common private key. The second set (called elliptical curve or EC) uses algorithms
that are based on the algebraic structure of elliptic curves.

This table compares the security strengths of both types of DH groups with the equivalent strengths of
different symmetric key sizes. For example, DH group 19 (EC and 384 bits) has a similar strength to DH
group 15 (MODP and 3072 bits). Both have a strength similar to a symmetric key that is 128 bits long. This
table also shows that, with the right computer power, both DH groups 15 and 19 (and symmetric keys that are
128-bit long) can, eventually, be cracked.

Secure Access 6.0 Study Guide 157


 Dialup IPsec

DO NOT REPRINT
© FORTINET

The three settings that will define the security level (or security strength) for your VPN are:

• DH group
• Encryption algorithm
• Authentication hash function

This table expands on the information your learned previously. You can use this table to determine which DH
group, encryption algorithm, and authentication function you should use to achieve a required security
strength (based on the strengths of different symmetric-key sizes).

For example, if you want to achieve a security strength equivalent to a 256-bit key, you should use DH group
21, encryption algorithm AES256, and either authentication SHA2-384 or SHA2-512.

Secure Access 6.0 Study Guide 158


 Dialup IPsec

DO NOT REPRINT
© FORTINET

Keep in mind that there is usually a trade-off between security strength and performance. More security
strength usually requires longer keys, which usually slow down the encryption and decryption.

Some FortiGate models include ASICs for offloading the encrypt and decrypt of bulk data; minimizing the
impact of using long keys.

This table shows which DH groups, encryption algorithms, and authentication functions can be offloaded to
NP6, CP8, and CP9 ASICs.

Also, as a general rule, AES algorithms run faster than 3DES algorithms with a similar key size. Additionally,
although EC DH groups require more bandwidth, they run faster than MODP DH groups.

Secure Access 6.0 Study Guide 159


 Dialup IPsec

DO NOT REPRINT
© FORTINET

One of the guidelines that you can use to set your security strength target (and select your DH group,
encryption algorithm, and authentication function), is the national security agency (NSA) suite B. It provides a
set of cryptographic algorithms recommended by the NSA. The recommendations include the use of
Galois/Counter Mode (GCM) for ESP traffic, which is a mode of operation for symmetric key cryptographic
block cyphers.

For unclassified information, the NSA recommendation for IPsec is to use DH group 19 (EC with 256 bits),
AES128, and SHA-256.

For classified information, the NSA recommendation for IPsec is to use DH group 20 (EC with 384 bits),
AES256, and SHA-384.

Secure Access 6.0 Study Guide 160


 Dialup IPsec

DO NOT REPRINT
© FORTINET

Configuring FortiGate to follow the NSA suite B guidelines is straightforward. You must set the suite-b
setting in phase 1 to either suite-b-gcm-128 (for unclassified information), or suite-b-gcm-256 (for
classified information.)

Once you enable suite B in phase 1, administrators cannot manually configure the encryption and
authentication settings. Phase 1 (and all phase 2) will use the DH group, encryption and authentication
settings recommended by the NSA.

Secure Access 6.0 Study Guide 161


 Dialup IPsec

DO NOT REPRINT
© FORTINET

In this section, you will learn how FortiGate authenticates IPsec dialup users and assigns their IP settings.

Secure Access 6.0 Study Guide 162


 Dialup IPsec

DO NOT REPRINT
© FORTINET

The authentication of the IPsec peers happens during the phase 1. There are two ways to authenticate remote
IPsec peers: using a pre-shared key or using digital certificates.

Secure Access 6.0 Study Guide 163


 Dialup IPsec

DO NOT REPRINT
© FORTINET

Extended authentication (XAuth) is used as an additional level of authentication. When XAuth is used, users
must provide credentials (username and password) in order to successfully authenticate.

XAuth happens after the phase 1 is up and before any phase 2 negotiation. That is why XAuth is sometimes
referred to as phase 1.5.

In any XAuth communication, there is always one client and one server. The server sends a CFG_REQUEST
packet, which must be replied by the client with a CFG_REPLY packet. The CFG_REPLY packet includes the
user credentials. If the authentication is ok, the server sends CFG_SET and the client replies with CFG-ACK.

Secure Access 6.0 Study Guide 164


 Dialup IPsec

DO NOT REPRINT
© FORTINET

One way to configure the users that are authorized to use the VPN is to select a user group in the XAuth
configuration.

The other way is to select the option Inherit from policy. When you select this setting, FortiGate authorizes
all users that belong to any user group assigned to any of the firewall policies for VPN traffic. In this example,
there are two firewall policies for the VPN traffic. One allows the traffic for the user group Administrator. The
other policy allows the traffic for the user group training. In this case, all users that belong to either
Administrator or training can connect to the VPN.

The advantage of this method is that allows different access policies, for different user groups, keeping only
one dialup VPN in the configuration.

Secure Access 6.0 Study Guide 165


 Dialup IPsec

DO NOT REPRINT
© FORTINET

The IKE real-time debug shows, after phase 1, the exchange of XAuth packets. Here we can see the
CFG_REQUEST packet.

Secure Access 6.0 Study Guide 166


 Dialup IPsec

DO NOT REPRINT
© FORTINET

The messages in the real-time debug, related to the CFG_REPLY, show the XAuth user and group name.

Secure Access 6.0 Study Guide 167


 Dialup IPsec

DO NOT REPRINT
© FORTINET

After that, the IKE real-time debug shows the CFG_SET and CFG_ACK.

Secure Access 6.0 Study Guide 168


 Dialup IPsec

DO NOT REPRINT
© FORTINET

Once a VPN user has been authenticated successfully, the output of the diagnose vpn ike gateway
list command shows the user name.

Secure Access 6.0 Study Guide 169


 Dialup IPsec

DO NOT REPRINT
© FORTINET

A FortiGate supports three different methods for automatically configuring the IP settings of IPsec clients: IKE
mode configuration, DHCP over IPsec, and L2TP over IPsec.

First, you will learn about the IKE mode configuration.

After phase 1 is up, and before the phase 2, the client sends a CFG_REQUEST message listing the required IP
settings (or attributes). The server replies with a CFG_REPLY, which contains the assigned values for each
of the attributes requested.

Secure Access 6.0 Study Guide 170


 Dialup IPsec

DO NOT REPRINT
© FORTINET

The IKE mode configuration can be done from either the GUI or CLI. This slides shows some of the settings
required when you configure IKE mode configuration from the CLI.

The ipv4-start-ip and ipv4-end-ip settings define the range of IP addresses that will be assigned to
IPsec users.

The ipv4-split-include setting defines the subnets that can be reachable (if the firewall policies allow it)
through the IPsec tunnel. IPsec clients (such as FortiClient) will install routes to these subnets once the tunnel
comes up.

Secure Access 6.0 Study Guide 171


 Dialup IPsec

DO NOT REPRINT
© FORTINET

This is a sample output of the IKE real-time debug for IKE mode configuration.

The output shows the CFG_REQUEST and CFG_REPLY packets.

Secure Access 6.0 Study Guide 172


 Dialup IPsec

DO NOT REPRINT
© FORTINET

Another method that you can use to assign IP settings to an IPsec client is DHCP over IPsec. Similar to IKE
mode configuration, DHCP over IPsec happens after phase 1, after the extended authentication, and before
any phase 2 negotiation.

During DHCP over IPsec exchange, the client first negotiates a provisional phase 2 of short duration for only
the DHCP traffic. Once that provisional phase 2 is up, standard DHCP traffic is exchanged to set the client IP
settings: DHCP_DISCOVER, DCHP_OFFER, DHCP_REQUEST, and DHCP_ACK.

After the client gets the IP settings, the provisional phase 2 is turned down and a new phase 2 is negotiated
for user traffic.

Secure Access 6.0 Study Guide 173


 Dialup IPsec

DO NOT REPRINT
© FORTINET

To configure an IPsec VPN for DHCP over IPsec, you must enable the dhcp-ipsec setting in phase 2.
Additionally, you must create a DHCP server in the IPsec virtual interface with server-type set to ipsec.

Secure Access 6.0 Study Guide 174


 Dialup IPsec

DO NOT REPRINT
© FORTINET

The IKE real-time debug shows the negotiation of phase 2 for DHCP. In this first phase 2, the client public IP
address is used in the quick mode selectors. Then, the DHCP phase 2 is deleted, and a new phase 2 is
created for user traffic. In the second phase 2, the IP address assigned by the DHCP server is used in the
quick mode selectors.

Secure Access 6.0 Study Guide 175


 Dialup IPsec

DO NOT REPRINT
© FORTINET

When troubleshooting a DHCP over IPsec problem, you can also use the DHCP real-time debug. It shows
information about the DHCP traffic, including all the IP settings assigned to the IPsec clients.

In the sample output shown on this slide, you can see the DHCPDISCOVER packet sent by the client.

Secure Access 6.0 Study Guide 176


 Dialup IPsec

DO NOT REPRINT
© FORTINET

Following the DHCPDISCOVERY packet, you can see the DHCPOFFER, DHCPREQUEST, and DHCPACK
packets.

Secure Access 6.0 Study Guide 177


 Dialup IPsec

DO NOT REPRINT
© FORTINET

L2TP can be used on top of IPsec for assigning the IP settings to VPN users. Once the IPsec secure channel
(phases 1 and 2) is up, the L2TP negotiation starts, and IP settings are assigned to VPN users. It is worth
mentioning that L2TP offers another layer of user authentication. This additional layer requires users to enter
their credentials, as in the case of XAuth.

During the start of L2TP, a tunnel is set up first. After the L2TP tunnel is up, an L2TP session is set up.

Secure Access 6.0 Study Guide 178


 Dialup IPsec

DO NOT REPRINT
© FORTINET

To configure L2TP over IPsec, you must set the phase 2 encapsulation to transport mode, the tunneling will
be done by the L2TP protocol and not the IPsec VPN. You must also enable the l2tp setting in phase 2.

Under config vpn l2tp, you configure the range of IP addresses reserved for VPN users and the user
group that is authorized to use the VPN.

Secure Access 6.0 Study Guide 179


 Dialup IPsec

DO NOT REPRINT
© FORTINET

In the cases of IKE mode configuration and DHCP over IPsec, you can configure FortiGate to get the VPN
users' IP addresses from an external server. That external server can be either a DHCP server, or a RADIUS
server. In the case of a RADIUS server, you must configure it to return the Framed-IP-Address attribute
based on the VPN user authenticating. In this way, you can always assign the same IP address to any user.

Secure Access 6.0 Study Guide 180


 Dialup IPsec

DO NOT REPRINT
© FORTINET

In this lesson, you learned how to perform L2TP and IKE mode configuration from the CLI. However, you can
also use the IPsec VPN wizards, available on the GUI, to easily create VPNs that use either one of those two
IP-assignment methods.

This table shows some of most well-known IPsec clients, the protocols they use, the IPsec encapsulation
mode they use, how users are authenticated, and how IP settings are assigned. There is a VPN wizard in the
GUI for each of these cases.

Secure Access 6.0 Study Guide 181


 Dialup IPsec

DO NOT REPRINT
© FORTINET

In this section, you will learn some advanced configuration settings for IPsec dialup.

Secure Access 6.0 Study Guide 182


 Dialup IPsec

DO NOT REPRINT
© FORTINET

If the IPsec VPN has been configured in interface mode, statics routes are automatically added to VPN users
each time a dialup VPN connects. The destination subnets of the static routes are the ones received in the
phase 2 quick mode selectors. When IKE mode configuration, or DHCP over IPsec is used, those subnets
(with a /32 mask) matched the IP addresses assigned to dialup users.

By default, the distance assigned to those dynamic routes is 15, and the priority is 0. You can change those
values in the phase 1 configuration.

Secure Access 6.0 Study Guide 183


 Dialup IPsec

DO NOT REPRINT
© FORTINET

In this lesson, you have learned how dialup VPNs connect remote mobile clients and how FortiGate can
assign the IP settings to those clients.

Dialup VPNs can also be used to connect multiple remote offices to a central site. In these cases, the central
FortiGate does not dynamically assign the IP settings to each remote office, because each remote FortiGate
is protecting one or more subnets that need to communicate with the central site. In these cases, the quick
mode selectors contain the remote subnets. The central FortiGate automatically adds static routes to those
subnets when the tunnels come up.

If you have a case where two remote sites have the same subnets, it might create overlapping static routes in
the central FortiGate. The setting route-overlap, found in phase 2, defines what action FortiGate will
take when a new remote site is connecting and there is a remote site already connected with an overlapping
subnet. The possible actions include:

• use-new (default): Disconnect the existing dialup VPN and accept the new VPN.
• use-old: Keep the existing dialup VPN up and reject the new one.
• allow: Keep the existing dialup VPN up and accept the new one. Traffic for sessions that start from the
central FortiGate will be load balanced (ECMP) between both VPNs.

Secure Access 6.0 Study Guide 184


 Dialup IPsec

DO NOT REPRINT
© FORTINET

The output of the command diagnose vpn ike routes list shows the statics routes (together with the
distances and priorities) that were added to reach each VPN client and remote site.

Secure Access 6.0 Study Guide 185


 Dialup IPsec

DO NOT REPRINT
© FORTINET

There is way to configure FortiGate to associate multiple peer IDs and pre-shared keys with a single dialup
VPN configuration. You must create a list of users using the peer IDs as the user names, and the pre-shared
keys as the user passwords. In the phase 1 configuration, you must set peertype to dialup, unset
psksecret, and set usrgrp to the group that contains all the IPsec users.

Secure Access 6.0 Study Guide 186


 Dialup IPsec

DO NOT REPRINT
© FORTINET

This slide shows the objectives that you covered in this lesson.

Secure Access 6.0 Study Guide 187


 FortiSwitch

DO NOT REPRINT
© FORTINET

In this lesson, you will learn about FortiSwitch deployment, configuration, and troubleshooting.

Secure Access 6.0 Study Guide 188


 FortiSwitch

DO NOT REPRINT
© FORTINET

After completing this lesson, you should be able to achieve the objectives shown on this slide.

Secure Access 6.0 Study Guide 189


 FortiSwitch

DO NOT REPRINT
© FORTINET

In this section, you will learn how to deploy FortiSwitch.

Secure Access 6.0 Study Guide 190


 FortiSwitch

DO NOT REPRINT
© FORTINET

You can deploy FortiSwitch as a stand-alone switch or as a switch that you can manage from FortiGate.

You can use FortiLink to manage FortiSwitch on FortiGate. FortiLink is supported by specific FortiGate
models.

Secure Access 6.0 Study Guide 191


 FortiSwitch

DO NOT REPRINT
© FORTINET

Managing FortiSwitch devices on FortiGate offers important key benefits:

• Zero-touch provisioning: Administrators only need to connect FortiSwitch to a FortiGate interface that has
FortiLink enabled. FortiGate will automatically discover and provision FortiSwitch.
• Secure configuration management: All FortiSwitch management is done on the FortiGate CLI and GUI.
Administrators are not required to login to FortiSwitch.
• Centralized provisioning and maintenance: FortiSwitch becomes an extension of FortiGate. The way you
configure firewall policies using FortiSwitch VLANs is the same as the way you do it for FortiGate VLANs.
Authentication and authorization are also handled centrally on FortiGate.
• FortiSwitch stack: FortiGate can manage multiple FortiSwitch devices stacked in different ways to offer
scalability and redundancy.
• Model range: There are different sizes of FortiGate and FortiSwitch devices to accommodate the needs of
retail and SMB customers up to data centers.

Secure Access 6.0 Study Guide 192


 FortiSwitch

DO NOT REPRINT
© FORTINET

The smallest FortiSwitch devices are the 100 and 200 series. They support from 8x1G ports to up to 48x1G
ports. They are ideal for retail premises, office branches, and small campuses.

The FortiSwitch 400 series suits medium to large campuses. Some models in the 400 series include support
for 10G interfaces.

The biggest FortiSwitch devices are the 500 series, for large and enterprise campuses and data centers. They
include 10G and 40G uplink interfaces.

Secure Access 6.0 Study Guide 193


 FortiSwitch

DO NOT REPRINT
© FORTINET

Using FortiLink, FortiGate automatically provisions stacked FortiSwitches, forms ISL links between
FortiSwitches, and enables the Spanning Tree Protocol on the ISL links. FortiGate auto-discovers all
FortiSwitches in the stack and manages them centrally.

Secure Access 6.0 Study Guide 194


 FortiSwitch

DO NOT REPRINT
© FORTINET

You will start learning about the different ways you can deploy FortiSwitch using FortiGate. The simplest
deployment is one FortiGate managing one FortiSwitch. The interface FortiGate uses to manage FortiSwitch
could be either one single physical interface, or an aggregated interface with multiple physical interfaces.

In the deployment example shown on the middle of this slide, multiple FortiSwitches are connected in parallel
to FortiGate with either a hardware or a software switch.

You can also interconnect the FortiSwitch devices in a ring (or loop) topology using ISL trunks. One of the
FortiSwitch is connected to one of the FortiGate through an active FortiLink. Optionally, you can use a
FortiGate aggregated interface (LAG) with two physical interfaces. One physical interface is the active
FortiLink, connected to one FortiSwitch; and the second physical interface is the passive FortiLink, connected
to another FortiSwitch. This deployment mode is one way you can offer redundancy for FortiLink. You must
enable the split-interface setting in the aggregated interface.

Secure Access 6.0 Study Guide 195


 FortiSwitch

DO NOT REPRINT
© FORTINET

The example on the left side of this slide shows a deployment with two FortiGate devices in HA mode and one
FortiSwitch. The primary FortiGate has the active FortiLink. The secondary FortiGate has the passive
FortiLink.

You can combine FortiGate devices in HA mode with FortiSwitches stacked in a ring topology. In this case,
you can have up to two FortiLink interfaces (LAG) connected to each HA member. One FortiLink on the
primary FortiGate is active, the other FortiLink on the primary is passive, and the two FortiLinks on the
secondary FortiGate are also passive. On the example on this slide, split interface must be enabled on the
aggregated interfaces of both the primary and secondary FortiGate devices.

Secure Access 6.0 Study Guide 196


 FortiSwitch

DO NOT REPRINT
© FORTINET

FortiLink supports multi-tier topologies. The example on the left side of this slide shows three FortiSwitches
connected to one central FortiSwitch. The central FortiSwitch in connected to FortiGate devices in HA mode.

The right side of this slide shows a more complex and scalable example. Three sets of FortiSwitches in a ring
topology are connected to two central FortiSwitches, which are then connected to two FortiGate devices in HA
mode.

Secure Access 6.0 Study Guide 197


 FortiSwitch

DO NOT REPRINT
© FORTINET

In all the previous examples, there is either one physical interface, or a LAG with two physical interfaces,
connected to each FortiGate. Split interface is required when using a LAG with two interfaces, and only one of
the interfaces can be active at any given time.

Multi-chassis link aggregation (MCLAG) allows you to have LAGs with more than two physical interfaces
connected to each switch. Also, when you use MCLAG, all the interfaces in the LAG are active. In the
example shown on this slide, two links one one FortiGate are connected to each of the two FortiSwitches. The
two links are active.

This deployment mode requires you to disable split interface. You must also configure an MCLAG-ICL trunk
between the switches to carry control and data traffic, including the synchronization of the MAC address table.

Secure Access 6.0 Study Guide 198


 FortiSwitch

DO NOT REPRINT
© FORTINET

In this section, you will learn how FortiLink works in details.

Secure Access 6.0 Study Guide 199


 FortiSwitch

DO NOT REPRINT
© FORTINET

FortiGate uses multiple protocols for discovering, provisioning, and administrating FortiSwitches. First,
FortiGate uses Link Layer Discovery Protocol (LLDP) discovery FortiSwitch. After that, and once FortiSwitch
is authorized, DHCP assigns the FortiSwitch IP address. After IP connectivity is up, CAPWAP authenticates
and authorizes the switch. FortiGate also uses CAPWAP to carry configuration commands, monitoring, and
software updates.

Secure Access 6.0 Study Guide 200


 FortiSwitch

DO NOT REPRINT
© FORTINET

Once FortiGate is managing FortiSwitch, the two devices interchange FortiLink heartbeat packets. These
packets include the switch identifier, number of ports, and port attributes.

FortiLink uses NTP for clock synchronization, and HTTPS for configuration and diagnostics using the
FortiSwitch RESP API.

Finally, FortiLink transports user traffic using 802.1q VLAN tagging. So, the FortiLink interface between
FortiGate and FortiSwitch is a trunk interface, where all control traffic uses the native (untagged) VLAN and
user traffic uses tagged VLANs.

Secure Access 6.0 Study Guide 201


 FortiSwitch

DO NOT REPRINT
© FORTINET

By default, the FortiSwitch controller is disabled. You must enter the config system global command
followed by the set switch-controller enable command.

If you want to make the switch controller settings available in the GUI, you must also enter the config
system settings command followed by the set gui-switch-controller enable command.

Secure Access 6.0 Study Guide 202


 FortiSwitch

DO NOT REPRINT
© FORTINET

Once you enable switch controller globally, you have the option to dedicate one FortiGate interface to
FortiSwitch. The interface can be either a physical or an aggregated interface.

You must assign an IP address to the dedicated interface, and all the FortiSwitch devices will get IP
addresses in this subnet through DHCP.

Secure Access 6.0 Study Guide 203


 FortiSwitch

DO NOT REPRINT
© FORTINET

By default, FortiLink is enabled on all switch ports, beginning in FortiSwitchOS version 3.3.0. In previous
releases, depending on the model, only specifc ports had FortiLink enabled by default. Please check the
model-specific documents to see which ports had FortiLink enabled, or, upgrade the firmware on FortiSwitch
to version 3.3.0 or higher.

You can use the command auto-discovery-fortilink to enable or disable FortiLink on each
FortiSwitch port.

Secure Access 6.0 Study Guide 204


 FortiSwitch

DO NOT REPRINT
© FORTINET

As you learned earlier, you must enable split interface in a FortiGate aggregated interface to allow two links to
be connected to different FortiSwitch devices. One link will be active, the other one will be inactive. This is
required in some deployment modes, like the example on this slide, which shows multiple FortiSwitch devices
connected in a ring topology.

Secure Access 6.0 Study Guide 205


 FortiSwitch

DO NOT REPRINT
© FORTINET

As you learned earlier, if it is required to have two or more active FortiLink interfaces from the same FortiGate
LAG connected to two FortiSwitches, you must use multi-chassis link aggregation (MCLAG).

You must perform the following three steps to configure MCLAG:


• Enter the config switch-controller managed-switch command followed by the set mclag
enable command
• Disable split interface
• Configure an MCLAG-ISL link between both FortiSwitches

Secure Access 6.0 Study Guide 206


 FortiSwitch

DO NOT REPRINT
© FORTINET

When you dedicate a FortiGate interface to FortiLink, the system automatically applies the following
configuration changes to the FortiGate configuration:

• Enables FortiLink in the interface


• Configures FortiGate as an NTP server
• Adds a DHCP server to the FortiLink interface

Secure Access 6.0 Study Guide 207


 FortiSwitch

DO NOT REPRINT
© FORTINET

After you enable FortiLink on the FortiGate interface, FortiLink uses LLDP to discover FortiGate. If you have
not configured the FortiGate interface to automatically authorize the FortiSwitch, you must manually do it. A
few minutes after FortiGate authorizes the FortiSwitch, the FortiGate GUI will display a solid line connected to
FortiSwitch, indicating that the management is up.

Secure Access 6.0 Study Guide 208


 FortiSwitch

DO NOT REPRINT
© FORTINET

FortiGate will assign an IP address to FortiSwitch through DHCP. The DHCP monitor on the FortiGate GUI
will display the FortiSwitch serial number, FortiSwitch hostname, MAC address, and assigned IP address.

Secure Access 6.0 Study Guide 209


 FortiSwitch

DO NOT REPRINT
© FORTINET

Once FortiSwitch is managed by FortiGate, you usually do not need to connect to the FortiSwitch GUI or CLI.
All the administration is done on FortiGate. However, if access to a managed FortiSwitch CLI is required, you
can connect to the FortiSwitch CLI by running a telnet or SSH on the FortiGate CLI.

You can also connect to the FortiSwitch CLI from the FortiGate GUI.

Secure Access 6.0 Study Guide 210


 FortiSwitch

DO NOT REPRINT
© FORTINET

A managed FortiSwitch is an extension of a FortiGate device. In this way, FortiSwitch extends the visibility of
the Fortinet security fabric up to Layer 2. Using FortiView physical and topology views, you can visualize
different security segments, together with all the stacked FortiSwitch and end devices connected.

Secure Access 6.0 Study Guide 211


 FortiSwitch

DO NOT REPRINT
© FORTINET

Switch profiles allow administrators to change the password on multiple FortiSwitch devices managed by the
same FortiGate. You assign the FortiSwitch devices to a switch profile by entering the set switch-
profile command. Then, you set the password by entering the set loging-passwd-override and
set login-passwd commands.

Secure Access 6.0 Study Guide 212


 FortiSwitch

DO NOT REPRINT
© FORTINET

Switch groups, on the other hand, allow you to execute actions over multiple managed FortiSwitch devices.
For example, the command execute switch-controller restart-swtp switch-group restarts all
the FortiSwitch devices that belong to the same switch group.

Secure Access 6.0 Study Guide 213


 FortiSwitch

DO NOT REPRINT
© FORTINET

There are three switch controller settings that are applied globally to FortiGate and all managed FortiSwitch
devices:

• mac-aging-interval: Time after which an inactive MAC address is aged out.


• allow-multiple-interfaces: By default, you can dedicate one FortiGate interface per VDOM to
FotiLink. When you enable this setting, you can dedicate multiple FortiGate interfaces to FortiLink.
• disable-discovery: List of FortiSwitch devices connected to FortiGate that you do not want them to be
discovered. Use this command is cases of FortiSwitch devices that you do not want to manage on
FortiGate.

Secure Access 6.0 Study Guide 214


 FortiSwitch

DO NOT REPRINT
© FORTINET

In this section, you will learn about how to configure FortiSwitch ports and VLANs.

Secure Access 6.0 Study Guide 215


 FortiSwitch

DO NOT REPRINT
© FORTINET

On the FortiGate GUI, you can change the status of a port, or a port's power over Ethernet (PoE).

Secure Access 6.0 Study Guide 216


 FortiSwitch

DO NOT REPRINT
© FORTINET

You can also restart a port's PoE on the CLI, using the command execute switch-controller poe-
reset.

The command get switch-controller poe shows information about a port's PoE, such as power
class, voltage, current, and maximum power.

Secure Access 6.0 Study Guide 217


 FortiSwitch

DO NOT REPRINT
© FORTINET

You can create link aggregation interfaces on the FortiGate GUI by clicking WiFi & Switch Controller >
FortiSwitch Ports.

Secure Access 6.0 Study Guide 218


 FortiSwitch

DO NOT REPRINT
© FORTINET

When you use FortiLink, managed FortiSwitch devices become an extension of FortiGate. You configure and
use FortiSwitch's VLANs in the same way as FortiGate's VLANs. All interface settings usually available on
FortiGate VLANs, are available on FortiSwitch VLANs, such as, device detection, captive portal, and so on.

Secure Access 6.0 Study Guide 219


 FortiSwitch

DO NOT REPRINT
© FORTINET

Once you create the VLANs, you define which FortiSwitch ports are assigned to each VLAN by selecting the
respective VLAN as the Native VLAN for the port. in the same GUI section, you can convert one FortiSwitch
port to a trunk by selecting one or more additional VLANs under Allowed VLANs.

Secure Access 6.0 Study Guide 220


 FortiSwitch

DO NOT REPRINT
© FORTINET

You can select FortiSwitch's VLANs as incoming and outgoing interfaces in the FortiGate firewall policies in
the same way that you can select FortiGate's VLAN. All the regular firewall policy settings, such as security
inspection profiles, NAT settings, and so on, are available in policies coming from or going to FortiSwitch
VLANs.

Secure Access 6.0 Study Guide 221


 FortiSwitch

DO NOT REPRINT
© FORTINET

In this section, you will learn some CLI commands to use for FortiSwitch troubleshooting and diagnostics.

Secure Access 6.0 Study Guide 222


 FortiSwitch

DO NOT REPRINT
© FORTINET

The command get switch-controller managed-switch shows the ID of all FortiSwitch devices
managed by FortiGate.

The command execute switch-controller get-conn-status shows more information about each
managed FortiSwitch, such as the FortiSwitch OS version, status, IP address, and time that FortiSwitch joined
the FortiGate management.

Secure Access 6.0 Study Guide 223


 FortiSwitch

DO NOT REPRINT
© FORTINET

Each time you change the FortiSwitch configuration on FortiGate, the change is saved in the FortiGate
configuration first. Then, FortiGate pushes the configuration change to FortiSwitch, and FortiSwitch saves it in
its configuration.

The command execute switch-controller get-sync-status shows the configuration


synchronization status between FortiGate and FortiSwitch.

Secure Access 6.0 Study Guide 224


 FortiSwitch

DO NOT REPRINT
© FORTINET

The command on this slide shows details about a managed FortiSwitch. The details include information about
each port, such as, link status, duplex mode, speed, and PoE status.

Secure Access 6.0 Study Guide 225


 FortiSwitch

DO NOT REPRINT
© FORTINET

The command shown in this slide lists the counters, such as, packets sent and received, and errors, for each
FortiSwitch port.

Secure Access 6.0 Study Guide 226


 FortiSwitch

DO NOT REPRINT
© FORTINET

The command diagnose switch-controller dump mac-addr shows the FortiSwitch MAC address
table.

Secure Access 6.0 Study Guide 227


 FortiSwitch

DO NOT REPRINT
© FORTINET

This slide shows a list of additional CLI commands that you can use for FortiSwitch diagnostics and
troubleshooting.

Secure Access 6.0 Study Guide 228


 FortiSwitch

DO NOT REPRINT
© FORTINET

The table on this slide shows the processes that handle the communication between FortiGate and
FortiSwitch. On the FortiGate side, the fortilinkd process handles the FortiSwitch discovery and FortiLink
heartbeat. The CAPWAP communication is handled by the cu_acd process. Configuration changes are
handled by the flcfgd and cu_acd processes.

On the FortiSwitch side, there are two processes: fortilinkd and cu_swpd.

There is a real-time debug available for each of these processes, on both FortiGate and FortiSwitch.

Secure Access 6.0 Study Guide 229


 FortiSwitch

DO NOT REPRINT
© FORTINET

You can use the real-time debug for the fortilinkd process for monitoring and troubleshooting the
discovery of FortiSwitch devices and the FortiLink hearthbeat.

When a new FortiSwitch is discovered, the output shows the FortiSwitch serial number.

Secure Access 6.0 Study Guide 230


 FortiSwitch

DO NOT REPRINT
© FORTINET

After the FortiSwitch is authorized, the FortiLink real-time debug shows the heartbeat packets being
interchanged between FortiGate and FortiSwitch.

Secure Access 6.0 Study Guide 231


 FortiSwitch

DO NOT REPRINT
© FORTINET

The output of the real-time debug for the flcfgf process provides information about configuration changes
pushed from FortiGate to FortiSwitch. In the example output shown on this slide, an administrator has created
a new VLAN, named IT, with tag ID 10. The output shows the moment when FortiGate pushed this new
VLAN configuration to FortiSwitch.

Secure Access 6.0 Study Guide 232


 FortiSwitch

DO NOT REPRINT
© FORTINET

By default, FortiSwitch logs are sent to FortiGate so they can be displayed on the FortiGate GUI. You can set
the minimum severity level that generates logs either globally or per FortiSwitch.

Secure Access 6.0 Study Guide 233


 FortiSwitch

DO NOT REPRINT
© FORTINET

This slide shows the objectives that you covered in this lesson.

Secure Access 6.0 Study Guide 234


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

In this lesson, you will learn how to configure 802.1X port authentication on FortiSwitch and FortiAuthenticator
devices.

Secure Access 6.0 Study Guide 235


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

After completing this lesson, you should be able to achieve the objectives shown on this slide.

By demonstrating competence in configuring 802.1X, you will be able to use port authentication on FortiSwitch
and FortiAuthenticator devices.

Secure Access 6.0 Study Guide 236


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

802.1X is a standard designed to provide authentication services to network devices that want to join a local
wired or wireless network. The 802.1X standard defines an authentication protocol called EAP. It also defines
how EAP is encapsulated over the LAN (the EAPOL protocol) and over RADIUS.

802.1X involves three parties: the client (also commonly known as the supplicant), which is the device that
wants to join the network; the authenticator, which is a network device, such as a wireless access point or
switch; and the authentication server, which is a host that supports the RADIUS and EAP protocol, such as
FortiAuthenticator.

The client is not allowed access to the Layer 2 network until the client’s identity has been validated and
authorized. Using 802.1X authentication, the client provides credentials to the authenticator, which the
authenticator forwards to the authentication server for verification. If the authentication server determines that
the credentials are valid, the client device is allowed access to the network.

Note that the authenticator does not need to have a certificate or have any knowledge of the authentication
method (PEAP, TLS, and so on). The authentication is tunnelled from the client to FortiAuthenticator over the
RADIUS protocol.

Secure Access 6.0 Study Guide 237


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

When a client (device) connects to a LAN switch that requires 802.1X authentication, the client credentials are
sent to the authenticator using EAP over LAN (or EAPOL). The authenticator then forwards the EAP traffic to
an EAP over RADIUS server (FortiAuthenticator).

If the client tries to send user data before authenticating, the traffic will be blocked by the authenticator. The
client must authenticate first, using the following process:
1. The client sends an EAPOL-Start packet to initiate the EAP authentication.
2. The authenticator replies with an EAP-Request/Identity packet to request identification.
3. The client sends its identity (usually the username).
4. The information is forwarded to the RADIUS server in a RADIUS-Access request packet.
5. The RADIUS replies with an Access Challenge packet requesting the password.
6. The authenticator requests the password from the client.
7. The client replies with a Response/Auth packet, which contains the password.
8. The password is forwarded to the RADIUS server, which then replies with an Access-Accept packet to
grant the access.
9. The authenticator sends an EAP-Success packet to the client with a confirmation that the credentials are
OK.
10. The client can now send the user data.

Secure Access 6.0 Study Guide 238


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

This packet capture shows the RADIUS Access-Request sent from a Layer 2 switch (acting as an
authenticator) to the authentication server. It contains the switch ID, username, and switch MAC address.

Secure Access 6.0 Study Guide 239


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

EAP supports multiple methods. There are two types of EAP methods: native and encapsulated.

The most two common native methods are EAP-MD5 and EAP-TLS.

EAP-MD5 sends a hash of the user credentials. It can authenticate clients, but does not offer any mechanism
for authenticating the server. This method is not recommended and is not supported by FortiAuthenticator.

EAP-TLS uses TLS and digital certificates to authenticate both the client and the server. It is one of the most
secure EAP methods.

Secure Access 6.0 Study Guide 240


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

With encapsulated EAP methods, a TLS session is established fist. At this point a digital certificate is used to
authenticate the server. Encapsulated inside the TLS session, any native EAP method is used for client
authentication. Two examples of encapsulated EAP methods are:

• PEAPv0/MSCHAPv2: Authenticates the client using MSCHAPv2


• PEAPv1/EAP-GTC: Uses different identification mechanisms (including one-time passwords) for
authenticating clients, which makes it very flexible. FortiAuthenticator supports it, but it is not commonly
supported by other vendors.

Secure Access 6.0 Study Guide 241


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

Another encapsulated method is EAP-TTLS. With this encapsulated method, AVPs authenticate the clients
using either a native EAP method or a legacy authentication protocol (such as PAP or CHAP).

Secure Access 6.0 Study Guide 242


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

FortiAuthenticator supports EAP-TLS, TTLS, PEAP, and EAP-GTC. In all of these four methods, a TLS
session is established first, and a digital certificate is used for authenticating the server. How clients are
authenticated varies from one method to another.

Secure Access 6.0 Study Guide 243


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

To configure 802.1X port authentication on FortiSwitch, you must create a security policy. The security policy
includes the user groups that are authorized. You can optionally configure two VLANs for:

• Guest access: VLAN assigned to users that did not try authenticating using 802.1X
• Authentication failures: VLAN assigned to users who failed their 802.1X authentication attempt

Secure Access 6.0 Study Guide 244


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

After creating the security policies, you define which ones are applied to which FortiSwitch port. 802.1X
authentication is enabled only on ports that have a security policy assigned.

Secure Access 6.0 Study Guide 245


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

There are three 802.1X settings that can be configured either globally or for each switch. You can configure
these setting through the CLI:

• reath-period: Defines how often clients need to reauthenticate


• max-reauth-attempt: Defines how many times a FortiSwitch reattempts the authentication if it fails the
first time
• link-down-auth: Defines if FortiSwitch will request a device to authenticate again after the link status of
a port goes down

Secure Access 6.0 Study Guide 246


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

This diagnose command displays 802.1X information about each port. The Port State indicates if the
device has been authorized or not. The command also shows the device MAC address, native VLAN, allowed
VLANs, guest VLAN, and authentication-fail VLAN.

Secure Access 6.0 Study Guide 247


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

In Windows environments, there are two types of 802.1X authentication: AD machine authentication, and user
authentication.

AD machine authentication is performed by the Windows OS, which sends its computer object credentials
before the Windows logon screen appears. Machine authentication commonly occurs on start up.
FortiAuthenticator caches authenticated devices based on their MAC addresses for a configurable period.

Machine authentication is only supported by Windows workstations in Windows AD environments.

Secure Access 6.0 Study Guide 248


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

User authentication is performed by a user when that user is logging in to the network.

This is the traditional type of 802.1X authentication that is not restricted to only Windows workstation. It is
supported by almost all operating systems.

Secure Access 6.0 Study Guide 249


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

Windows environments can combine machine and user authentication. In these cases, you can use
FortiAuthenticator to override the user group (and the access policies) based on which type of authentication
was used by each client.

For example, you can provide limited network access (for example to only the Active Directory servers) to
clients that have done machine authentication only, and not user authentication yet. Once user authentication
is successfully, you can then grant further access to the network based on the user credentials. Meanwhile,
you can block the access to users that have done user authentication successfully but without machine
authentication (indicating that they are connecting from unauthorized devices).

Secure Access 6.0 Study Guide 250


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

In FortiAuthenticator, you enable AD machine authentication by clicking Authentication > RADIUS Service
>Clients. Once you enable AD machine authentication, you can override the user group to clients that have
done either machine-only or user-only authentication.

Secure Access 6.0 Study Guide 251


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

MAC address bypass allows access to devices that do not support 802.1X authentication. When MAB is
enable in the security policy, and the 802.1X authentication times out, FortiSwitch conducts the authentication
on behalf of the connected device. For that purpose, FortiSwitch sends a RADIUS access request using the
device's MAC address as the username, and the encrypted device's MAC address as the password. The
FortiAuthenticator contains a list of MAC addresses that are allowed to access the network without 802.1X
authentication. If the MAC of the device is included in this list, the device is authorized.

Secure Access 6.0 Study Guide 252


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

This packets capture shows the RADIUS access request when MAB is used. It includes the FortiSwitch ID,
client MAC address (as the username), encrypted client MAC address (as the password), and FortiSwitch
MAC address (as the Calling-Station-ID).

Secure Access 6.0 Study Guide 253


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

In FortiSwitch, you enable MAC authentication bypass for each security policy.

Secure Access 6.0 Study Guide 254


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

In FortiAuthenticator, once MAC-based authentication is enabled, you must create a list of allowed MAC
addresses on the MAC Devices page. After that, you must create a MAC address user group and assign it to
the RADIUS client.

Secure Access 6.0 Study Guide 255


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

This slide shows the authentication process when 802.1X is combined with MAC address bypass. When a
physical device is connected to an 802.1X port, FortiSwitch waits for the EAPOL-Start packet.

If FortiSwitch receives an EAPOL-Start packets from the connected device, the 802.1X authentication starts.
FortiSwitch checks the credentials against a RADIUS server:

• If the credentials are invalid, and Authentication fail VLAN is enabled, traffic from the device is allowed
and assigned to the authentication-fail VLAN.
• If the credentials are invalid, and Authentication fail VLAN is disabled, traffic from the device is blocked.
• If the credentials are valid, traffic from the device is allowed and assigned to the respective user VLAN.

If FortiSwitch does not receive any EAPOL-Start packets after a certain time, the 802.1X authentication times
out and the source MAC of the device is checked:

• If MAC bypass is disabled, the traffic is assigned to the guest VLAN (or blocked if Guest VLAN is
disabled).
• If MAC bypass is enabled, but the source MAC address is not in the MAB table, the traffic is assigned to
the guest VLAN (or blocked if Guest VLAN is disabled).
• If MAC bypass is enabled, and the source MAC address is indeed in the MAB table, the traffic is allowed
and assigned to the respective user VLAN.

Secure Access 6.0 Study Guide 256


 802.1X Port Authentication

DO NOT REPRINT
© FORTINET

This slide shows the objectives that your covered in this lesson.

By mastering the objectives covered in this lesson, you learned how to configure 802.1X port authentication
on FortiSwitch and FortiAuthenticator devices.

Secure Access 6.0 Study Guide 257


 Securing Layer 2

DO NOT REPRINT
© FORTINET

In this lesson, you will learn how to configure some additional FortiSwitch features to secure Layer 2.

Secure Access 6.0 Study Guide 258


 Securing Layer 2

DO NOT REPRINT
© FORTINET

After completing this lesson, you should be able to achieve the objectives shown on this slide.

Secure Access 6.0 Study Guide 259


 Securing Layer 2

DO NOT REPRINT
© FORTINET

In this section, you will learn how to quarantine MAC addresses from FortiSwitch.

Secure Access 6.0 Study Guide 260


 Securing Layer 2

DO NOT REPRINT
© FORTINET

You can enable MAC address quarantine on FortiSwitch using the config switch-controller
quarantine command.

When you enable MAC address quarantine, FortiOS automatically adds a quarantine VLAN to the virtual
domain. FortiOS assigns all quarantined devices to the quarantine VLAN. By default, the implicit deny-all
policy blocks all traffic from the quarantine VLAN. However, you can add explicit policies to allow quarantined
devices to access some network resources, such as servers with Windows and other software updates.

Secure Access 6.0 Study Guide 261


 Securing Layer 2

DO NOT REPRINT
© FORTINET

On the Security Fabric physical and logical topology views, you can add any device to the quarantine list.

Secure Access 6.0 Study Guide 262


 Securing Layer 2

DO NOT REPRINT
© FORTINET

There are two ways of checking the list of MAC addresses that have been quarantined:

• Through the GUI under Monitor > Quarantine Monitor.

• Through the CLI with the command show switch-controller quarantine.

Secure Access 6.0 Study Guide 263


 Securing Layer 2

DO NOT REPRINT
© FORTINET

In this section, you will learn how to configure DHCP inspection.

Secure Access 6.0 Study Guide 264


 Securing Layer 2

DO NOT REPRINT
© FORTINET

One of the objectives of DHCP inspection is to protect your network against rogue DHCP servers.

Attackers install rogue DHCP servers in your network with the purpose of replying to DHCP discoveries. The
rogue DHCP server assigns to DHCP clients its own IP address as the DNS server and default gateway.

Secure Access 6.0 Study Guide 265


 Securing Layer 2

DO NOT REPRINT
© FORTINET

After the rogue DHCP server assigns the malicious default gateway and DNS, attackers start receiving clients'
traffic. Attackers can also manipulate the DNS replies to redirect client traffic to malicious external
destinations.

Secure Access 6.0 Study Guide 266


 Securing Layer 2

DO NOT REPRINT
© FORTINET

DHCP snooping is a FortiSwitch feature that prevents rogue DHCP attacks.

When configuring DHCP snooping, you must define which FortiSwitch ports are trusted and which one are
untrusted.

• Trusted ports are the ones where DHCP offer packets are expected to be received, such as the ports
where a legitimate DHCP servers are connected.
• Untrusted ports are the ones where DHCP offer packets should never be received, such as the ports
where user workstations are connected.

Secure Access 6.0 Study Guide 267


 Securing Layer 2

DO NOT REPRINT
© FORTINET

DHCP snooping inspects DHCP traffic in order to build a table that contains the MAC address, assigned IP
address, and port number for each DHCP client.

On untrusted ports, DHCP snooping blocks the following types of DHCP messages:

• DHCP offers
• Requests to decline a DHCP offer, if it is from a different port than the one that created the entry
• A DHCP release, if it is from a different port than the one that created the entry

On trusted ports, all DHCP packets are accepted.

Secure Access 6.0 Study Guide 268


 Securing Layer 2

DO NOT REPRINT
© FORTINET

DHCP snooping can optionally insert the DHCP option 82 field into the DHCP packets coming from the
clients. The option 82 field contains the VLAN ID, port ID, and FortiSwitch MAC address. This information can
help administrators to locate the devices in the network. Additionally, the DHCP server can use this
information to make assignment decisions based on the location of the device.

Secure Access 6.0 Study Guide 269


 Securing Layer 2

DO NOT REPRINT
© FORTINET

FortiSwitch inserts the option 82 field in any DHCP packets coming from a client. A DHCP server adds the
same option 82 field to the DHCP offer.

When the DHCP offer with the option 82 field arrives, FortiSwitch compares the received field with the one
sent. If they match, FortiSwitch removes the option 82 field before forwarding the DHCP offer to the client.

Secure Access 6.0 Study Guide 270


 Securing Layer 2

DO NOT REPRINT
© FORTINET

All DHCP packets includes a client hardware address field. In the case of packets coming from DHCP clients,
the hardware address field should match the Layer 2 source MAC address.

MAC verification is an optional DHCP snooping setting that drops DHCP packets in untrusted ports when the
client hardware address does not match the source MAC address.

Secure Access 6.0 Study Guide 271


 Securing Layer 2

DO NOT REPRINT
© FORTINET

You enable DHCP snooping under the interface configuration. After enabling DHCP snooping, you have the
option to enable DHCP option 82, and MAC address verification.

Secure Access 6.0 Study Guide 272


 Securing Layer 2

DO NOT REPRINT
© FORTINET

By default, all FortiSwitch ports are untrusted. Untrusted ports are displayed in the GUI as having the DHCP
Blocking setting enabled. To change a port to trusted, change the DHCP Blocking setting to disabled.

Secure Access 6.0 Study Guide 273


 Securing Layer 2

DO NOT REPRINT
© FORTINET

The output of the command diagnose switch-controller dump dhcp-snooping database shows
some general information about DHCP snooping, such as:

• List of VLANs with DHCP snooping enabled


• List of trusted ports
• List of untrusted ports
• Number of DHCP clients detected
• Number of DHCP servers detected

Secure Access 6.0 Study Guide 274


 Securing Layer 2

DO NOT REPRINT
© FORTINET

The command get switch dhcp-snooping displays the list of DHCP clients (using the client-db-
details option) and the list of DHCP servers (using the server-db-details option).

The command execute dhcp-snooping removes either a DHCP client (with the expire-client
option), or a server (with the expire-server option), from the DHCP snooping database.

Secure Access 6.0 Study Guide 275


 Securing Layer 2

DO NOT REPRINT
© FORTINET

In this section, you will learn how to work with ARP inspection.

Secure Access 6.0 Study Guide 276


 Securing Layer 2

DO NOT REPRINT
© FORTINET

A security weakness in the ARP protocol is that it allows devices to send ARP replies without any ARP
request. These packets are call gratuitous ARPs. This weakness can be exploited to execute an ARP
spoofing attack (also called an ARP poison attack).

During ARP spoofing attacks, attackers send gratuitous ARP packets using their MAC addresses, but
spoofing someone else's IP address. These gratuitous ARPs are broadcast trough out all the switch's ports,
causing all devices in the Layer 2 network to update their ARP tables.

Secure Access 6.0 Study Guide 277


 Securing Layer 2

DO NOT REPRINT
© FORTINET

As a consequence of an ARP spoofing attack, all devices start sending traffic to the attacker's machine, the
traffic destined to the spoofed IP address. The attacker can then inspect and potentially modify the traffic
before forwarding it to the device that legitimately owns the spoofed IP address.

Secure Access 6.0 Study Guide 278


 Securing Layer 2

DO NOT REPRINT
© FORTINET

ARP inspection can prevent ARP spoofing attacks. ARP inspection uses the IP-to-MAC binding table
populated by the DHCP snooping feature, to drop invalid ARP packets. An ARP packet is categorized as
invalid when the IP and MAC addresses pair does not match the information in the IP-to-MAC binding table.

For ARP request packets, ARP inspection examines the source IP and MAC addresses. For ARP replies,
ARP inspection examines both the source and destination MAC and IP addresses. The checking is done only
on packets incoming to untrusted ports.

With this feature, gratuitous ARP reply packets with spoofed IP addresses are blocked, because they do not
match the information in the IP-to-MAC binding table.

Because ARP inspection relies on the use of the IP-to-MAC binding table, it must work in conjunction with the
DHCP snooping feature.

Secure Access 6.0 Study Guide 279


 Securing Layer 2

DO NOT REPRINT
© FORTINET

ARP inspection is enabled at the VLAN level. Each port is then configured as trusted or untrusted.

Secure Access 6.0 Study Guide 280


 Securing Layer 2

DO NOT REPRINT
© FORTINET

The output of the command diagnose switch arp-inspection stats shows general statistics about
the ARP inspection feature, including number of ARP requests and replies that have been received,
forwarded, and dropped. You can clear these statistics using the command diagnose switch arp-
inspection stats clear.

Secure Access 6.0 Study Guide 281


 Securing Layer 2

DO NOT REPRINT
© FORTINET

In this section, you will learn about the different mechanisms that FortiSwitch has to detect and avoid network
loops.

Secure Access 6.0 Study Guide 282


 Securing Layer 2

DO NOT REPRINT
© FORTINET

The spanning tree protocol (STP) detects and disables switch ports that create network loops. It automatically
builds a network topology free of loops by blocking redundant ports. Switches running STP build this loop-free
topology by interchanging bridge protocol data unit (BPDU) frames.

There are different types of STP protocols. FortiSwitch managed by FortiGate supports the common STP,
which is described in the 802.1d IEEE standard. FortiSwitches operating in standalone mode also supports
multiple spanning tree protocol (802.s).

Secure Access 6.0 Study Guide 283


 Securing Layer 2

DO NOT REPRINT
© FORTINET

In STP 802.1d, any switch port can be in one of the following five states:

Disable: The port is not sending or receiving BPDU frames. The port is also not forwarding user traffic
Blocking: The port is listening to incoming BPDU frames, but does not send any BPDU frames. The port is not
learning MAC addresses, or forwarding user traffic.
Listening: Similar to the blocking state, but the port is both receiving and transmitting BPDU frames.
Learning: The port interchanges BPDU frames and learns MAC addresses, but does not forward user traffic
yet.
Forwarding: The port interchanges BPDU frames, leans MAC addresses, and forwards user traffic. This is
normal state for an active port.

A port in blocking state must go through listening and learning states, before ending in forwarding state.

Secure Access 6.0 Study Guide 284


 Securing Layer 2

DO NOT REPRINT
© FORTINET

These are the steps that STP follows to build the loop-free topology:

1. Each switch is assigned an STP priority. When STP starts, all switches start sending BPDU frames
containing their priorities. The switch with the lowest priority is elected the root switch. All the ports in the
root switch are moved to forwarding state.

2. After the root switch is elected, all the other switches stop generating BPDU frames. Only the root switch
keeps generating BPDU frames.

3. All the non-root switches receive the BPDUs coming from the root, and add their port's cost to the total-
cost-to-the-root field, before forwarding the BPDUs to other switches.

Secure Access 6.0 Study Guide 285


 Securing Layer 2

DO NOT REPRINT
© FORTINET

4. Ports in non-root switches that receive the BPDUs with the lowest total-cost-to-the-root value are moved
to forwarding state. They become root ports.

Secure Access 6.0 Study Guide 286


 Securing Layer 2

DO NOT REPRINT
© FORTINET

5. In each LAN segment, a designated port is elected, based on the cost to the root, the switch priority, and
the port priority. The designated port for each LAN segment is moved to forwarding state.
6. All the other ports remain in blocking state.

Secure Access 6.0 Study Guide 287


 Securing Layer 2

DO NOT REPRINT
© FORTINET

There are four switch-controller settings related to STP:

hello-time: How frequent the root switch sends the BPDUs. The default is 2 seconds.
forward-time: Time that a port remains in listening state before moving to learning state. It is also the time
that a port remains in learning state before moving to forwarding state. The default is 15 seconds.
max-age: If a port has not received any BPDU during this time, the switch assumes that the network topology
has changed and STP recalculation is required. Usually, if the port was in blocking state, it is moved to
listening, learning, and forwarding state. If the port is a root port, a new root port is elected.
max-hops: The maximum number of switches between the root switch and the furthest switch. This
parameter sets a limit to the size of your Layer 2 network.

Secure Access 6.0 Study Guide 288


 Securing Layer 2

DO NOT REPRINT
© FORTINET

Loop guard is another loop-detection mechanism available in FortiSwitch. This feature is not meant to be a
replacement of spanning tree, but to complement it.

With loop guard, FortiSwitch periodically sends loop guard data packets (LGDPs). If the sending switch
subsequently receives an LGDP packet, a loop exists and the sending port is shut down.

Secure Access 6.0 Study Guide 289


 Securing Layer 2

DO NOT REPRINT
© FORTINET

When loop guard detects a loop, the loop guard timeout defines the time the port will remain shut down.

If the loop guard timeout is set to zero and a loop is detected, the port remains shut down until you manually
reset its loop-guard status, with the command execute switch-controller loop-guard-reset.

You can use the command diagnose loop-guard instance status to check the loop guard status for
all ports.

Secure Access 6.0 Study Guide 290


 Securing Layer 2

DO NOT REPRINT
© FORTINET

If you know that only end devices (and not other switches) will always be connected to a FortiSwitch port, you
can set it as edge port. This has the following advantages:

• The port can go directly from blocking state to forwarding state, avoiding the 30-seconds delay caused by
the listening and learning states.
• Port flapping does not cause STP recalculations.

An edge port learns MAC addresses and forwards user traffic. An edge port does not send BPUDs and is not
part of the STP topology.

You can use BPDU guard to protect edge ports from forming accidental loops. BPDU guard shuts down an
edge port if it receives a BPDU, because it means that a switch was connected by mistake, and there is the
potential of creating a network loop.

Secure Access 6.0 Study Guide 291


 Securing Layer 2

DO NOT REPRINT
© FORTINET

In an STP network, an attacker could potentially connect a rogue switch with a very low priority value to your
network. This will trigger an STP recalculation and the rogue switch might become the root switch. Root guard
offers a mechanism to protect your network against rogue or misconfigured switches. Root guard is enabled in
ports that will never be used to reach the root switch. In other words, administrators usually enable root guard
in ports where downstream switches are connected. With root guard, a port ignores any BPDU with a cost-to-
root lower than the one received by the existing root port. So, ports where root guard is enabled can never
become root ports.

Secure Access 6.0 Study Guide 292


 Securing Layer 2

DO NOT REPRINT
© FORTINET

In this section, you will learn about other FortiSwitch features for protecting your Layer 2 network.

Secure Access 6.0 Study Guide 293


 Securing Layer 2

DO NOT REPRINT
© FORTINET

The MAC learning limit sets controls on the maximum number of MAC addresses that a port or VLAN can
learn. It applies to dynamically learned MAC addresses, not to static MAC addresses.

If the limit is reached, frames from new MAC addresses are dropped.

Secure Access 6.0 Study Guide 294


 Securing Layer 2

DO NOT REPRINT
© FORTINET

The discard mode parameter, at the port level, sets restrictions regarding the type of 802.1q frames that
FortiSwitch accepts:

none: Accepts both tagged and untagged frames


all-tagged: Discards all untagged traffic
all-untagged: Discards all tagged traffic

Secure Access 6.0 Study Guide 295


 Securing Layer 2

DO NOT REPRINT
© FORTINET

By default, traffic between clients connected to the same VLAN and the same FortiSwitch does not go through
the FortiGate. This traffic is locally handled by the FortiSwitch.

With access VLANs, all traffic between clients (even traffic between clients in the same VLAN and switch)
goes through the FortiGate. This allows you to inspect and control intra-VLAN traffic. Firewall policies are
required to allow the intra-VLAN traffic, which can now be inspected by FortiGate.

Secure Access 6.0 Study Guide 296


 Securing Layer 2

DO NOT REPRINT
© FORTINET

DHCP snooping dynamically creates an IP-to-MAC binding table. You can also create a static IP-to-MAC
binding table with these commands. This is a FortiOS feature that you can use with or without FortiSwitch.
FortiGate drops the packet if the source IP and MAC addresses do not match the information in the static IP-
to-MAC binding table.

Secure Access 6.0 Study Guide 297


 Securing Layer 2

DO NOT REPRINT
© FORTINET

A Layer 2 storm is an usually high level of some type of traffic that can disrupt user traffic. The types of traffic
that could potentially create storms are broadcast, unicast to invalid destinations (unknown unicast), and
multicast to invalid destinations (unknown multicast).

STP misconfiguration, network loops, faulty network cards, and attacks can cause Layer 2 storms.

Secure Access 6.0 Study Guide 298


 Securing Layer 2

DO NOT REPRINT
© FORTINET

FortiSwitch has a mechanism, called storm control, for detecting and blocking Layer 2 storms. You enable
storm control by configuring a maximum rate at either the global or switch level. You can apply this rate to
unknown unicast, unknown multicast, and broadcast traffic. When the traffic exceeds the specified threshold,
storm control drops the exceeded traffic

Secure Access 6.0 Study Guide 299


 Securing Layer 2

DO NOT REPRINT
© FORTINET

This slide shows the objectives that you covered in this lesson. By mastering the objectives covered in this
lesson, you learned how to configure additional features that secure Layer 2.

Secure Access 6.0 Study Guide 300


 Wireless

DO NOT REPRINT
© FORTINET

In this lesson, you will learn to configure and use integrated wireless features on FortiOS.

Secure Access 6.0 Study Guide 301


 Wireless

DO NOT REPRINT
© FORTINET

After completing this lesson, you should be able to achieve the objectives shown on this slide.

Secure Access 6.0 Study Guide 302


 Wireless

DO NOT REPRINT
© FORTINET

In this section, you will learn about Fortinet’s secure access wireless offering.

Secure Access 6.0 Study Guide 303


 Wireless

DO NOT REPRINT
© FORTINET

Fortinet offers multiple deployment solutions for secure wireless. Infrastructure solutions consist of
FortiWireless Controller (FortiWLC) that are dedicated devices used only as the wireless controller. The
integrated solution uses the FortiOS integrated wireless controller which is available on all FortiGate devices
including VMs. Fortinet devices also have the option to manage FortiAP using FortiCloud management
features. In this deployment mode, you can provision and manage using Fortinet’s cloud-based service. This
course focuses on the integrated wireless solution only.

Secure Access 6.0 Study Guide 304


 Wireless

DO NOT REPRINT
© FORTINET

It is important to note that not all FortiAP models support all types of wireless deployment modes. When
choosing a FortiAP for your deployment, make sure to select the model that works well for your network.

FortiAP-U (Universal) models work with all types of deployment mode, including the FortiWLC. FortiAP-U
models provide flexibility to automatically and manually connect to all Fortinet management platforms. You
can choose to redeploy AP to any Fortinet wireless deployment.

The FortiAP series is a family of controller-managed access points which function in cooperation with a
FortiGate Wireless LAN controller. This series of access points (APs) include single and dual-radio 802.11ac
APs. FortiAP series models support two types of deployment modes, integrated (FortiGate) and FortiCloud
deployments.

The FortiAP-S (Smart) Series is a family of single and dual-radio 802.11ac APs designed for deployment in
small and medium business (SMBs) and distributed enterprise sites. They contain advanced security
functions embedded in the AP hardware. Equipped with extra memory and twice the processing power of
typical thin APs, they can perform real-time security processing at the network edge, not in the cloud or on the
corporate LAN.

The FortiAP-C (Cloud) series are cloud-managed APs offering zero-touch provisioning to support enterprises
with remote sites requiring basic wireless LAN connectivity.

Secure Access 6.0 Study Guide 305


 Wireless

DO NOT REPRINT
© FORTINET

This slide shows some of the benefits of using the Infrastructure solution. Infrastructure mode is well-suited for
large and high-demand environments because it provides scalability with minimum latency. It uses a
dedicated wireless controller that manages all deployed APs. It also provides channel planning flexibility,
which can minimize deployment time. Because you need a separate wireless controller, you can deploy the
wireless solution without altering the existing network infrastructure. Wireless Controllers are designed for use
in a broad variety of settings, including classrooms, lecture halls, hotels, stadiums, and hospitals. Fortinet
Infrastructure supports single-channel architecture for zero-handoff.

Secure Access 6.0 Study Guide 306


 Wireless

DO NOT REPRINT
© FORTINET

Fortinet’s Integrated Wireless solution provides single-pane-of-glass management for security and access.
The Integrated Wireless solution includes the FortiGate network security platform, FortiAP access points, and
centralized management. FortiGate consolidates WLAN control, firewall, VPN gateway, network IPS, DLP,
malware protection, web filtering, application control, and endpoint control in a single device.

Secure Access 6.0 Study Guide 307


 Wireless

DO NOT REPRINT
© FORTINET

Fortinet’s Cloud solution is ideal for small businesses or companies that have multiple remote offices that
require wireless access. Fortinet’s Cloud Wi-Fi solutions offer advanced security protection at the edge
without the need for WLAN controllers and on-premises management servers. Cloud Wi-Fi security includes
IPS, L7 application control, antivirus and anti-botnet, and web filtering. You provision and manage FortiAPs
using only FortiCloud without the need of an on-site or a remote controller. FortiAP smart series devices are
ideal for this type of deployment because they offer the built-in ability to scan and block security threats to the
network.

Secure Access 6.0 Study Guide 308


 Wireless

DO NOT REPRINT
© FORTINET

Fortinet’s Secure Access solution includes access points, switches, and a firewall. This slide shows a high-
level deployment diagram.

In the example shown on this slide, the FortiAPs are connected to a power over Ethernet (or PoE) FortiSwitch.
That switch then connects to a FortiGate firewall, using a FortiLink connection, which effectively integrates all
switch management and configuration functions into the FortiGate management interface.

The traffic path flow is straightforward. The AP’s management traffic goes directly to FortiGate. The user or
device access path goes to the switch and then to FortiGate. User traffic is monitored and secured on the AP,
sent through the switch, through the firewall, and out to the Internet or other destination.

Management=HTTP, SSH, and so on


Control=CAPWAP control
Data=user traffic

Secure Access 6.0 Study Guide 309


 Wireless

DO NOT REPRINT
© FORTINET

In this section, you will learn how to provision and manage FortiAPs using FortiGate.

Secure Access 6.0 Study Guide 310


 Wireless

DO NOT REPRINT
© FORTINET

Control and Provisioning of Wireless Access Points (CAPWAP) is a network protocol that you can use to
provision and manage FortiAPs using FortiGate. CAPWAP allows an access controller (AC) to manage a
collection of wireless APs. In Fortinet’s integrated wireless solution, CAPWAP enables you to manage
configuration and device, and push firmware upgrades to FortiAPs.

CAPWAP uses UDP port 5246 as the control channel and 5247 as the data channel. CAPWAP enabled
devices can create a secure data channel to AC using DTLS encryption. CAPWAP provides direct
adminstrator access to a FortiGate interface, so it must be enabled on the interface that the FortiAPs will be
connecting to.

The CAPWAP discovery process:


1. FortiAPs send a discovery request. FortiGate responds with a discovery response.
2. Both devices establish a secure DTLS session.
3. After FortiGate authorizes the FortiAP, the CAPWAP discovery and join phase takes place.
4. After the CAPWAP tunnel is established, FortiGate sends all required management and WLAN-
related configuration to FortiAP.

Secure Access 6.0 Study Guide 311


 Wireless

DO NOT REPRINT
© FORTINET

By default, the FortiAP discovery method is set to auto, which means the AP will cycle through the discovery
methods and sequence shown on this slide to locate a wireless controller. For every discovery type, FortiAP
sends out discovery requests and sets a timer for an interval of a random number of seconds (between 2-180,
the default is five seconds). Using the FortiGate CLI, you can modify this value with the following command:
config wireless-controller timers
set discovery-interval 5
end
After about 3-15 seconds, if FortiAP has no AC connection, it will switch to another discovery type and repeat
the above process until the last one (broadcast) fails, which will lead to SULKING state. After approximately
30 seconds, FortiAP will enter the AC_IP_DISCVER state. After the AC IP is found, it will enter the IDLE state,
and will eventually enter the DISCOVERY state, then repeat the process.You can use static IP or DNS
hostname methods when the AP is not deployed on the same subnet as the wireless controller and cannot be
reached by the multicast or broadcast method. You must make this configuration change on the FortiAP
devices manually before deploying them. You can configure a static IP or DNS on a FortiAP using the GUI or
CLI. You can also use the serial port on FortiAP to make this configuration change.

By default, FortiAP uses DHCP option 138 to receive the wireless controller`s IP address. You need to
convert the IP address of the wireless controller into hexadecimal. Convert each octet value separately from
left to right and concatenate them. For example, 192.168.0.1 converts to C0A80001. If Option 138 is used for
some other purpose on your network, you can use a different option number if you configure the AP units to
match. The AP unit sends a multicast discovery request and the controller replies with a unicast discovery
response message to the AP. The AP and the controller do not need to be in the same broadcast domain if
multicast routing is properly configured. The default multicast destination address is 224.0.1.140. You can
change it using the CLI, but you must make the changes to both the controller and to the AP.

Secure Access 6.0 Study Guide 312


 Wireless

DO NOT REPRINT
© FORTINET

An AP profile defines management and radio settings for a single or set of APs. The AP profile contains
configuration commands that will be pushed to an AP after you authorize it on FortiGate. FortiGate uses the
AP profile to push all the required configuration settings to an AP, including SSID, radio, and management.

The platform parameter within an AP profiles helps FortiGate identifies which hardware is available on an AP.
The Platform and managed AP model must match otherwise FortiGate will not let you apply the AP profile to
an AP. You can configure an AP profile using the FortiGate GUI or CLI using the syntax shown on the slide.

Secure Access 6.0 Study Guide 313


 Wireless

DO NOT REPRINT
© FORTINET

FortiGate automatically assigns a default AP profile to an AP when it is discovered and manually authorized.
Once a CAPWAP tunnel is established between a FortiGate and an AP, FortiGate uses the CAPWAP control
channel to push all AP profile parameters to the AP. It is important to note that you can assign an AP profile to
one or multiple APs but you cannot assign multiple profiles. All APs that use the same AP profile will all
receive same set of configuration from FortiGate. The AP profile includes the operating mode of the device,
transmit power, and radio settings, as well as the SSID configuration that is pushed to an AP.

For more flexibility and granularity, you can override the AP profile configuration on per-AP basis. You must
still assign an AP profile to an AP but you can modify the configuration per AP. You must apply the per-AP
configuration on the CLI using the following syntax:
# config wireless-controller wtp
(wtp) # edit <AP S/N>

Secure Access 6.0 Study Guide 314


 Wireless

DO NOT REPRINT
© FORTINET

You must configure the FortiGate interface to which you connect your wireles AP with an IP address and
enable CAPWAP access on it. CAPWAP is an administrative access. By default, it is disabled on all FortiGate
interfaces. To prevent discovering rogue APs on other FortiGate interfaces, you should enable CAPWAP
access only on the interface(s) that you will use for AP connections.

Using the CLI on FortiGate, you can configure the FortiGate DHCP server to assign IP address only to
FortiAPs using a VCI string. Once an AP discovers FortiGate, appear on the Managed AP page on the
FortiGate GUI.

Secure Access 6.0 Study Guide 315


 Wireless

DO NOT REPRINT
© FORTINET

After FortiGate discovers an AP, you must authorize FortiAP to establish a CAPWAP tunnel between an AP
and FortiGate. When you authorize a FortiAP, it uses the default FortiAP profile that is determined by AP
model. You can create and select a different profile if needed. The FortiAP profile defines the entire
configuration for the AP. Once a CAPWAP tunnel is established between the two devices, you will see a
green checkmark beside the listed FortiAP. It indicates that FortiAP can communicate with FortiGate and has
received the configuration.

You can also authorize discovered APs using the FortiGate CLI. However, you must authorize the APs one-
by-one using the following commands:
config wireless-controller wtp
edit <AP S/N>
set admin enable
end

Secure Access 6.0 Study Guide 316


 Wireless

DO NOT REPRINT
© FORTINET

FortiGate allows you to preauthorize FortiAPs that will be added to your network. You must add all FortiAPs
manually, one-by-one to FortiGate using the AP`s serial number. After the preauthorized FortiAPs come
online and are discovered by FortiGate, FortiGate authorizes the FortiAPs
automatically. FortiGate will establish a CAPWAP tunnel to the FortiAPs and push the configuration to them
based on the assigned AP profile.

Secure Access 6.0 Study Guide 317


 Wireless

DO NOT REPRINT
© FORTINET

There are three ways to limit the number of clients that can connect to a wireless network. You can limit the
number of clients that can connect to an SSID, or to an AP, or to a radio on an AP. Limiting the number of
clients that are associated on a radio or an AP can help increase the performance and more efficiently load-
balance wireless clients.

An SSID limits the number of clients that can connect to a wireless network regardless of which AP they are
on. The SSID applies this to all APs that are broadcasting the SSID. You can apply the client limit for an SSID
on the SSID configuration page in the GUI, or in the CLI in the config wireless-controller vap
settings.

Limiting number of clients that can associate with an AP or radio will affect all SSIDs that are being
broadcasted by the AP. It is important to note that some AP models have more radios than others and can
handle more traffic. When limiting the number of clients for an AP keep that in mind and make the
adjustments accordingly.

If an AP has more than one radio, you must make the changes on all radios. Otherwise, AP will enforce only
the settings for a single radio and, as a result, you may see more clients associating with an AP. You must
make this change in the AP profile configuration using the CLI on FortiGate.

Secure Access 6.0 Study Guide 318


 Wireless

DO NOT REPRINT
© FORTINET

AP handoff is a load-balancing method that is used by FortiGate to increase wireless performance and use
the resource on APs more efficiently. AP hand-off is a way of load balancing wireless clients among managed
APs on FortiGate. If an AP is overloaded and the maximum number of clients is configured for an AP or radio,
FortiGate will drop the client that has weakest signals and connect the client to a nearby AP.

The RSSI value threshold defined in the AP profile is used when client tries to connect to the second AP. The
client`s signal strength must be equal to or more than the defined RSSI value on the AP. Signal strength is
determined based on the RSSI value–a higher RSSI value means better signal strength.

Handoff-sta-thresh defines the value after which the handoff protocol is initiated for new client.
FortiGate will instruct the least busy nearby AP to respond to the join request for any new client that tried to
connect to an overloaded AP as long as the configured RSSI value condition is met. You must enable the AP-
handoff feature on all radios on an AP.

Secure Access 6.0 Study Guide 319


 Wireless

DO NOT REPRINT
© FORTINET

Frequency hand-off is a band steering technique that FortiGate uses to encourage clients to use the 5GHz
frequency instead of 2.4 GHz. Clients that support 5GHz frequency benefit from faster speeds and decreased
interference. This also benefits clients that do not support 5GHz because there will be less interference on
2.4GHz because of the reduced number of clients. FortiGate continuously probes the clients to identify if they
can operate on the 5GHz frequency. FortiGate maintains a table to track which clients support both
frequencies, and records the RSSI value along with the other information for each frequency.

When a client tries to connect, FortiGate checks whether it can support 5GHz and, if so, how good the signals
are. If a client supports the 5GHz frequency and the signal is strong enough to connect, FortiGate will ignore
the client’s requests to join the network on 2.4GHz until the request times out. The client will then
automatically try to join the same network using 5GHz. FortiGate will instruct the AP to respond to the join
request and allow the client to connect.

Secure Access 6.0 Study Guide 320


 Wireless

DO NOT REPRINT
© FORTINET

CAPWAP tunnel overhead can increase packet size which can result in fragmentation. Fragmentation occurs
when an IP packet is larger than the allowed MTU size. Fragmentation can cause issues such as data loss,
latency, decreased throughput, and, in some cases the inability to manage FortiAPs.

One of the solutions to this problem is to control the packet size on the managed APs. You can decrease the
MTU size for CAPWAP tunnels by modifying the uplink and downlink tunnel MTU size in the AP profile
configuration on the CLI. You can also override this setting for specific AP, instead of modifying it, using the
AP profile.

Secure Access 6.0 Study Guide 321


 Wireless

DO NOT REPRINT
© FORTINET

In this section, you will learn how to configure and broadcast SSID on FortiOS.

Secure Access 6.0 Study Guide 322


 Wireless

DO NOT REPRINT
© FORTINET

You can configure three types of SSIDs on FortiGate:- tunnel mode, bridge mode, and wireless mesh.

By default, tunnel mode SSID is selected when you define an SSID on FortiGate. In this mode, all traffic within
CAPWAP DTLS or non-DTLS tunnels are sent to FortiGate before it is allowed on the LAN or the Internet.
There are two main advantages to using this mode:
1. Traffic is subject to firewall policies and security threat scanning. Traffic must go through a security
profiles inspection and firewall policies examination before it is placed on the egress interface. This
ensures that all security threats are addressed before a device is given access to internal or external
resources.
2. Traffic is processed at the session level. This gives FortiGate complete visibility of user and device
activities on the network. FortiGate can track and log user activities and control access at the user level.

In local bridge mode SSID, wireless traffic is bridged directly to the local LAN that the AP is connected to. This
mode is useful when deploying APs at remote locations that connect to a wireless controller over a WAN link.
To ensure all traffic is scanned for security threats, consider deploying smart-series APs in this type of
deployment.

Wireless mesh SSID is used strictly as a backhaul SSID to connect to the root AP in a mesh deployment.

Secure Access 6.0 Study Guide 323


 Wireless

DO NOT REPRINT
© FORTINET

Tunnel SSID is treated as a separate virtual interface on FortiGate. As such, it requires interface configuration
such as IP address, administrative access services, DHCP, and so on.

Secure Access 6.0 Study Guide 324


 Wireless

DO NOT REPRINT
© FORTINET

Wireless configuration is available on the GUI on the SSID configuration page. Here, you can configure all
SSID related configuration, such as SSID name, security mode, authentication options, SSID client limit, intra-
SSID settings, and so on.

If you are using WPA2 Personal security mode, you can now configure multiple preshared keys and set the
client limit on each key. This option allows you to have multiple pre-shared keys attached to a single SSID
network. Both tunnel and bridge mode SSIDs have the same configuration option. However, bridge mode
SSID does not have interface settings available because the traffic is bridged to FortiAPs Ethernet network.

Secure Access 6.0 Study Guide 325


 Wireless

DO NOT REPRINT
© FORTINET

It is important to note that, depending on the settings configured, FortiGate will hide or display applicable
settings on the GUI automatically. For example, if WPA2 Personal security mode is selected, FortiGate will
not display the option to configure authentication. This also applies to options such as local authentication,
Multiple Pre-Shared Keys, and so on, that are available only for the WPA2 Personal option only.

Secure Access 6.0 Study Guide 326


 Wireless

DO NOT REPRINT
© FORTINET

The option to add dynamic VLANs to SSID is available on FortiGate in both tunnel and bridge mode. You can
apply dynamic VLAN to SSID that have the security mode set to WPA2 Enterprise with RADIUS Server
authentication. The RADIUS server is responsible for sending all the required attributes after a successful
authentication. The RADIUS server must send the following attributes to the FortiGate:
• IETF 64 set it to VLAN–this attribute tells FortiGate that VLAN information is attached to the RADIUS
response.
• IETF 65 set it to IEEE 802–this attribute tells FortiGate that the IEEE 802 attribute is attached to the
RADIUS response.
• IETF 81 set it to VLAN ID–this attribute tells FortiGate to attach the user to the specified VLAN ID interface.

You must configure all the VLANs on FortiGate along with corresponding firewall polices.

Secure Access 6.0 Study Guide 327


 Wireless

DO NOT REPRINT
© FORTINET

You can put FortiAPs in a group of two or more APs to easily manage them. For example, you can group APs
based on the floor or section of the office they are installed on. You must configure managed AP groups
before you can use them in the VLAN pooling configuration.

You can then use FortiAP groups to dynamically assign VLANs to wireless clients based on the APs that they
connect to. This feature is useful in large deployments and can break down the broadcast domain rather than
putting all wireless clients into a single subnet. Another advantage of assigning VLANs based on APs is to
apply security inspections and firewall rules based on the location of wireless clients. This provides you with
more granular control over wireless traffic.

You can define VLANs and assign them to AP groups on the SSID configuration page on the GUI. However,
you will still need to manually configure interface settings such as network, administrative access, DHCP
server configuration, and so on.

Secure Access 6.0 Study Guide 328


 Wireless

DO NOT REPRINT
© FORTINET

There are two more options available in the VLAN pooling configuration that provide load balancing options
for wireless clients:– Round Robin and Hash. Once you enable VLAN Pooling on SSID, you have the option
to use Managed AP Groups, Round Robin, or Hash.

Similar to Managed AP Group configuration, you can define VLANs directly on the SSID configuration page
for both the Round Robin and Hash options. Round Robin will assign the least busy VLAN to new clients.
Hash will identify which VLAN to use based on the hash value of the current number of clients connected to
the SSID and the number of VLANs available in the pool.

VLAN Pooling load balancing is only available for SSIDs operating in tunnel mode.

Secure Access 6.0 Study Guide 329


 Wireless

DO NOT REPRINT
© FORTINET

You can define VLAN pooling and load balancing VLANs on the SSID configuration page. FortiGate will
automatically put all load balancing VLANs in a zone based on the SSID they were defined in. VLANs are tied
to the SSID interface. The zone name includes the SSID interface name followed by .zone. For example, if
you name your SSID interface Fortinet, then the zone will be named Fortinet.zone.

You must configure each VLAN with its own interface option, such as subnet, DHCP, and so on.

Secure Access 6.0 Study Guide 330


 Wireless

DO NOT REPRINT
© FORTINET

Before an SSID is used, you must apply it to an AP profile so that APs can broadcast information for clients to
connect to. If you do not apply the SSID to an AP profile, it will remain as a configuration on FortiGate, but
FortiGate will not push it will not push to APs. APs must receive the SSID configuration from FortiGate before
they can broadcast it. By default, AP profiles are configured to automatically inherit all SSIDs in a tunnel mode
configuration and push them to APs. However, you must manually select SSIDs in bridge mode in the AP
Profile.

Secure Access 6.0 Study Guide 331


 Wireless

DO NOT REPRINT
© FORTINET

In this section, you will learn how to troubleshoot wireless issues.

Secure Access 6.0 Study Guide 332


 Wireless

DO NOT REPRINT
© FORTINET

When troubleshooting wireless issues, you must first identify if the issue is affecting all or only some APs.
Communication between FortiGate and FortiAPs must be stable at all times to ensure that wireless client
traffic is not interpreted. Network latency can also cause issues with the FortiAP connection. If the network is
saturated enough to cause significant delays between the keepalive packets that FortiAP exchanges with
FortiGate, FortiAP might drop the connection with FortiGate. This will cause FortiAP to re-establish a
CAPWAP tunnel that will cause wireless clients connected to the tunnelled SSID to disconnect as well.

Make sure that all trusted APs are authorized and connected to FortiGate. In some cases, it may be better to
use static IP on FortiAPs rather than relying on DHCP. FortiGate will log all AP drop instances and you can
look for key message such as “AP <s/n> left”. You can also review the AP join time, which lists when the AP
joined FortiGate and established CAPWAP tunnel.

Secure Access 6.0 Study Guide 333


 Wireless

DO NOT REPRINT
© FORTINET

You can capture communication between FortiGate and FortiAP on the CAPWAP control channel port. This
can be useful when troubleshooting CAPWAP tunnel negotiation issues. If FortiAP is unable to establish a
successful connection to FortiGate, capturing packets on port 5246 will help determine the root cause of the
problem. Use verbose 6 to capture the traffic that can be converted to wireshark compatible format.

In rare cases, the FortiGate daemon may crash and cause APs to fail. Please check crash logs on FortiGate
and use the cw_diag kernel-panic command on FortiAP for any kernel-related issues. You can also
enable the application debug command on FortiGate to check in which state the AP fails to join the controller.

Secure Access 6.0 Study Guide 334


 Wireless

DO NOT REPRINT
© FORTINET

This slide shows some of the common client connectivity issues that you might experience. Most of the issues
are usually related to configuration mismatch or driver issues on the client side. Make sure the client is
running an up-to-date wireless adapter driver and there is no configuration mismatch. Check FortiGate logs
for clues as to which state is failing. If you are using WPA2 Enterprise authentication, make sure user
authentication is not the issues. This information will be available in the FortiGate logs. If authentication
succeeds but the client is unable to obtain an IP, check your DHCP configuration and ensure that you have an
available IP address in the DHCP pool.

If you are experiencing the issue only on an specific client, try to narrow down variables such as Wi-Fi chipset
manufacturer, OS version, and so on. If you have access to a problematic client, you can also use real-time
debug on the FortiGate to check in which state the association is failing.

Secure Access 6.0 Study Guide 335


 Wireless

DO NOT REPRINT
© FORTINET

Wireless is a shared medium, which means it is hard to control what goes on over the air. Data rate does not
mean actual data throughput between the devices. Intermittent and performance related issues with wireless
are usually related to interference. Interference-related issues can be very hard and tricky to figure out without
proper tools or knowledge. Devices that emit radio frequency using the same channel, a co-channel, or an
adjacent channel can cause performance issues. Selecting the proper Wi-Fi channel can significantly improve
your Wi-Fi coverage and performance.

Coherent interference is caused by another device that is operating on the same channel as your AP.
Throughput can be very slow because all users have to wait for their turn to transmit but there is no collision. If
you deploy multiple APs close to each other without adjusting Transmit power or channels, you will cause
interference in your own network!

Non-coherent interference is caused by other radio signals, such as Bluetooth, microwave, cordless phone, x-
ray machine, and so on, from devices such as other cordless phones, wireless video camera, microwaves,
and can result in weak and/or poor wireless performance.

Secure Access 6.0 Study Guide 336


 Wireless

DO NOT REPRINT
© FORTINET

When deploying a wireless network, proper planning and design is the key to a successful deployment. A site
survey is crucial to ensure network coverage and performance requirements are met for the wireless network
deployment. You need to keep it in mind that a good 2.4GHz frequency does not mean you will get the same
coverage for a 5GHz frequency. Perform a spectrum analysis for both frequencies and optimize your network
configuration to use the best operating channel. Ensure that APs that have signal overlap do not negatively
affect your wireless network. Use DARRP and AP hand-off and frequency hand-off features. They will help
ensure that available resources are managed properly.

Secure Access 6.0 Study Guide 337


 Wireless

DO NOT REPRINT
© FORTINET

This slide shows the objectives that you covered in this lesson.

Secure Access 6.0 Study Guide 338


 Guest Access

DO NOT REPRINT
© FORTINET

In this lesson, you will learn to configure and use integrated wireless features on FortiOS.

Secure Access 6.0 Study Guide 339


 Guest Access

DO NOT REPRINT
© FORTINET

After completing this lesson, you should be able to achieve the objectives shown on this slide.

Secure Access 6.0 Study Guide 340


 Guest Access

DO NOT REPRINT
© FORTINET

In this section, you will learn about managing guest access using FortiGate.

Secure Access 6.0 Study Guide 341


 Guest Access

DO NOT REPRINT
© FORTINET

FortiGate provides multiple ways to securely manage guest access for wireless networks. You can deploy a
completely separate wireless network using the existing hardware. FortiGate uses virtual ap (vap) to deploy
multiple SSIDs that are completely isolated from each other. This allows you to have complete control over
the traffic, including the ability to assign firewall policies, security profiles, and so on.

FortiGate also has a local captive portal that you can use as a landing page for guests before they are allowed
to access the network or local resources. To manage secure guest access, FortiGate offers local guest
management tools that you can use to temporarily create and distribute guest accounts. Alternatively, you can
redirect guests to an external captive portal server for authentication, disclaimer, and so on. FortiGate will
allow access to resources only after it receives a valid response from the external server.

Secure Access 6.0 Study Guide 342


 Guest Access

DO NOT REPRINT
© FORTINET

You should deploy a separate SSID server guests that do not require access to a corporate or private
network. You can deploy multiple SSIDs using the same hardware. Separate SSIDs means, you will have full
control over network traffic flow. You should deploy a guest access SSID in tunnel mode to ensure that all
traffic is sent to FortiGate using a CAPWAP data control channel. This will ensure that FortiGate maintain full
control over the traffic flow and can apply security profiles to eliminate security threats before placing the
traffic on the egress interface.

You can use a local or external captive portal to provide guests with a landing page. Furthermore, you can
use a captive portal to display a disclaimer and/or authenticate guest users using guest accounts. Because
you will be using a separate wireless network for guest access, you can choose to broadcast the network on
APs that are installed in locations where you expect guest users to be.

Secure Access 6.0 Study Guide 343


 Guest Access

DO NOT REPRINT
© FORTINET

The captive portal is used as a landing page after a user connects to a network. This is mostly used for guest
access and networks that require a disclaimer. You can also authenticate your users on a captive portal page
that requests the user’s name and password. Until the user authenticates successfully, the authentication
page is returned in response to any HTTP request. After successful authentication, the user accesses the
requested URL and can access other web resources, as permitted by security policies. Optionally,
the captive portal itself can allow web access to only the members of a specified user group.

Secure Access 6.0 Study Guide 344


 Guest Access

DO NOT REPRINT
© FORTINET

There are three types of captive portals that you can enable on an interface: Authentication, Disclaimer with
Authentication, and Disclaimer only.

Authentication request users to authenticate before they are allowed access to network.

Disclaimer with Authentication presents users with a disclaimer page and an authentication page. The user
must accept a disclaimer and authenticate successfully in order to get network access.

Disclaimer Only will presents users with a disclaimer page. In this case, users do not have to authenticate
using a username and password. They will be allowed to access the network after they accept a disclaimer
page.

Secure Access 6.0 Study Guide 345


 Guest Access

DO NOT REPRINT
© FORTINET

Once you select Authentication for the Portal Type, you will have the option to select Local or External for
the Authentication Portal. Setting Authentication Portal to Local will use FortiGate built-in portal page. All
the portal configuration including the web page that is presented to the users as a landing page, are hosted on
FortiGate.

For external captive portals, you can select External for the Authentication Type and enter the FQDN or IP
of the external captive portal server. In this case, FortiGate will redirect the users to the specified server
address. Once the user meets the requirements of the external captive portal server, FortiGate will allow user
access based on the firewall policy configurations.

Secure Access 6.0 Study Guide 346


 Guest Access

DO NOT REPRINT
© FORTINET

By default, FortiGate blocks all traffic from users behind an interface that has the security mode set to captive
portal. All HTTP traffic is redirected to the captive portal page and other traffic is blocked. However, there is an
option to exempt certain traffic to flow through FortiGate without fulfilling captive portal condition(s) (disclaimer
and/or authentication).

If you are using an external captive portal server, you must configure a firewall policy and exempt web traffic
to the external captive portal’s ip address. You can exempt destination IP addresses and services on the
SSID or interface configuration page. Add the address objects of the destination(s) that you want to exempt in
the Exempt Destinations/Services section. Just selecting and applying the address object and selecting the
services is not enough to allow the traffic to pass through FortiGate. You must also have a corresponding
firewall policy in place to allow the pinhole traffic to pass the through FortiGate.

Therefore, this is a two step process:


1. Select the destination and services on the SSID or interface configuration page in the Exempt
Destinations/Services section.
2. Create a firewall policy on the captive portal interface to interface where the external captive portal server
is located. You do not have to specify destination objects on the firewall policy.

You can also specify source IP addresses that you would like to exempt from the captive portal. This can be
useful for devices that are unable to accept captive portal conditions using HTTP/HTTPs but require an
Internet connection. For example, a printer might need to access the Internet for firmware upgrades, and so
on.

Secure Access 6.0 Study Guide 347


 Guest Access

DO NOT REPRINT
© FORTINET

Alternatively, you can configure a separate firewall policy to allow traffic to reach the external captive portal
server without authenticating on the captive portal interface. Create a firewall policy and sets the destination to
your captive portal server and DNS server. On the CLI, edit the firewall policy rule and enable the captive-
portal-exempt option. This option instructs FortiGate to allow traffic to pass through to the specified
destination(s) without forcing users to authenticate first.

Secure Access 6.0 Study Guide 348


 Guest Access

DO NOT REPRINT
© FORTINET

Create a firewall policy from the guest interface to the Internet. If you are using a guest user group, make sure
you assign it to the firewall policy. In this case, FortiGate will allow access to the Internet only for
authenticated users who are part of that group.

Do not enable captive-portal-exempt option on this firewall policy otherwise all the traffic to the internet
will be allowed without the users being presented with a captive portal page.

Secure Access 6.0 Study Guide 349


 Guest Access

DO NOT REPRINT
© FORTINET

1. The client tries to access a website.


2. The initial HTTP traffic is intercepted by the FortiGate wireless controller and re-directed to the
FortiAuthenticator web login page defined in the FortiGate captive portal profile.
3. FortiAuthenticator presents the user with a login page.
4. The client enters their user credentials on the FortiAuthenticator web login page.
5. The login message instructs the guest user’s browser to submit the user credentials directly to the
FortiGate as an HTTPS POST for authentication processing.
6. When FortiGate receives the client credentials in the HTTPS POST, it sends a RADIUS Access-Request
to the FortiAuthenticator RADIUS server to authenticate the user.
7. FortiAuthenticator validates the Access-Request message using its user database which can either be
local or remote (LDAP/RADIUS).
8. Based on the results of the authentication and authorization processing, FortiAuthenticator responds with
either an Access-Accept or Access-Reject message. If the authentication is successful, the Access-
Accept message contains one or more RADIUS attributes to define the context of the client session.
These attributes can include, but are not limited to: the session duration, bandwidth, and access
permissions. When FortiGate receives the Access-Accept message, it changes the role of the client
session allowing the device access to the network.
9. Following a successful authentication and initiation of the user session, the client is redirected to the
originally requested URL, which should now be accessible.
10. The user should be able to access the website and a countdown for the captive portal session timeout
begins.

Secure Access 6.0 Study Guide 350


 Guest Access

DO NOT REPRINT
© FORTINET

When FortiGate redirects a user to the external captive server, it adds the parameters shown on this slide to
the HTTP request. You can easily decode the information that FortiGate provides to the external captive portal
server. The first part of the redirected URL includes the external server’s address followed by the address of
the FortiGate interface address that has the captive portal enabled on it. The magic parameter is the session
ID that is used to track the request information.

Secure Access 6.0 Study Guide 351


 Guest Access

DO NOT REPRINT
© FORTINET

This slide contains a list of all the parameters that are sent to the external captive portal from a wireless
network on FortiGate.

Secure Access 6.0 Study Guide 352


 Guest Access

DO NOT REPRINT
© FORTINET

Secure Access 6.0 Study Guide 353


 Guest Access

DO NOT REPRINT
© FORTINET

The guest portal on FortiAuthenticator extends the functionality of the captive portal available on FortiGate.
The FortiAuthenticator captive portal is available through only one URL, but portal match is based on the
mapping rules and RADIUS client profile, which makes this type of configuration very flexible and scalable.
You can configure multiple guest portals on FortiAuthenticator that can serve users connecting to different
FortiGate devices or networks. FortiAuthenticator uses HTTP POST parameters that are sent by FortiGate in
the captive portal request, along with RADIUS client configurations to map incoming captive portal requests to
their respective guest portals. You can define mapping rules based on the subnet address, AP MAC address,
SSID, AP location, and so on. All these parameters are sent by FortiGate to FortiAuthenticator using HTTP
POST.

The guest portal offers pre and post-login services for users who are authenticating using FortiAuthenticator.
As the name suggest, pre-login services are available to users without authentication, and post-login services
are offered after successful authentication. Pre-login services include creating guest accounts with the option
to validate by email or SMS, social login option, form-based information gathering, disclaimer, password reset,
and so on.

Once the user logs in successfully, they can access the post-login services page by visiting
FortiAuthenticator’s login page. On that page, users can make changes to their account, such as updating
their information, changing their password, downloading a smart connect profile, and performing token
registration.

Secure Access 6.0 Study Guide 354


 Guest Access

DO NOT REPRINT
© FORTINET

When configuring the guest portal, you should start by creating a guest user group on FortiAuthenticator. You
can reference this group to the guest portal configuration, so that any user who registers through the guest
portal will be put in this group. You can use RADIUS attributes, such as group name, to associate users with a
group on FortiGate. This will act as an authorization tag and you can reference that group in a firewall policy
configuration. The RADIUS attribute value is case sensitive and must match the FortiGate guest group
configuration.

Secure Access 6.0 Study Guide 355


 Guest Access

DO NOT REPRINT
© FORTINET

You can define guest portals on the Portals configuration page using the FortiAuthenticator GUI. All portals
will be accessible on the same URL but the mapping of the portals will depend on the mapping rules defined.
Each portal must be configured with a unique name. You can reference multiple RADIUS clients or profiles
within the same guest portal. This will allow you to accept authentication requests for the same guest portal
from multiple devices.

Secure Access 6.0 Study Guide 356


 Guest Access

DO NOT REPRINT
© FORTINET

Within the guest portal configuration, you can also define the type of authentication (user or device) as well as
whether you want to use it for account login and/or social login. The Social login option allows users to
authenticate using third-party SSO services such as Facebook, LinkedIn, and so on. You must configure
social login profiles to use this method. Account login means that user credentials will be provided by
FortiAuthenticator’s internal database or remote authentication server.

After you complete the Authentication section, you can enable and disable pre-login services that you would
like to use for this guest portal. The Account Registration option enables guest users to create and validate
their account using a form-based web page. Account expiry option allows you to configure the account validity
period. This setting will be applied to all self-registered accounts. You can also enable the administrator
approval option, which would require an administrator to manually enable all self-registered accounts.

All guest accounts created using The Account Registration feature will be placed in the group defined by the
Place registered users into a group option. FortiAuthentication can randomly generate a password for the
guest user, or you can let users pick their own password. All accounts registered through the guest portal
must be validated via SMS or email before they are can be used to log in. FortiAuthenticator will send the
guest user an activation code that will be used to activate their account. In this case, administrators do not
have to manually activate each self-registered account requests.

You can select the mandatory field that a user must fill out at the time of account registration. The selected
field can not be left empty. Token revocation option will add “Lost my token” link to the guest portal token
verification page. There users can request to re-provision their existing mobile token, switch to email token, or
disable their account

Secure Access 6.0 Study Guide 357


 Guest Access

DO NOT REPRINT
© FORTINET

On the same configuration page, you can also select what post-login services users will have access to. Post-
login services will only be available to users after they authenticate. Profile options will allow users to view or
edit their account information, such as name, email, phone number, and so on. You can also give users the
ability to change their password. Token Registration options will allow users to self-provision or request a
new token from the administrator. The Smart Connect option will allow users to download a smart connect
profile for their networks. Device Tracking and Management allows administrators to assign all guest
devices to a device group. Users must register all their devices before they are allowed to access the network.

Secure Access 6.0 Study Guide 358


 Guest Access

DO NOT REPRINT
© FORTINET

Guest portal rules use the incoming POST parameters and conditions defined within the rules to map the
request to guest portals. You can defined one or multiple conditions that must be matched to the POST
parameters before a captive portal request is mapped to a guest portal login. You can select a HTTP
parameter and use one of the three pre-defined operators (exact_match, substring_match or in_range) to
add a condition. You must define values of a condition manually.

Secure Access 6.0 Study Guide 359


 Guest Access

DO NOT REPRINT
© FORTINET

RADIUS clients must be configured to accept the Captive/Guest portal authentication service. This allows
RADIUS clients to send authentication requests to FortiAuthenticator from the IP/FQDN specified. If you
disable this option, the RADIUS client will not be able to authenticate users using captive or guest portals.

Note that self-registered guest users will be added to the local FortiAuthenticator database. Make sure that
the RADIUS profile is configured to use a realm that allows processing of local user authentication.

Secure Access 6.0 Study Guide 360


 Guest Access

DO NOT REPRINT
© FORTINET

FortiAuthenticator allows administrator and user accounts that have sponsor permission to sponsor guest
accounts for their visitors. Sponsor accounts are temporary accounts that are created by an administrator or
user for visitors. Local users can log in to FortiAuthenticator and sponsor one or more guest accounts. There
are three creation mode Express, From CSV file or Manual Input.

Express mode creates the login details automatically. Users must define the account expiry date and time
before they can create a guest account. You can also select the number or guest accounts that you want to
sponsor and groups that are assigned to it. Once an account is created, FortiAuthenticator will display the
login information. You can choose to send this information to guests directly using SMS or email. Alternatively,
you can print the login information.

From CSV file creation mode allows administrators to create one or more guest accounts using parameters
from a csv file. Manual Input mode requests the administrator or users to manually fill in the information for
their guest such as name, address, phone number, and so on. They must also define the username and
password manually using this mode.

Secure Access 6.0 Study Guide 361


 Guest Access

DO NOT REPRINT
© FORTINET

It is important to note that all the self-registered guest accounts will be listed on the Local Users page on the
FortiAuthenticator GUI. The system will automatically assign an expiry date to all self-registered users as
defined in the guest portal settings.

Sponsor accounts will be listed on the Guest Users GUI page on the FortiAuthenticator GUI. These accounts
will expire according to the expiry date and time selected at the time of account creation.

Secure Access 6.0 Study Guide 362


 Guest Access

DO NOT REPRINT
© FORTINET

Now you'll review the guest portal workflow. A client connects to a captive portal network on FortiGate. The
client tries to visit a website. FortiGate receives an HTTP GET request from a unauthenticated user. It
redirects the user to the captive portal URL along with the POST parameters.

Secure Access 6.0 Study Guide 363


 Guest Access

DO NOT REPRINT
© FORTINET

FortiAuthenticator uses the provided POST parameters and RADIUS client configuration to search the
mapping rules. If all the conditions defined in a mapping rule are met, FortiAuthenticator uses the mapped
guest portal and presents the login page to the user.

Secure Access 6.0 Study Guide 364


 Guest Access

DO NOT REPRINT
© FORTINET

If the guest user does not have an account, they can click the link on the login page to register for an account.
FortiAuthenticator will present them with a form-based web page to fill in. After the user fills in all the required
information, including their email and/or phone number, FortiAuthenticator will send them an activation code.
This activation code is a request to finish the self-registered account creation process. Once they enter a
correct activation code, FortiAuthenticator will automatically add the account to its local user database and
redirect the user to the login page. The user can now log in using their login credentials. Once a user is
authenticated, FortiAuthenticator will place them in the guest group and send the FortiGate group name using
the RADIUS attribute. FortiGate will use the attribute as authorization and allow the user to access resources
based on the firewall policies configuration.

Secure Access 6.0 Study Guide 365


 Guest Access

DO NOT REPRINT
© FORTINET

FortiAuthenticator logs all authentication-related information. This information includes username, time of
authentication, status, IP address, guest portal used to authenticate, and so on. You can view active user
sessions on FortiGate on the Firewall User Monitor, which lists the username, user group, duration of the
session, and IP address.

Secure Access 6.0 Study Guide 366


 Guest Access

DO NOT REPRINT
© FORTINET

This slide shows the objectives that you covered in this lesson.

Secure Access 6.0 Study Guide 367


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

In this lesson, you will learn how to configure and troubleshoot SAML using FortiAuthenticator.

Secure Access 6.0 Study Guide 368


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

After completing this lesson, you should be able to achieve the objectives shown on this slide.

Secure Access 6.0 Study Guide 369


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

Security Assertion Markup Language (SMAL) defines a framework for exchanging security assertions
between SAML entities. It uses XML-based framework and browser cookies to exchange security assertions
between entities to archive SSO. One of the main SAML use cases is multiple-domain web SS0. Online
business partners can exchange SAML assertions to provide user access to multiple web services without
asking the user to log in to each domain.

Secure Access 6.0 Study Guide 370


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

At a minimum, you need the following SAML entities to perform SSO:


• Principal: requests access to a service that usually requires authentication and authorization using the
SAML model. A principal can be a user, group, or machine.
• Identity Provider (IdP): responsible for creating, maintaining, and managing identity information for
principals. It is responsible for responding to requests for SAML assertions within a federation.
• Service Providers (SP): provides a service to a principal. It relies on an IdP for authentication and
authorization information that it can use to provide access a principal.

Secure Access 6.0 Study Guide 371


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

SAML uses security assertions to transfer user identity information between its entities using the principal (for
example. a web browser). For SAML to work correctly, all SPs participating in SSO must trust the identity
provider. Once a user is pointed to IdP by an SP, IdP is responsible for authenticating the principal and
asserting relevant SAML assertions in the browser cookie.
The principal will not have to re-authenticate when accessing partner web services as long as it is using and
trusting the same identity provider.

There are three main types of SAML assertions used in the SSO configuration:
o Authentication assertions: contain authentication information about the principal and time
o Attribute assertions: contain attribute information related to the principal
o Authorization assertions: contain information about the principal's access privileges

Secure Access 6.0 Study Guide 372


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

There are two types of SSO in SAML: IdP initiated and SP-initiated.

A user can perform an IdP-initiated login by directly accessing the IdP login page from a browser and
generating a login event. On a web page the user can then access all the applications that would have
required the user to log in. This can simplify the configuration and administrators do not need to implement
SAML functionality on web servers.

A user can perform an SP-initiated login by visiting a SAML SP-compliant page that would then redirect the
user to IdP for authentication. It will transparently redirect the users before providing access to secure content.
The SP will need authorization assertions from the IdP before allowing users to access resources.

Secure Access 6.0 Study Guide 373


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

Now, you will learn about the SAML packet flow for a non-authenticated principal that is trying to access
resources.

1. Principal tries to access resources on SP1.


2. SP1 requests SAML assertion.
3. Principal replies that it does not have SAML assertion for SP1.
4. SP1 instructs principal to redirect for authentication to SAML IdP.

Secure Access 6.0 Study Guide 374


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

5. Principal contacts IdP and requests SAML assertion for SP1.


6. IdP asks the principal whether it has SAML authentication assertion for the contacted IdP.
7. Principal replies that it does not have an authentication assertion for the IdP.
8. IdP then presents the principal with login portal and principal logs in with credentials. IdP validates the
credentials and updates its database with login event..

Secure Access 6.0 Study Guide 375


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

9. Once the principal is successfully authenticated, IdP provides it with SAML authentication assertion and
attributes assertion for SP1.
10. Principal is redirected to SP1 resources that it originally requested.
11. SP1 receives the SAML assertion for SP1 and authorizes the principal to access the resources.

The principal can continue to access resources on SP1 without having to log in again until the SAML
authentication cookie expires, or the user closes the web session or triggers a logout.

Secure Access 6.0 Study Guide 376


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

Now , you will learn about the SAML packet flow for an authenticated principal that is trying to access
resources on another SP in the federation.

1. Principal tries to access resources on SP2.


2. SP2 requests SAML assertion.
3. Principal replies that it does not have SAML assertion for SP2.
4. SP2 instructs principal to redirect for authentication to SAML IdP.

Secure Access 6.0 Study Guide 377


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

5. Principal contacts IdP and requests SAML assertion for SP2.


6. IdP requests SAML authentication assertion for itself.
7. Principal provides SAML authentication assertions to the IdP.

Secure Access 6.0 Study Guide 378


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

8. Once the IdP validates the SAML authentication assertion, it provides the principal with the SAML
attributes assertion for SP2.
9. Principal gets redirected to SP2 resource that it originally requested.
10. SP2 receives the SAML assertion from principal and authorizes the principal to access the resources.

The principal can now access resources on SP2 until the SAML assertion expires, or the user closes the web
session or triggers a logout.

Secure Access 6.0 Study Guide 379


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

When using SAML for web SSO, SPs never need to directly communicate with IdP for SSO to work. All
communication between IdP and SPs happens through the principal that is trying to request the resources.
Another advantage of using SAML is that as long as the principal and IdP are located behind the same
firewall, user credentials will never leave the network. Third-party SPs will redirect unauthenticated users back
to the IdP for authentication and users will enter credential only after it is prompted by the IdP. Multiple
domains can use the same IdP for SSO when using SAML. SAML SSO relies on SAML assertions that are
created by the IdP for a principal. SPs will use these assertions to grant access to the principal.

Secure Access 6.0 Study Guide 380


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

In this section, you will learn how to configure a SAML IdP on FortiAuthenticator.

Secure Access 6.0 Study Guide 381


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

You can configure FortiAuthenticator as a SAML IdP or an SP. When you configure FortiAuthenticator as an
IdP, it uses the self-serve login web portal to prompt the user for authentication. FortiAuthenticator can use
the local user database or remote authentication server to validate authentication requests. You must add all
SPs to FortiAuthenticator to establish a trust relationship between the SPs and FortiAuthenticator. Once an
SP is added to FortiAuthenticator, it can create SAML authorization assertions for the SP.

You can also configure FortiAuthenticator as an SP to request assertions from a third-party IdP such as Okta.
When you configure FortiAuthenticator in the SAML SP role, it can use SAML attributes assertion to generate
an FSSO session and distribute the information to FortiGate devices within a network. This works in a similar
way to RADIUS SSO where you use the attributes provided by the server to generate FSSO sessions for an
internal network.

Note: FortiAuthenticator can convert a SAML web SSO to an FSSO session.

Secure Access 6.0 Study Guide 382


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

The following is the an overview of the configuration you must complete to enable FortiAuthenticator to
perform the IdP role in SAML.
• Create realm for remote authentication server
• Required only if using remote authentication server
• Create or import local server certification to use in SAML configuration
• Certificate will be used to sign SAML assertions
• Enable and configure IdP settings
• Select the authentication realm to use for user authentication
• Can narrow down the scope to specific group using group filter option
• Add SP configuration
• Must add all SPs separately

Secure Access 6.0 Study Guide 383


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

You must enable FortiAuthenticator to support SAML in the IdP role. The server address is used when
metadata information is generated. If you have multiple IPs on FortiAuthenticator, FortiAuthenticator will
define which interface will be used to listen for authentication requests. On the FortiAuthenticator IdP
configuration page, you can also modify the SAML SSO assertion timeout value. You can also select a default
realm that will be used for user authentication. You can specify to override remote users, if an account also
exists in the FortiAuthenticator's user database. Furthermore, you can narrow down the scope of user lookup
to a specific group using the group filter option. You need to select a IdP certificate, which is local service
certificate that you can generate or import in the certificate manager section of FortiAuthenticator.

Secure Access 6.0 Study Guide 384


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

The next step is to define SPs on FortiAuthenticator. You must give a unique name and IdP prefix to each SP
that you add to the FortiAuthenticator configuration. You can choose to generate a 16-digit prefix to use in the
IdP entity id, IdP sign-on, and logout URL. This prefix uniquely identifies the IdP to the SP. You must export
this configuration to the SP configuration. SAML allows you to use XML metadata files to export these
parameters accurately.

Secure Access 6.0 Study Guide 385


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

You use SAML metadata files to exchange information, such as such entity descriptors, URLs, certificates,
and so on, that is required to enable the SAML SSO to work between SAML entities. You can download all of
the IdP-related configuration from this page by clicking the Download IDP metadata link. The metadata file
provides the information required for the SP to use and trust FortiAuthenticator as an IdP. The SP metadata
file, on the other hand, provides the IdP with all the information it needs to trust and accept redirection from an
SP.

Secure Access 6.0 Study Guide 386


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

Within the SP configuration, you can enforce further options. You can also enforce two-factor authentication
on users that log in through SAML. Depending on the options you select, users will be prompted to enter a
token with their credentials when they are prompted for authentication.

Assertion Attributes are used to pass information to an SP from the IdP. You can configure the assertion the
IdP will provide after a user is successfully authenticated. For example, you can configure the Subject Name
ID attribute (usually used to send the username back to the SP) to send the email, User DN, or objectGUID
instead.

Secure Access 6.0 Study Guide 387


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

SAML attributes assertions are used to return more than just authentication and authorization information
about a principal. SAML assertions can provide details about a principal that can then be used by SP to
extend the functionally of the service they offer. For example, an SP can use SAML attributes assertions to
exchange information such as principal membership level among multiple online partners that use the same
IdP for web SSO. You can create and assign more then one SAML attributes to a principal and send the
assertions only to SPs that you want to.

Secure Access 6.0 Study Guide 388


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

In this section, you will learn how to configure a SAML SP on FortiAuthenticator.

Secure Access 6.0 Study Guide 389


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

You will need to configure FortiGate with captive portal to prompt unauthenticated users to generate
authentication requests. You configure captive portal on FortiGate to send all requests to SAML SP portal
URL on FortiAuthenticator.

When configuring FortiAuthenticator as a SAML SP, you do not need to host the user database locally. User
authentication will be performed by a third-party IdP, and FortiAuthenticator will direct principals to the IdP
portal for authentication. Once the authentication is successful, FortiAuthenticator can then use SAML
assertions to generate FSSO sessions for the SAML principals. Then, FortiAuthenticator will share this
information with the FortiGate devices within the network to allow the principals to access the Internet or
resources hosted locally.

Secure Access 6.0 Study Guide 390


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

You can enable SAML SP by clicking Fortinet SSO Methods > SSO > SAML Authentication.
FortiAuthenticator will generate the SAML URLs and Entity id automatically. Configure the Portal url with the
location where FortiGate should direct unauthenticated users for authentication. Requests on the portal
authentication URL will be redirected to IdP to perform user authentication.

Once the authentication is successful, IdP will attach an assertion that FortiAuthenticator can then use to
generate an FSSO session for the principal. You can also configure FortiAuthenticator to perform LDAP
lookup for group membership of the principal, as long as IdP and FortiAuthentcator use the same LDAP
server. You can also specify whether the username of the principal is pulled in from boolean assertions or
test-based attributes.

Furthermore, you can implicitly assign all SAML users to a specific SSO group that you can configure locally
on FortiAuthenticator.

Secure Access 6.0 Study Guide 391


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

SAML assertions for a FortiAuthenticator SP will be used to generate FSSO sessions. You can view logs to
get more information about FSSO sessions, usernames, SAML authentications, and so on. You can view
successful SAML FSSO sessions on FortiAuthenticator on the SSO sessions tab. Note that SAML users are
categorized as external users and added to an SSO group called SAML FSSO that you created locally on
FortiAuthenticator. The FSSO sessions of all SAML users will be forwarded to the FortiGate devices with the
information you provided under SSO Sessions page on FortiAuthenticator.

Secure Access 6.0 Study Guide 392


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

In this section, you will learn how to troubleshoot SAML using FortiAuthenticator and a SAML tracer.

Secure Access 6.0 Study Guide 393


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

When FortiAuthenticator is configured in IdP role, you must identify whether the issue is caused by an
authentication error, or related to SAML assertions. In the IdP role, FortiAuthenticator needs to perform
authentication for the user, so you need to ensure that the portal is configured properly. Review the
FortiAuthenticator logs to identify what is causing the issue.

To troubleshoot SAML-related issues, you can use tools such as the SAML tracer add-on that will track all the
redirects and display SAML assertions. You can keep track of which SP initiated the SAML SSO, which IdP
the principal is redirected to, and what assertions were inserted in the browser. Verify the entire configuration
on both the IdP and the SP to ensure you used the correct URLs and Entity IDs.

To troubleshoot debug errors on FortiAuthenticator, you can use the GUI logs to identify what is causing the
issues.

Secure Access 6.0 Study Guide 394


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

If FortiAuthenticator is configured in a SAML SP role, FortiGate devices in the network must have
FortiAuthenticator configured as an external captive portal to forward unauthenticated user requests.
FortiGate must have an exempt policy in place to forward authentication requests that FortiAuthenticator will
be forwarding to the third-party IdP. If users are having issues accessing the login page, make sure that the
exempt policy is allowing all traffic to the IdP URL(s). Check the configuration on FortiAuthenticator to make
sure the IdP URLs and entity IDs are correct.

If the authentication is successful and you are receiving SAML assertions, verify that FSSO sessions are
created on FortiAuthenticator. Use a SAML tracer to view SAML exchanges and assertions, and refer to the
FortiAuthenticator logs to view errors. If you see FSSO sessions but users are still not able to access
resources, check the FSSO information on FortiGate to verify that users are populating properly.

Secure Access 6.0 Study Guide 395


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

You can view SAML-related logs on FortiAuthenticator in the log section.

Secure Access 6.0 Study Guide 396


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

You can view SAML assertions and exchanges using the SAML tracer add-on on a Firefox web browser. This
add-on allows you to keep track of all redirections and SAML assertions and attributes that are exchanged
during the authentication.

The example on this slide shows a SAML authentication request that is sent to an IdP. It includes SAML
protocol and assertion information, the IdP login portal address that the authentication request will be
forwarded to, and information about the SAML SP that is requesting the authentication. The request also
contains the assertion consumer service URL, which is where the response from the IdP will be returned.

Secure Access 6.0 Study Guide 397


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

This slide shows an example of an authentication response sent from the IdP. The SAML authentication
response includes basic SAML protocol information. The authentication response also includes authentication
information such as the SAML NameID attribute value, time of authentication, authentication conditions
(validity period), and the response recipient (which is usually the SP).

Secure Access 6.0 Study Guide 398


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

The authentication response assertion returned also includes authentication attributes by the IdP. The
attribute assertion contains additional information about a principal that can be used by an SP to provide
additional features and services to the authenticated user. The example in this slide includes two attributes,
User_DN and PrincipalName that are asserted by the IdP for this SP. SAML attributes can add extra
value because exchanging this information is completely transparent to the user.

Secure Access 6.0 Study Guide 399


 Security Assertion Markup Language (SAML)

DO NOT REPRINT
© FORTINET

This slide shows the objectives that you covered in this lesson.

Secure Access 6.0 Study Guide 400


 Solutions

DO NOT REPRINT
© FORTINET

This lesson provides problem descriptions and solutions for the Secure Access troubleshooting labs.

Secure Access 6.0 Study Guide 401


 Solutions

DO NOT REPRINT
© FORTINET

Now, you will review Lab 1 problems and solutions.

Secure Access 6.0 Study Guide 402


 Solutions

DO NOT REPRINT
© FORTINET

Problem 1: LDAP
LDAP authentication failed at a Admin binding state. Error 49 indicates that the administrator provided invalid
credentials. Because LDAP authentication is failing at admin binding state, it means there is an issue with the
administrator credentials.

Secure Access 6.0 Study Guide 403


 Solutions

DO NOT REPRINT
© FORTINET

The cause of the first problem is an incorrect password. To resolve this issue, change the administrator
password to password on FortiGate.

Secure Access 6.0 Study Guide 404


 Solutions

DO NOT REPRINT
© FORTINET

Problem 2: LDAP
This problem occurs at the user search state. This indicates that admin binding was successful but FortiOS is
having trouble locating the user in the LDAP tree. Take a close look at the base DN; the CN user does not
exists on the LDAP server. The correct LDAP tree DN should be cn=users,dc=trainingad,dc=training,dc=ldap.

This type of problem is very common. A small typing error can cause the LDAP query search to fail.

Secure Access 6.0 Study Guide 405


 Solutions

DO NOT REPRINT
© FORTINET

You can fix the second problem by fixing the typing error in the Distinguished Name field. It should be
pointing to cn=users, not cn=user.

Secure Access 6.0 Study Guide 406


 Solutions

DO NOT REPRINT
© FORTINET

Problem 3: LDAP
The last problem is with group matching. The VPN user group on FortiGate is configured to allow access to all
users that belong to domain users. Remote group matching needs to be changed to SSLVPN instead of
domain users. This will ensure that users who are member of the SSLVPN group on the LDAP server are
allowed access to SSLVPN.

Secure Access 6.0 Study Guide 407


 Solutions

DO NOT REPRINT
© FORTINET

To fix the third problem with LDAP configuration, point the user group to SSLVPN instead of domain users.

Secure Access 6.0 Study Guide 408


 Solutions

DO NOT REPRINT
© FORTINET

Problem 1: RADIUS
The first problem in the RADIUS troubleshooting exercise is related to a preshared key mismatch between
FortiGate and the RADIUS server (FortiAuthenticator). Update FortiGate with the correct PSK and the
communication between FortiGate and FortiAuthenticator will succeed.

Secure Access 6.0 Study Guide 409


 Solutions

DO NOT REPRINT
© FORTINET

On the RADIUS server configuration page on FortiGate, update the secret to fix the first problem.

Secure Access 6.0 Study Guide 410


 Solutions

DO NOT REPRINT
© FORTINET

Problem 2: RADIUS
The second problem with the RADIUS server is related to the VSA. FortiGate is configured with SSL-VPN,
which contains a hyphen. However, RADIUS is sending SSLVPN without the hyphen. This causes the
attributes to mismatch and FortiGate to reject the authentication for the user.

VSAs are case-sensitive and must match on both sides.

Secure Access 6.0 Study Guide 411


 Solutions

DO NOT REPRINT
© FORTINET

To fix the second problem, remove the hyphen from SSL-VPN to change it to SSLVPN.

Secure Access 6.0 Study Guide 412


 Solutions

DO NOT REPRINT
© FORTINET

Now, you will review certificate lab problems and solutions.

Secure Access 6.0 Study Guide 413


 Solutions

DO NOT REPRINT
© FORTINET

Problem:
The certificate installed and used for the IPsec dialup VPN is not signed by a trusted CA. FortiGate is unable
to validate the certificate and, therefore, authentication is failing.

Secure Access 6.0 Study Guide 414


 Solutions

DO NOT REPRINT
© FORTINET

The example on this slide shows that the certificate is signed by Fortinet.lab, which is not the CA you are
using in the lab. The correct certificate should be signed by trainingad.training.lab. You will need to create a
new user certificate that is signed by the correct CA.

Secure Access 6.0 Study Guide 415


 Solutions

DO NOT REPRINT
© FORTINET

Now, you will review SSO lab problems and solutions.

Secure Access 6.0 Study Guide 416


 Solutions

DO NOT REPRINT
© FORTINET

Problem 1: FSSO
FortiGate is unable to reach the FSSO CA agent. The problem could be related to routing or an invalid IP
address for the CA agent.

In this case, FortiGate is trying to connect to 10.0.1.15 instead of 10.0.1.150.

Secure Access 6.0 Study Guide 417


 Solutions

DO NOT REPRINT
© FORTINET

You can fix the first problem by changing the FSSO CA IP from 10.0.1.15 to 10.0.1.150.

Secure Access 6.0 Study Guide 418


 Solutions

DO NOT REPRINT
© FORTINET

Problem 2: FSSO
The second issue with FSSO configuration is related to authentication. The real-time debug clearly shows that
server authentication failed and it is aborting the attempt.

The FSSO CA configuration password must match with the FSSO agent password defined on the FortiGate.

Secure Access 6.0 Study Guide 419


 Solutions

DO NOT REPRINT
© FORTINET

You can correct the second problem by updating the FSSO CA password to password.

Secure Access 6.0 Study Guide 420


 Solutions

DO NOT REPRINT
© FORTINET

Now, you will review IPsec lab problems and solutions.

Secure Access 6.0 Study Guide 421


 Solutions

DO NOT REPRINT
© FORTINET

IPsec: Problem 1
The first issue with the lab is caused by a certification validation failure. The IKE real-time debug shows that
the process is failing at the certificate validation stage.

Secure Access 6.0 Study Guide 422


 Solutions

DO NOT REPRINT
© FORTINET

The fnbamd real-time debug shows the issue is with OCSP request. LDAP lookup of the UPN string in the
certificate is valid, and it finds one valid user with that UPN.

Secure Access 6.0 Study Guide 423


 Solutions

DO NOT REPRINT
© FORTINET

The fnbamd debug will show you that the ocsp response timed out, which basically means that FortiGate was
unable to connect to OSCP, which is FortiAuthenticator.

Secure Access 6.0 Study Guide 424


 Solutions

DO NOT REPRINT
© FORTINET

To fix the issue, change the OCSP server IP address to 10.0.1.150:2560. You must also specify a port
number as well for the configuration to work properly.

Secure Access 6.0 Study Guide 425


 Solutions

DO NOT REPRINT
© FORTINET

IPsec: Problem 2
The IPsec negotiation is failing because of a cfg mode mismatch. FortiGate does not have mode configuration
enabled, however, the client does.

Secure Access 6.0 Study Guide 426


 Solutions

DO NOT REPRINT
© FORTINET

The solution to the problem is to enable mode configuration on the IPsec configuration page.

Secure Access 6.0 Study Guide 427


DO NOT REPRINT
© FORTINET

No part of this publication may be reproduced in any form or by any means or used to make any
derivative such as translation, transformation, or adaptation without permission from Fortinet Inc.,
as stipulated by the United States Copyright Act of 1976.
Copyright© 2018 Fortinet, Inc. All rights reserved. Fortinet®, FortiGate®, FortiCare® and FortiGuard®, and certain other marks are registered trademarks of Fortinet,
Inc., in the U.S. and other jurisdictions, 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 General Counsel, 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. In no event does Fortinet make any
commitment related to future deliverables, features, or development, and circumstances may change such that any forward-looking statements herein are not accurate.
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.

Вам также может понравиться