Leitfaden毛穴Machbarkeitsnachweis: nFactor傅r Citrix Gateway mit nativer OTP-Authentifizierung
Einführung
死Implementierung der Multifaktor-Authentifizierung ist eine der besten Möglichkeiten, die Identität zu überprüfen und die Sicherheitslage zu verbessern. Natives (zeitbasiertes) Einmalkennwort (OTP) ist eine bequeme Möglichkeit, einen weiteren Faktor mithilfe leicht verfügbarer Authentifikatoranwendungen zu implementieren. Es ermöglicht Benutzern, Validierungscodes von ihrer Authentifikatoranwendung in ein Gateway-Formular einzugeben, um sich zu authentifizieren.
Citrix Gateway unterstützt Native OTP und kann die Authentifizierung für verschiedene Dienste wie Webdienste, VPN und Citrix Virtual Apps and Desktops bereitstellen. In diesem POC Guide zeigen wir die Verwendung für die Authentifizierung in einer Citrix Virtual Apps and Desktops Umgebung.
Konzeptarchitektur
Übersicht
Dieser Leitfaden zeigt, wie Sie eine Proof of Concept Umgebung unter Verwendung der Zwei-Faktor-Authentifizierung mit Citrix Gateway implementieren. Es verwendet LDAP, um Active Directory-Anmeldeinformationen als ersten Faktor zu validieren, und Native OTP als zweiten Faktor.
Es trifft Annahmen über die abgeschlossene Installation und die Konfiguration der folgenden Komponenten:
- Citrix Gateway wurde installiert, lizenziert und mit einem an ein an ein Platzhalterzertifikat gebundenen extern erreichbaren virtuellen Server konfiguriert
- Citrix Gateway ist in eine Citrix Virtual Apps and Desktops Umgebung integriert, die LDAP zur Authentifizierung verwendet
- Endpoint mit installierter Citrix Workspace-App
- Eine unterstützte Authenticator-App, die Time Based OTP unterstützt (einschließlich Microsoft Authenticator, Google Authenticator oder Citrix SSO)
- Active Directory (AD) ist in der Umgebung verfügbar
Informationen zur aktuellen Produktversion und Lizenzanforderungen finden Sie in der Citrix Documentation:Native OTP-Authentifizierung
nFactor
LDAP-Richtlinien
Zuerst erstellen wir zwei LDAP-Richtlinien, auf die wir später beim Aufbau unseres nFactor-Flows verweisen.
Native OTP-Registrierung
Diese LDAP-Registrierungsrichtlinie wird zum Austausch und Speichern des Schlüssels verwendet, der zur Generierung des zeitbasierten OTP-Codes verwendet wird.
- Melden Sie sich bei der Citrix ADC UI an
- Navigieren Sie zuSicherheit > AAA-Anwendungsdatenverkehr > Richtlinien > Authentifizierung > Erweiterte Richtlinien > Richtlinie
- Klicken Sie auf
Add
- Geben Sie
polldap_notpmanage
für den Richtliniennamen ein, und ändern Sie den Aktionstyp inLDAP
. - Klicken Sie
Add
unter Aktion - Füllen Sie die folgenden Felder aus:
- Name - geben Sie
actldap_notpmanage
- Servername/IP-Adresse - wählen Sie einen FQDN oder eine IP-Adresse für AD-Server aus. Wir treten ein
192.0.2.50
- Deaktivieren
Authentication
Diese Einstellung zusammen mit dem unten stehenden OTP-Geheimnis zeigt an, dass die Richtlinie Objektattribute festgelegt und nicht abrufen wird - Basis-DN - geben Sie den Pfad zum AD-Benutzercontainer ein. Wir treten ein
DC=workspaces, DC=wwco, DC=net
- Administrator Bind DN - Geben Sie das Admin-/Dienstkonto ein, um AD zur Authentifizierung von Benutzern abzufragen. Wir treten ein
workspacessrv@workspaces.wwco.net
- Bestätigung/Administratorkennwort - geben Sie das Kennwort für das Admin-/Dienstkonto ein
- Klicken Sie auf Network Connectivity testen, um die Verbindung
- Namensattribut für Serveranmeldung - im zweiten Feld unterhalb dieses Feldes geben Sie
userPrincipalName
- OTP Secret - Enter
userParameters
Dies ist das LDAP-Objekt des Benutzers, das mit dem Schlüssel aktualisiert wird, der mit Hash verwendet wird, um den zeitbasierten OTP-Code zu generieren
- Name - geben Sie
- Wählen Sie Erstellen
- Geben Sie den Ausdruck
true
ein und klicken Sie aufOK
Native OTP-Authentifizierung
Diese LDAP-Authentifizierungsrichtlinie wird verwendet, um die First-Faktor-Authentifizierung durchzuführen.
- Navigieren Sie zu
Security > AAA-Application Traffic > Policies > Authentication > Advanced Policies > Policy
- Klicken Sie auf
Add
- Geben Sie
polldap_notpauth
für den Richtliniennamen ein, und ändern Sie den Aktionstyp inLDAP
. - Klicken Sie
Add
unter Aktion - Füllen Sie die folgenden Felder aus:
- Name - geben Sie
actldap_notpauth
- Servername/IP-Adresse - wählen Sie einen FQDN oder eine IP-Adresse für AD-Server aus. Wir treten ein
192.0.2.50
- Basis-DN - geben Sie den Pfad zum AD-Benutzercontainer ein. Wir treten ein
DC=workspaces, DC=wwco, DC=net
- Administrator Bind DN - Geben Sie das Admin-/Dienstkonto ein, um AD zur Authentifizierung von Benutzern abzufragen. Wir treten ein
workspacessrv@workspaces.wwco.net
- Bestätigung/Administratorkennwort - geben Sie das Kennwort für das Admin-/Dienstkonto ein
- Klicken Sie auf Network Connectivity testen, um die Verbindung
- Namensattribut für Serveranmeldung - im zweiten Feld unterhalb dieses Feldes geben Sie
userPrincipalName
- Name - geben Sie
- Wählen Sie Erstellen
- Geben Sie den Ausdruck
true
ein und klicken Sie aufOK
Für weitere Informationen sieheLDAP-Authentifizierungsrichtlinien
Anmelden Schemas
Login-Schemas werden verwendet, wenn Daten im Auftrag einer Richtlinie gesammelt werden müssen.
Native OTP LSchema - Einzelne Authentifizierung
Dieses Anmeldeschema für die Registrierung entspricht der LDAP-Registrierungsrichtlinie.
- Navigieren Sie zu
Security > AAA-Application Traffic > Login Schema
- Wählen Sie die
Profile
Registerkarte - Klicken Sie
Add
unter Profil und nennen Sie esprolschema_notpsingle
- Klicken Sie auf das Bleistiftsymbol neben
noschema
- Klicken Sie auf
Login Schema
und scrollen Sie nach untenSingleAuthManageOTP.xml
, um es auszuwählen, und wählen Sie das BlauSelect
in der rechten Ecke aus. - Klicken Sie auf
Create
Natives OTP LSchema - Dual Authentifizierung
Dieses Anmeldeschema für die Registrierung entspricht der Dual-Faktor-Authentifizierung, bei der der Benutzer sowohl sein Kennwort als auch den OTP-Passcode eingibt.
- Klicken Sie
Add
erneut unter demProfile
Tab - Name eingeben
pollschema_notpdual
- Klicken Sie
Add
unter Profil und benennen Sie es auchprolschema_notpdual
- Klicken Sie auf das Bleistiftsymbol neben
noschema
- Klicken Sie auf
Login Schema
und scrollen Sie nach untenDualAuth.xml
, um es auszuwählen, und wählen Sie das BlauSelect
in der rechten Ecke aus. - Klicken Sie auf
More
- In das Feld
Password Credential Index
geben Sie1
- Klicken Sie auf
Create
AAA
Virtueller Server - Visualizer Flow
Native OTP- Als nächstes navigiere zu
Security > AAA - Application Traffic > nFactor Visualizer > nFactor Flows
- Klicken Sie auf
Add
- Klicken Sie auf das
+
Zeichen, um den anfänglichen Faktor zu erstellen.Dieser Faktor wird keine Maßnahmen ergreifen, sondern damit eingehenden Datenverkehr auf Registrierungs- oder Authentifizierungsfaktorflüsse lenken. - Geben Sie ein
factor0-notp
und klicken Sie aufCreate
Ablauf der Anmeldung
- Auswählen
Add Policy
- Wählen Sie
Add
nebenSelect Policy
- Namen eingeben
polfactor0-notpmanage
- Stellen Sie das
Action Type
aufNO_AUTHN
- Fügen Sie
HTTP.REQ.COOKIE.VALUE(“NSC_TASS”).EQ(“manageotp”)
für den Ausdruck ein ODER erstellen Sie es mit Expression BuilderSie können die Registrierung optional auf Endpunkte im internen Netzwerk beschränken, indem Sie ein Quell-IP-Adresskriterium wie
http.req.cookie.value("NSC_TASS").eq("manageotp") && client.IP.SRC.IN_SUBNET(10.0.0.0/8)
- Klick
Create
, gefolgt vonAdd
- Wählen Sie das Grün rechts
+
neben derpolfactor0-notpmanage
Richtlinie aus, die Sie gerade erstellt haben - Geben Sie ein
factor1-notpmanage
und klicken Sie aufCreate
- Wählen Sie im Feld “Neuer Faktor”
Add Schema
- Wählen Sie aus
prolschema_notpsingle
und klicken Sie aufOk
- Auswählen
Add Policy
- Klicken Sie in der Dropdown-Liste unter
Select Policy
Auswählenpolldap_notpauth
und klicken Sie aufAdd
- Wählen Sie
+
das Grün rechts neben derpolldap_notpauth
Richtlinie - Geben Sie ein
factor2-notpmanage
und klicken Sie aufCreate
- Wählen Sie im Feld “Neuer Faktor”
Add Policy
- Klicken Sie in der Dropdown-Liste unter
Select Policy
Auswählenpolldap_notpmanage
und klicken Sie aufAdd
Ablauf der Authentifizierung
- Wählen Sie nun in der von uns erstellten
factor0-notp
ersten Faktorbox das Blau+
- Wählen Sie
Add
nebenSelect Policy
- Namen eingeben
polfactor0-notpauth
- Setzen Sie das
Action Type
auf NO_AUTHN - Geben Sie
true
für den Ausdruck - Klicken Sie auf
Create
, gefolgt vonAdd
Hinweis darauf, dass die Richtlinienpriorität auf 110 erhöht ist, was bedeutet, dass sie nur ausgeführt wird, wenn die oben genannte Richtliniepolfactor0-notpmanage
bei 100 keine Übereinstimmung ist. - Wählen Sie das Grün rechts
+
neben derpolfactor0-notpauth
Richtlinie aus, die Sie gerade erstellt haben - Geben Sie ein
factor1-notpauth
und klicken Sie aufCreate
- Wählen Sie im Feld “Neuer Faktor”
Add Schema
- Wählen Sie aus
prolschema_notpdual
und klicken Sie aufOk
- Auswählen
Add Policy
- Klicken Sie in der Dropdown-Liste unter
Select Policy
Auswählenpolldap_notpauth
und klicken Sie aufAdd
- Auswählen
Done
AAA
Virtueller Server
Native OTPDieserAAA
virtuelle Server ist der Ort, an den die Richtlinien und das Schema mit der entsprechenden Priorität gebunden sind.
- Navigieren Sie zuTraffic Management > SSL> Zertifikate > Alle Zertifikate, um zu überprüfen, ob Sie Ihr Domain-Zertifikat installiert haben. In diesem POC-Beispiel haben wir ein Platzhalterzertifikat verwendet, das unserer Active Directory-Domäne entspricht. WeitereCitrix ADC SSL-ZertifikateInformationen finden Sie unter.
- Navigieren Sie als
Security > AAA - Application Traffic > Virtual Servers
Nächstes zu und wählen Sie Hinzufügen - Geben Sie die folgenden Felder ein:
- Name - ein eindeutiger Wert. Wir treten ein
nativeotp_authvserver
- Typ der IP-Adresse -
Non Addressable
- Name - ein eindeutiger Wert. Wir treten ein
- Klicken Sie auf
Ok
- Wählen Sie Kein Serverzertifikat, wählen Sie den Pfeil unter
Select Server Certificate
, wählen Sie das Domänenzertifikat aus, klicken Sie auf Auswählen, Binden und Weiter - Wählen
Advanced Authentication Policies
Sie unterNo Nfactor Flow
- Wählen Sie den Pfeil nach rechts aus
Select nFactor Flow
, wählen Siefactor0_notp
Select
, klicken Sie aufBind
- Klick
Continue
, gefolgt vonDone
Verkehrsrichtlinie
Jetzt erstellen wir eine Verkehrsrichtlinie, um das LDAP-Kennwort anstelle des OTP-Passcodes an StoreFront weiterzuleiten.
- Navigieren Sie zuCitrix Gateway > Virtuelle Server > Richtlinien > Datenverkehr
- Wählen Sie die
Traffic Profiles
Registerkarte aus und klicken Sie auf Hinzufügen - Name eingeben
notp_trafficprofile
- Auswählen
HTTP
- Geben Sie im SSO Kennwort -Ausdruck
http.REQ.USER.ATTRIBUTE(1)
- Klicken Sie auf Erstellen
- Klicken Sie jetzt auf die Registerkarte “Verkehrsrichtlinien”
- Wählen Sie im Feld “Profil anfordern” das soeben erstellte
notp_trafficprofile
Verkehrsprofil aus. - Name eingeben
nOTP_TrafficPolicy
- Geben Sie im Feld “Express” ein
true
- Klicken Sie auf
Create
Gateway-Server
Der Gateway Virtual Server ist an den Native OTPAAA
Virtual Server gebunden, um die Authentifizierung für Citrix Virtual Apps and Desktops bereitzustellen.
- Navigieren Sie zu
Citrix Gateway > Virtual Servers
- Wählen Sie Ihr aktuelles Gateway und klicken Sie auf
Edit
- Wählen Sie im Bereich “Erweiterte Einstellungen” auf der rechten Seite das Authentifizierungsprofil aus
- Auswählen
Add
- Geben Sie einen Profilnamen ein. Wir treten ein
nativeotp_authprofile
- Wählen Sie unter Richtlinie den Pfeil aus und wählen Sie den Native OTP
AAA
Virtual Servernativeotp_authvserver
- Klicken Sie auf
Create
- Wählen Sie im Bereich “Erweiterte Einstellungen” auf der rechten Seite die Option “Richtlinien”
- Wählen Sie das
+
Zeichen zum Hinzufügen Choose Policy
Wählen SieTraffic
unter und unterChoose Type
auswählen ausRequest
. Die AuswahlContinue
- Klicken Sie auf den Pfeil nach rechts
notp_trafficpolicy
, wählen Sie und wählen SieOK
- Klicken Sie auf
Done
und speichern Sie die laufende Konfiguration
Benutzer-Endpoint
Jetzt testen wir Native OTP, indem wir uns bei unserer Citrix Virtual Apps and Desktops Umgebung authentifizieren.
Registrierung bei Citrix SSO App
Zunächst registriert der Benutzer sein Gerät mit der Citrix SSO SSO-App für Native OTP.
- Öffnen Sie einen Browser und navigieren Sie zu dem Domänen-FQDN, der vom Citrix Gateway mit dem
/manageotp
Anhängen am Ende des FQDN verwaltet wird. Wir benutzenhttps://gateway.workspaces.wwco.net/manageotp
- Nachdem Ihr Browser auf einen Anmeldebildschirm umgeleitet wurde, geben Sie den Benutzer UPN und das Kennwort ein
- Wählen Sie auf dem nächsten Bildschirm Gerät hinzufügen und geben Sie einen Namen ein. Wir benutzen
iPhone7_nOTP
- Wählen Sie Go und ein QR-Code wird angezeigt
- Öffnen Sie auf Ihrem Mobilgerät Ihre Citrix SSO SSO-App oder eine andere Authentifikator-App wie Microsoft oder Google (zum Download in App Stores verfügbar)
- Wählen Sie “Neues Token hinzufügen”
- Wählen Sie QR-Code scannen
- Wählen Sie Ihre Kamera auf den QR-Code ausrichten und nachdem sie aufgenommen wurde, wählen Sie Hinzufügen
- Wählen Sie Speichern aus, um das Token zu speichern
- Das Token ist jetzt aktiv und zeigt OTP-Codes in Intervallen von 30 Sekunden an
- Wählen Sie Fertig und Sie sehen eine Bestätigung, dass das Gerät erfolgreich hinzugefügt wurde
Authentifizierung, Veröffentlichung und Einführung von Citrix Virtual Apps and Desktops
Dann gibt der Benutzer seinen UserPrincipalName, sein Kennwort und den OTP-Passcode aus der Citrix SSO SSO-App ein, um auf seine virtuellen Apps und Desktops zuzugreifen.
- Öffnen Sie einen Browser und navigieren Sie zu dem Domänen-FQDN, der vom Citrix Gateway verwaltet wird. Wir benutzen
https://gateway.workspaces.wwco.net
- Nachdem Ihr Browser auf einen Anmeldebildschirm umgeleitet wurde, geben Sie den Benutzer UserPrincipalName und das Kennwort ein
- Öffnen Sie die Citrix SSO SSO-App Geben Sie den OTP-Code in das Passcodefeld für den
iPhone7_nOTP
Geräteeintrag ein - Stellen您那么自信,dass死virtuellen应用和Desktops der Benutzer aufgelistet sind, und starten Sie, sobald Sie angemeldet sind
Problembehandlung
Hier sehen wir uns ein paar allgemeine Bereiche zur Fehlerbehebung für Native OTP an.
NTP Fehler
Nach der Anmeldung mit Ihrem OTP-Code wird auf der Seite möglicherweise eine Meldung angezeigt, in der Sie aufgefordert werden, die NTP-Synchronisierung zu überprüfen. Die Zeit des Citrix ADC muss synchronisiert sein, um das richtige zeitbasierte OTP zu generieren. Wenn Sie NTP nicht implementiert haben, gehen Sie folgendermaßen vor:
- Stellen Sie die Uhrzeit manuell auf Ihrem Citrix ADC einzur aktuellen Zeit.Dies beschleunigt die Synchronisierung, die sonst einen längeren Zeitraum in Anspruch nehmen würde
- NTP Server/s hinzufügen
- Wenn Sie beim Absenden des OTP-Codes immer noch einen NTP-Fehler erhaltenZeitanzeige auf NetScaler wird nicht mit NTP synchronisiert
Authentifizierungs-Feh
Cannot complete your request.
- wenn diese Fehlermeldung nach erfolgreicher Authentifizierung auftritt, deutet dies wahrscheinlich auf einen Fehler hin, bei dem die Anmeldeinformationen der Benutzer StoreFront Überprüfen Sie das Dual Authentication Schema und die Einstellungen der Verkehrsrichtlinie再试一次或联系你的帮助台
- Diese Fehlermeldung weist häufig auf einen LDAP-Anmeldefehler hin.Wenn Sie bestätigt haben, dass das Kennwort korrekt ist, stellen Sie sicher, dass das Bind-Kennwort des Administrators festgelegt wurde. Möglicherweise hatten Sie eine vorhandene LDAP-Authentifizierungsrichtlinie und erstellte die Richtlinie zum Verwalten, indem Sie sie auswählen und anschließend Hinzufügen auswählen. Dieser Schritt spart Zeit, indem vorhandene Einstellungen wie der ausgefüllt werden
Base DN
, und Sie sehen möglicherweise, dass das Feld Administratorkennwort ausgefüllt zu sein scheint, aber Sie MÜSSEN das Kennwort erneut eingeben.
Zusammenfassung
Mit Citrix Workspace und Citrix Gateway können Unternehmen ihre Sicherheitslage verbessern, indem sie eine mehrstufige Authentifizierung implementieren, ohne die Benutzererfahrung zu komplexieren. Benutzer können auf ihre Citrix Virtual Apps and Desktops zugreifen, indem sie ihren Domänenbenutzernamen und ihr Kennwort eingeben und dann einfach ihre Identität bestätigen, indem sie ein Einmalkennwort aus ihrer registrierten Authentifikator-App eingeben.
Informationsquellen
Weitere Informationen finden Sie unter:
Native OTP-Authentifizierung— finden Sie weitere Details zur Implementierung von Native OTP und zu Anwendungsfällen.