For the complete documentation index, see llms.txt. This page is also available as Markdown.

Certificaatgebaseerde MFA op Fortigate

Doel

Een geldig gebruikerscertificaat vereisen voor SSL-VPN-gebruikers in een specifieke AD-groep.

Voorwaarden

  • Heb al certificaten via ADCS aan uw gebruikers uitgerold. Als dat niet zo is, volg Gebruikerscertificaten uitrollen binnen Active Directory.

  • Heb LDAP-authenticatie geconfigureerd op basis van uw Active Directory.

Als u FortiGate beheert via FortiManager, kunnen de stappen en locaties verschillen. Vraag een engineer naar de FortiManager-flow.

1

Exporteer uw ADCS root CA-certificaat (alleen openbare sleutel)

Exporteer het openbare certificaat van uw ADCS root CA vanaf elke domeinwerkstation.

Vind het in Certificaten - Huidige gebruiker → Vertrouwde hoofd-certificeringsinstanties.

Exporteer het als een .cer / Base-64-certificaat (geen privésleutel).

2

Importeer de root CA in FortiGate

Importeer uw root CA-certificaat in Systeem → Certificaten → Maken/Importeren → CA-certificaat.

Voor de duidelijkheid raden we aan het geïmporteerde certificaat een andere naam te geven (standaard genaamd Ca_Cert_X waarbij X een nummer is) zodat het een meer betekenisvolle naam krijgt. Open hiervoor de opdrachtregelinterface van FortiGate en voer de volgende opdrachten in:

config vpn certificate ca
rename Ca_Cert_X to ADCS_Cert

Het certificaat zou dan onder zijn nieuwe naam moeten verschijnen.

3

Maak een user peer (PKI) aan die het certificaat aan LDAP koppelt

U verwijst naar deze user peer vanuit uw SSL-VPN-authenticatieregel.

Vervang:

  • ADCS_Cert door de naam van uw geïmporteerde CA (de hernoeming hierboven).

  • <LDAP_SERVER_NAME> door de naam van het FortiGate LDAP-serverobject uit Gebruikers & Authenticatie → LDAP-servers.

config user peer
    edit pki01
        set ca ADCS_Cert
        set ldap-server <LDAP_SERVER_NAME>
        set ldap-mode principal-name
    next
end
config user peer
    edit pki01
        set ca ADCS_Cert
        set mfa-mode subject-identity
        set mfa-server <LDAP_SERVER_NAME>
    next
end
4

Maak een AD-groep voor certificaatgebruikers aan

Om de uitrol van MFA onder uw medewerkers te vergemakkelijken, raden we aan een nieuwe Active Directory-groep aan te maken. Hiermee kunt u gebruikers geleidelijk migreren van de groep "VPN zonder certificaat" naar de groep "VPN met certificaat". Maak deze nieuwe groep in uw Active Directory-domein aan met de "Active Directory-gebruikers en computers" tool. In het onderstaande voorbeeld hebben we deze genoemd "NOMADE_CERT":

5

Maak de FortiGate-gebruikersgroep aan die aan de AD-groep is gekoppeld

Maak een nieuwe Gebruikersgroep onder Gebruikers & Authenticatie → Gebruikersgroepen.

Stel in:

  • Externe server = uw LDAP-object

  • Groepsnaam = NOMADE_CERT (of uw gekozen AD-groep)

6

Koppel de gebruikersgroep aan uw SSL-VPN-portaal

In SSL-VPN-instellingen, koppel de nieuwe groep aan het gewenste portaal.

Open de FortiGate-CLI opnieuw en voer het volgende commando in:

conf vpn ssl settings
conf authentication-rule
show

De lijst met bestaande koppelingen zou dan moeten worden weergegeven, zoals in het onderstaande voorbeeld:

U moet nu de nieuw aangemaakte koppeling identificeren. In dit voorbeeld is dat nummer 4, gekoppeld aan de groep NOMADE_CERT.

Voer de volgende opdrachten in (vervang 4 door uw koppelings-ID):

edit 4
set client-cert enable
set user-peer pki01
end
show

Daarna zou u de bijgewerkte lijst met koppelingen moeten zien:

Gebruikers in het AD-domein die behoren tot NOMADE_CERT moeten nu een geldig gebruikerscertificaat presenteren om verbinding te maken.

7

Test vanuit FortiClient

Werk op een werkstation dat lid is van het domein het FortiClient VPN-profiel bij:

Selecteer het certificaat dat aan uw gebruiker is gekoppeld (hier "stoik_test") in het "Client-certificaat" veld:

Problemen met authenticatie oplossen

Met de volgende opdrachten kunt u debuglogs bekijken voor LDAP en authenticatieprocessen in het algemeen (de opdrachten moeten worden ingevoerd in de FortiGate-CLI en de sessie moet open blijven):

diagnose debug enable
diagnose debug application fnbamd -1
diagnose debug application authd -1
diagnose debug application ldap -1

Als de bovenstaande opdrachten niet helpen om het probleem te identificeren (onjuiste informatie in het certificaat, LDAP-server niet bereikbaar, enz.), kan het nuttig zijn om SSL VPN-debuglogging in te schakelen:

diagnose debug app sslvpn -1
diagnose vpn ssl debug-filter src-addr4 XXX.XXX.XXX.XXX

Om de hoeveelheid weergegeven logs te beperken, vervangt u hierboven XXX.XXX.XXX.XXX door het bron-IP-adres dat de VPN-verbinding initieert.

Zodra het debuggen is voltooid, moet u de debugmodus uitschakelen:

Let op: deze procedure kan enigszins complex zijn, omdat u tegelijkertijd verbonden moet zijn met de FortiGate en FortiClient moet kunnen starten. Aarzel niet om indien nodig contact op te nemen met onze experts.

Was dit nuttig?