PoC-Leitfaden: nFactor für Citrix Gateway-Authentifizierung mit nativem OTP

Einführung

Die 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

Native OTP-Registrierung

Native OTP-Authentifizierung

Ü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

Die neueste Produktversion und die Lizenzanforderungen finden Sie in der Citrix-Dokumentation: 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.

  1. Melden Sie sich bei der Citrix ADC UI an
  2. Navigieren Sie zu Sicherheit > AAA-Anwendungsdatenverkehr > Richtlinien > Authentifizierung > Erweiterte Richtlinien > Richtlinie
  3. Klicken Sie auf Add
  4. Geben Sie polldap_notpmanage für den Richtliniennamen ein, und ändern Sie den Aktionstyp in LDAP.
  5. Klicken Sie Add unter Aktion
  6. Füllen Sie die folgenden Felder aus:
    • Name - geben Sie actldap_notpmanage ein
    • Servername/IP-Adresse - wählen Sie einen FQDN oder eine IP-Adresse für AD-Server aus. Wir geben 192.0.2.50 ein
    • 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 geben DC=workspaces, DC=wwco, DC=net ein
    • Administrator Bind DN - Geben Sie das Admin-/Dienstkonto ein, um AD zur Authentifizierung von Benutzern abzufragen. Wir geben workspacessrv@workspaces.wwco.net ein
    • 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 ein
    • 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
  7. Wählen Sie Natives OTP erstellen
  8. Geben Sie den Ausdruck true ein und klicken Sie auf OK Native OTP

Native OTP-Authentifizierung

Diese LDAP-Authentifizierungsrichtlinie wird verwendet, um die First-Faktor-Authentifizierung durchzuführen.

  1. Navigieren Sie zu Security > AAA-Application Traffic > Policies > Authentication > Advanced Policies > Policy
  2. Klicken Sie auf Add
  3. Geben Sie polldap_notpauth für den Richtliniennamen ein, und ändern Sie den Aktionstyp in LDAP.
  4. Klicken Sie Add unter Aktion
  5. Füllen Sie die folgenden Felder aus:
    • Name - geben Sie actldap_notpauth ein
    • Servername/IP-Adresse - wählen Sie einen FQDN oder eine IP-Adresse für AD-Server aus. Wir geben 192.0.2.50 ein
    • Basis-DN - geben Sie den Pfad zum AD-Benutzercontainer ein. Wir geben DC=workspaces, DC=wwco, DC=net ein
    • Administrator Bind DN - Geben Sie das Admin-/Dienstkonto ein, um AD zur Authentifizierung von Benutzern abzufragen. Wir geben workspacessrv@workspaces.wwco.net ein
    • 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 ein
  6. Wählen Sie Natives OTP erstellen
  7. Geben Sie den Ausdruck true ein und klicken Sie auf OK Native OTP

Weitere Informationen finden Sie unter LDAP-Authentifizierungsrichtlinien

Anmeldeschemas

Anmeldeschemas 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.

  1. Navigieren Sie zu Security > AAA-Application Traffic > Login Schema
  2. Wählen Sie die Registerkarte Profile
  3. Klicken Sie Add unter Profil und nennen Sie es prolschema_notpsingle
  4. Klicken Sie auf das Bleistiftsymbol neben noschema
  5. Klicken Sie auf Login Schema und scrollen Sie nach unten, um SingleAuthManageOTP.xml auszuwählen, und wählen Sie das blaue Select in der rechten Ecke aus.
  6. Klicken Sie auf Create Natives OTP

Natives OTP lSchema - Duale Authentifizierung

Dieses Anmeldeschema für die Registrierung entspricht der Zweifaktorauthentifizierung, bei der der Benutzer sowohl sein Kennwort als auch den OTP-Passcode eingibt.

  1. Klicken Sie auf der Registerkarte Profile noch einmal auf Add
  2. Geben Sie den Namen pollschema_notpdual ein
  3. Klicken Sie unter Profil auf Add und nennen Sie es auch prolschema_notpdual
  4. Klicken Sie auf das Bleistiftsymbol neben noschema
  5. Klicken Sie auf Login Schema und scrollen Sie nach unten, um DualAuth.xml auszuwählen, und wählen Sie das blaue Select in der rechten Ecke aus.
  6. Klicken Sie auf More
  7. In das Feld Password Credential Index geben Sie 1 ein
  8. Klicken Sie auf Create Natives OTP

Native OTP AAA Virtueller Server - Visualizer Flow

  1. Als nächstes navigieren Sie zu Security > AAA - Application Traffic > nFactor Visualizer > nFactor Flows
  2. Klicken Sie auf Add
  3. Klicken Sie auf das +-Zeichen, um den anfänglichen Faktor zu erstellen. Dieser Faktor führt keine Aktionen aus, sondern lenkt eingehenden Datenverkehr auf Registrierungs- oder Authentifizierungsfaktorflüsse.
  4. Geben Sie factor0-notp ein und klicken Sie auf Create Natives OTP

