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

Zertifikatsbasierte MFA auf Fortigate

Ziel

Für SSL-VPN-Benutzer in einer bestimmten AD-Gruppe ein gültiges Benutzerzertifikat verlangen.

Voraussetzungen

  • Sie haben bereits Zertifikate über ADCS an Ihre Benutzer verteilt. Falls nicht, folgen Sie Benutzerzertifikate in Active Directory bereitstellen.

  • Sie haben die LDAP-Authentifizierung auf Basis Ihres Active Directory konfiguriert.

Wenn Sie FortiGate über FortiManager verwalten, können sich Schritte und Positionen unterscheiden. Fragen Sie einen Ingenieur nach dem FortiManager-Ablauf.

1

Exportieren Sie Ihr ADCS-Stamm-CA-Zertifikat (nur öffentlicher Schlüssel)

Exportieren Sie das öffentliche Zertifikat Ihrer ADCS-Stamm-CA von einem beliebigen Domänen-Computer.

Sie finden es unter Zertifikate - Aktueller Benutzer → Vertrauenswürdige Stammzertifizierungsstellen.

Exportieren Sie es als .cer / Base-64-Zertifikat (kein privater Schlüssel).

2

Importieren Sie die Stamm-CA in FortiGate

Importieren Sie Ihr Stammzertifikat der CA in System → Zertifikate → Erstellen/Importieren → CA-Zertifikat.

Zur besseren Übersicht empfehlen wir, das importierte Zertifikat umzubenennen (standardmäßig heißt es Ca_Cert_X, wobei X eine Zahl ist), damit es einen aussagekräftigeren Namen erhält. Öffnen Sie dazu die FortiGate-Befehlszeile und geben Sie die folgenden Befehle ein:

config vpn certificate ca
rename Ca_Cert_X in ADCS_Cert

Das Zertifikat sollte dann unter seinem neuen Namen angezeigt werden.

3

Erstellen Sie einen Benutzer-Peer (PKI), der das Zertifikat mit LDAP verknüpft

Auf diesen Benutzer-Peer verweisen Sie in Ihrer SSL-VPN-Authentifizierungsregel.

Ersetzen Sie:

  • ADCS_Cert durch den Namen Ihrer importierten CA (siehe Umbenennung oben).

  • <LDAP_SERVER_NAME> durch den Objekt-Namen des FortiGate-LDAP-Servers aus Benutzer & Authentifizierung → LDAP-Server.

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

Erstellen Sie eine AD-Gruppe für Zertifikatsbenutzer

Um die MFA-Bereitstellung in Ihrem Unternehmen zu erleichtern, empfehlen wir, eine neue Active-Directory-Gruppe zu erstellen. So können Sie Benutzer schrittweise von der Gruppe "VPN ohne Zertifikat" in die Gruppe "VPN mit Zertifikat" migrieren. Erstellen Sie diese neue Gruppe in Ihrer Active-Directory-Domäne mit dem "Active Directory-Benutzer und -Computer" Tool. Im folgenden Beispiel haben wir sie "NOMADE_CERT":

5

Erstellen Sie die mit der AD-Gruppe verknüpfte FortiGate-Benutzergruppe

Erstellen Sie eine neue Benutzergruppe unter Benutzer & Authentifizierung → Benutzergruppen.

Setzen Sie:

  • Remote Server = Ihr LDAP-Objekt

  • Gruppenname = NOMADE_CERT (oder Ihre gewählte AD-Gruppe)

6

Ordnen Sie die Benutzergruppe Ihrem SSL-VPN-Portal zu

In SSL-VPN-Einstellungen, ordnen Sie die neue Gruppe dem gewünschten Portal zu.

Öffnen Sie erneut die FortiGate-CLI und geben Sie folgenden Befehl ein:

conf vpn ssl settings
conf authentication-rule
show

Die Liste der vorhandenen Zuordnungen sollte dann angezeigt werden, wie im folgenden Beispiel:

Sie müssen nun die neu erstellte Zuordnung identifizieren. In diesem Beispiel ist es Nummer 4, verknüpft mit der Gruppe NOMADE_CERT.

Geben Sie die folgenden Befehle ein (ersetzen Sie 4 durch Ihre Zuordnungs-ID):

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

Anschließend sollten Sie die aktualisierte Liste der Zuordnungen sehen:

Benutzer in der AD-Domäne, die zu NOMADE_CERT gehören, müssen nun ein gültiges Benutzerzertifikat vorlegen, um eine Verbindung herzustellen.

7

Test mit FortiClient

Aktualisieren Sie auf einem der Domäne beigetretenen Arbeitsplatzrechner das FortiClient-VPN-Profil:

Wählen Sie das mit Ihrem Benutzer verknüpfte Zertifikat (hier "stoik_test") im "Client-Zertifikat" Feld aus:

Fehlerbehebung bei Authentifizierungsproblemen

Mit den folgenden Befehlen können Sie Debug-Protokolle für LDAP- und allgemeine Authentifizierungsprozesse anzeigen (die Befehle müssen in der FortiGate-CLI eingegeben werden, und die Sitzung muss geöffnet bleiben):

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

Falls die obigen Befehle nicht helfen, das Problem zu identifizieren (falsche Informationen im Zertifikat, LDAP-Server nicht erreichbar usw.), kann es sinnvoll sein, das Debug-Logging für SSL-VPN zu aktivieren:

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

Um die Menge der angezeigten Protokolle zu begrenzen, ersetzen Sie oben XXX.XXX.XXX.XXX durch die Quell-IP-Adresse, die die VPN-Verbindung initiiert.

Sobald das Debugging abgeschlossen ist, müssen Sie den Debug-Modus deaktivieren:

Bitte beachten Sie, dass dieses Verfahren etwas komplex sein kann, da Sie gleichzeitig mit FortiGate verbunden sein und FortiClient starten können müssen. Zögern Sie nicht, bei Bedarf unsere Experten zu kontaktieren.

War das hilfreich?