Ablauf der Anmeldung

  1. Wählen Sie Add Policy
  2. Wählen Sie Add neben Select Policy
  3. Geben Sie den Namen polfactor0-notpmanage ein
  4. Stellen Sie Action Type auf NO_AUTHN
  5. Fügen Sie den Ausdruck HTTP.REQ.COOKIE.VALUE(“NSC_TASS”).EQ(“manageotp”) ein ODER erstellen Sie ihn mit Expression Builder Natives OTP Sie können optional die Registrierung auf Endpunkte im internen Netzwerk beschränken, indem Sie Quell-IP-Adresskriterien eingeben, wie http.req.cookie.value("NSC_TASS").eq("manageotp") && client.IP.SRC.IN_SUBNET(10.0.0.0/8)
  6. Klicken Sie auf Create, gefolgt von Add Native OTP
  7. Wählen Sie das Grün rechts + neben der polfactor0-notpmanage Richtlinie aus, die Sie gerade erstellt haben
  8. Geben Sie factor1-notpmanage ein und klicken Sie auf Create Natives OTP
  9. Wählen Sie im Feld “Neuer Faktor” Add Schema
  10. Wählen Sie prolschema_notpsingle aus und klicken Sie auf Ok
  11. Wählen Sie Add Policy
  12. Wählen Sie in der Dropdownliste unter Select Policy die Option polldap_notpauth aus und klicken Sie auf Add
  13. Wählen Sie das grüne + rechts neben der Richtlinie polldap_notpauth
  14. Geben Sie factor2-notpmanage ein und klicken Sie auf Create Natives OTP
  15. Wählen Sie im Feld “Neuer Faktor” Add Policy
  16. Klicken Sie in der Dropdownliste unter Select Policy Auswählen polldap_notpmanageauf Add Native OTP

Ablauf der Authentifizierung

  1. Wählen Sie nun in der von uns erstellten factor0-notpersten Faktorbox das Blau +
  2. Wählen Sie Add neben Select Policy
  3. Geben Sie den Namen polfactor0-notpauth ein
  4. Setzen Sie das Action Type auf NO_AUTHN
  5. Geben Sie true für den Ausdruck
  6. Klicken Sie auf Create, gefolgt von Add Hinweis darauf, dass die Richtlinienpriorität auf 110 erhöht ist, was bedeutet, dass sie nur ausgeführt wird, wenn die oben genannte Richtlinie polfactor0-notpmanage bei 100 keine Übereinstimmung ist. Natives OTP
  7. Wählen Sie das Grün rechts + neben der polfactor0-notpauth Richtlinie aus, die Sie gerade erstellt haben
  8. Geben Sie ein factor1-notpauthund klicken Sie auf Create
  9. Wählen Sie im Feld “Neuer Faktor” Add Schema
  10. Wählen Sie prolschema_notpdual aus und klicken Sie auf Ok
  11. Wählen Sie Add Policy
  12. Wählen Sie in der Dropdownliste unter Select Policy die Option polldap_notpauth aus und klicken Sie auf Add
  13. Wählen Sie das Grün rechts + neben der polldap_notpauth Richtlinie aus, die Sie gerade erstellt haben
  14. Geben Sie ein OTPCheckund klicken Sie auf Create
  15. Wählen Sie Add Policy
  16. Wählen Sie in der Dropdownliste unter Select Policy die Option polldap_notpmanage aus und klicken Sie auf Add
  17. Wählen Sie Done Natives OTP

Native OTP Virtueller AAA-Server

Dieser virtuelle AAA-Server ist der Ort, an den die Richtlinien und das Schema mit der entsprechenden Priorität gebunden sind.

  1. Navigieren Sie zu Traffic 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. Weitere Informationen finden Sie unter Citrix ADC SSL-Zertifikate .
  2. Navigieren Sie als Security > AAA - Application Traffic > Virtual ServersNächstes zu und wählen Sie Hinzufügen
  3. Geben Sie die folgenden Felder ein:
    • Name - ein eindeutiger Wert. Wir geben nativeotp_authvserver ein
    • Typ der IP-Adresse - Non Addressable
  4. Klicken Sie auf Ok
  5. 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
  6. Wählen Advanced Authentication PoliciesSie unter No Nfactor Flow
  7. Wählen Sie den Rechtspfeil unter Select nFactor Flow, wählen Sie aus factor0_notpSelect, klicken Sie auf Bind Native OTP
  8. Klicken Sie auf Continue, gefolgt von Done Native OTP

Traffic Richtlinie

Jetzt erstellen wir eine Verkehrsrichtlinie, um das LDAP-Kennwort anstelle des OTP-Passcodes an StoreFront weiterzuleiten.

  1. Navigieren Sie zu Citrix Gateway > Virtuelle Server > Richtlinien > Datenverkehr
  2. Wählen Sie die Registerkarte Traffic Profiles aus und klicken Sie auf “Hinzufügen”
  3. Geben Sie den Namen notp_trafficprofile ein
  4. Wählen Sie HTTP
  5. Geben Sie im SSO Kennwort -Ausdruck http.REQ.USER.ATTRIBUTE(1)
  6. Klicken Sie auf Natives OTPerstellen
  7. Klicken Sie jetzt auf die Registerkarte “Verkehrsrichtlinien”
  8. Wählen Sie im Feld “Profil anfordern” das soeben erstellte Verkehrsprofil notp_trafficprofile aus.
  9. Geben Sie den Namen nOTP_TrafficPolicy ein
  10. Geben Sie im Feld “Express” ein true
  11. Klicken Sie auf Create Natives OTP

Gateway-Server

Der Gateway Virtual Server ist an den Native OTP AAA Virtual Server gebunden, um die Authentifizierung für Citrix Virtual Apps and Desktops bereitzustellen.

  1. Navigieren Sie zu Citrix Gateway > Virtual Servers
  2. Wählen Sie Ihr aktuelles Gateway und klicken Sie auf Edit
  3. Wählen Sie im Bereich “Erweiterte Einstellungen” auf der rechten Seite das Authentifizierungsprofil aus
  4. Wählen Sie Add
  5. Geben Sie einen Profilnamen ein. Wir geben nativeotp_authprofile ein
  6. Wählen Sie unter Richtlinie den Pfeil aus und wählen Sie den Native OTP AAA Virtual Server nativeotp_authvserver
  7. Klicken Sie auf Create
  8. Wählen Sie im Bereich “Erweiterte Einstellungen” auf der rechten Seite die Option “Richtlinien”
  9. Wählen Sie das +-Zeichen zum Hinzufügen
  10. Wählen Sie Traffic unter Choose Policy und Request unter Choose Type aus . Die Auswahl Continue
  11. Klicken Sie auf den Pfeil nach rechts notp_trafficpolicy, wählen Sie und wählen Sie OK
  12. Klicken Sie auf Doneund speichern Sie die laufende Konfiguration Native OTP

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-App für Native OTP.

  1. Öffnen Sie einen Browser und navigieren Sie zu dem Domänen-FQDN, der vom Citrix Gateway mit dem Anhängen von /manageotp am Ende des FQDN verwaltet wird. Wir benutzen https://gateway.workspaces.wwco.net/manageotp
  2. Nachdem Ihr Browser zu einem Anmeldebildschirm umgeleitet wurde, geben Sie den Benutzer, die UPN und das Kennwort ein. Native OTP-Registrierung.
  3. Wählen Sie auf dem nächsten Bildschirm Gerät hinzufügen und geben Sie einen Namen ein. Wir verwenden iPhone7_nOTP Native OTP-Registrierung
  4. Wählen Sie Los und ein QR-Code wird angezeigt Native OTP-Registrierung
  5. Öffnen Sie auf Ihrem Mobilgerät Ihre Citrix SSO-App oder eine andere Authentifikator-App wie Microsoft oder Google (zum Download in App Stores verfügbar)
  6. Wählen Sie “Neues Token hinzufügen”
  7. Wählen Sie QR-Code scannen Native OTP-Registrierung
  8. Wählen Sie Kamera auf den QR-Code richten aus und wählen Sie nach der Erfassung Native OTP-Registrierunghinzufügen
  9. Wählen Sie Speichern, um das Token zu speichern Native OTP-Registrierung
  10. Das Token ist jetzt aktiv und zeigt OTP-Codes in 30-Sekunden-Intervallen an. Native OTP-Registrierung
  11. Wählen Sie Fertig und Sie sehen eine Bestätigung, dass das Gerät erfolgreich hinzugefügt wurde Native OTP-Registrierung

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-App ein, um auf seine virtuellen Apps und Desktops zuzugreifen.

  1. Ö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
  2. Nachdem Ihr Browser auf einen Anmeldebildschirm umgeleitet wurde, geben Sie den Benutzer UserPrincipalName und das Kennwort ein
  3. Öffnen Sie die Citrix SSO-App, geben Sie den OTP-Code in das Passcode-Feld für den Geräteeintrag iPhone7_nOTPNative OTP-Registrierung” ein.
  4. Stellen Sie sicher, dass die virtuellen Apps und Desktops der Benutzer aufgelistet sind, und starten Sie sie, sobald Sie angemeldet sind. Native OTP-Registrierung

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:

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 Natives OTP
  • Try again or contact your help desk - Diese Fehlermeldung weist häufig auf einen LDAP-Anmeldefehler hin. Natives OTP Wenn Sie überprüft haben, dass das Kennwort korrekt ist, stellen Sie sicher, dass das Administratorbindungskennwort 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. Natives OTP

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.

Referenzen

Weitere Informationen finden Sie unter:

Native OTP-Authentifizierung — hier finden Sie weitere Details zur Native OTP-Implementierung und zu Anwendungsfällen.

PoC-Leitfaden: nFactor für Citrix Gateway-Authentifizierung mit nativem OTP