Leitfaden für einen Machbarkeitsnachweis: nFactor für Citrix Gateway-Authentifizierung mit E-Mail-OT
Einführung
Die Implementierung der Multifaktor-Authentifizierung ist eine der besten Möglichkeiten, die Identität zu überprüfen und die Sicherheitslage zu verbessern. E-Mail OTP ist eine bequeme Möglichkeit, einen weiteren Faktor mithilfe des leicht verfügbaren E-Mail-Systems zu implementieren. Es ermöglicht Benutzern, Authentifizierungsvalidierungscodes von ihrem E-Mail-Client auf jedem Gerät in ihr Gateway-Authentifizierungsformular zu empfangen, zu kopieren und einzufügen.
Citrix Gateway unterstützt E-Mail-OTP-Authentifizierung 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.
Übersicht
Dieser Leitfaden zeigt, wie Sie eine Proof of Concept Umgebung unter Verwendung der Zwei-Faktor-Authentifizierung mit Citrix Gateway implementieren. Der Leitfaden verwendet LDAP, um Active Directory-Anmeldeinformationen als ersten Faktor zu validieren und E-Mail-OTP als zweiten Faktor zu verwenden. Es verwendet einen von Citrix Virtual Apps and Desktops veröffentlichten virtuellen Desktop, um die Konnektivität zu überprüfen.
Es trifft Annahmen über die abgeschlossene Installation und Konfiguration der folgenden Komponenten:
- Citrix Gateway wurde installiert, lizenziert und mit einem extern erreichbaren virtuellen Server konfiguriert, der an ein Platzhalterzertifikat gebunden ist
- Citrix Gateway ist in eine Citrix Virtual Apps and Desktops Umgebung integriert, die LDAP zur Authentifizierung verwendet
- SMTP-Serverzugriff mit der Möglichkeit, sich mit Benutzername und Kennwort anzumelden, um E-Mails zu erstellen
- Endpoint mit installierter Citrix Workspace-App
- Active Directory (AD) ist in der Umgebung verfügbar
Informationen zu den neuesten Produktversionen und Lizenzanforderungen finden Sie in der Citrix Documentation:E-Mail OTP-Authentifizierung
Citrix Gateway
Zunächst melden wir uns bei der CLI auf unserem Gateway an und geben die Authentifizierungsaktionen und die zugehörigen Richtlinien für LDAP bzw. E-Mail ein. Dann melden wir uns bei unserer GUI an, um unseren nFactor-Flow im Visualizer-Tool zu erstellen und die Multifaktor-Authentifizierungskonfiguration abzuschließen.
Authentifizierungsrichtlinien
Wir erstellen die LDAP-Aktion und die Richtlinie, die darauf verweist, was der erste Authentifizierungsfaktor ist. Dann erstellen wir die E-Mail-Aktion und die Richtlinie, die darauf verweist, was der zweite Authentifizierungsfaktor ist.
Stellen Sie zuerst eine Verbindung zur CLI her, indem Sie eine SSH-Sitzung mit der NSIP-Adresse des Citrix ADC öffnen und sich als nsroot-Administrator anmelden.
LDAP-Aktion
Füllen Sie die folgenden Felder aus, um die LDAP-Aktion zu erstellen, und fügen Sie die abgeschlossene Zeichenfolge in die CLI ein:
ldapAction
- geben Sie den Aktionsnamen ein. Wir treten einauthAct_LDAP_eotp
serverIP
- geben Sie den FQDN oder die IP-Adresse des Domänenservers/s ein. Wir geben192.0.2.50
für die private IP-Adresse des Domain-Servers in unserer Umgebung einserverPort
- geben Sie den LDAP-Port ein. Wir treten636
für den sicheren LDAP-Port einldapBase
- geben Sie die Reihe von Domänenobjekten und Containern ein, in der relevante Benutzer in Ihrem Verzeichnis gespeichert sind. Wir treten ein"OU=Team M,OU=Team Accounts,OU=Demo Accounts,OU=Workspaces Users,DC=workspaces,DC=wwco,DC=net"
ldapBindDn
- Geben Sie das Dienstkonto ein, das zur Abfrage von Domänenbenutzern Wir treten einworkspacessrv@workspaces.wwco.net
ldapBindDnPassword
- Geben Sie das Kennwort für Ihr Dienstkonto ein. Das Kennwort wird standardmäßig vom Citrix ADC verschlüsseltldapLoginName
- geben Sie den Objekttyp des Benutzers ein. Wir treten einuserPrincipalName
groupAttrName
——您窝Gruppen-Attributnamen静脉。我们混乱关系ten einmemberOf
subAttributeName
- Geben Sie den Namen der Unterattribute ein. Wir treten eincn
secType
- geben Sie den Sicherheitstyp ein. Wir treten einSSL
ssoNameAttribute
- Geben Sie das Single Sign-On-Namensattribut ein. Wir treten einuserPrincipalName
defaultAuthenticationGroup
- geben Sie die Standardauthentifizierungsgruppe ein. Wir treten einEmail-OTP
alternateEmailAttr
- geben Sie das Benutzerdomänenobjektattribut ein, in dem die E-Mail-Adresse abgerufen werden kann. Wir treten einotherMailbox
Sobald Sie die vollständige Zeichenfolge für Ihre Umgebung erstellt haben, kopieren Sie sie und fügen Sie sie in die CLI ein:add authentication ldapAction authAct_LDAP_eotp -serverIP 192.0.2.50 -serverPort 636 -ldapBase "OU=Team M,OU=Team Accounts,OU=Demo Accounts,OU=Workspaces Users,DC=workspaces,DC=wwco,DC=net" -ldapBindDn workspacessrv@workspaces.wwco.net -ldapBindDnPassword your_service_account_password -ldapLoginName userPrincipalName -groupAttrName memberOf -subAttributeName cn -secType SSL -ssoNameAttribute userPrincipalName -defaultAuthenticationGroup Email-OTP -alternateEmailAttr otherMailbox
Es gibt eine Vielzahl von Tools, die zum Auffüllen von Active Directory-Benutzerobjektattributen verwendet werden können. Für den POC verwenden wir ADSI edit unter “Server Manager > Tools”, um manuell eine E-Mail-Adresse für Benutzer1 zum Attribut “OtherMailbox” hinzuzufügen.
LDAP-Richtlinie
Füllen Sie die folgenden Felder aus, um die LDAP-Aktion zu erstellen, und fügen Sie die abgeschlossene Zeichenfolge in die CLI ein:
Policy
- Geben Sie den Richtliniennamen ein. Wir treten einauthPol_LDAP_eotp
action
- geben Sie den Namen der oben erstellten E-Mail-Aktion ein. Wir treten einauthAct_LDAP_eotp
Sobald Sie die vollständige Zeichenfolge für Ihre Umgebung erstellt haben, kopieren Sie sie und fügen Sie sie in die CLI ein:add authentication Policy authPol_LDAP_eotp -rule true -action authAct_LDAP_eotp
Weitere Informationen finden Sie unterLDAP-Authentifizierungsrichtlinien
E-Mail Action
Füllen Sie die folgenden Felder aus, um die E-Mail-Aktion zu erstellen, und fügen Sie die abgeschlossene Zeichenfolge in die CLI ein:
emailAction
- geben Sie den Aktionsnamen ein. Wir treten einauthAct_Email_eotp
userName
- geben Sie das Benutzer- oder Dienstkonto ein, das sich beim Mailserver anmelden wird. Wir treten einworkspacessrv@workspaces.wwco.net
password
- Geben Sie das Kennwort für Ihr Dienstkonto ein, um sich beim Mailserver anzumelden. Das Kennwort wird standardmäßig vom Citrix ADC verschlüsseltserverURL
- geben Sie den FQDN oder die IP-Adresse des Mailservers ein. Wir treten ein"smtps://192.0.2.40:587"
content
- geben Sie die Benutzernachricht neben dem Feld ein, um den E-Mail-Code einzugeben. Wir treten ein"Your OTP is $code"
time out
- geben Sie die Anzahl der Sekunden ein, die der E-Mail-Code gültig ist. Wir treten ein60
emailAddress
——您das LDAP-Objekt静脉,das der E-Ma票il-Adresse des Benutzers abgefragt werden soll. Wir treten ein"aaa.user.attribute(\"alternate_mail\")"
Sobald Sie die vollständige Zeichenfolge für Ihre Umgebung erstellt haben, kopieren Sie sie und fügen Sie sie in die CLI ein:add authentication emailAction authAct_Email_eotp -userName workspacessrv@workspaces.wwco.net -password your_service_account_password -serverURL "smtps://192.0.2.40:587" -content "Your OTP is $code" -timeout 60 -emailAddress "aaa.user.attribute(\"alternate_mail\")"
E-Mail Policy
Füllen Sie die folgenden Felder aus, um die E-Mail-Richtlinie zu erstellen, und fügen Sie die abgeschlossene Zeichenfolge in die CLI ein:
Policy
- Geben Sie den Richtliniennamen ein. Wir treten einauthPol_Email_eotp
action
- geben Sie den Namen der oben erstellten E-Mail-Aktion ein. Wir treten einauthAct_Email_eotp
Sobald Sie die vollständige Zeichenfolge für Ihre Umgebung erstellt haben, kopieren Sie sie und fügen Sie sie in die CLI ein:add authentication Policy authPol_Email_eotp -rule true -action authAct_Email_eotp
Weitere Informationen finden Sie unterRichtlinien zur E-Mail-Authentifizierung
nFactor
- Melden Sie sich bei der Citrix ADC UI an
- 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. Weitere Informationen finden Sie unterCitrix ADC SSL-Zertifikate.
- Als nächstes navigiere zu
Security > AAA - Application Traffic > nFactor Visualizer > nFactor Flows
- Wählen Sie Hinzufügen aus und wählen Sie das Pluszeichen im Feld Faktor aus
- Geben Sie ein
nFactor_EmailOTP
und wählen Sie Erstellen - Wählen Sie Schema hinzufügen und wählen Sie erneut neben Richtlinie auswählen
- Geben Sie
lschema_SingleAuth
- Wählen Sie unter Authentifizierungsschema das Bleistiftsymbol aus, um die Schemaauswahl zu
- Wählen Sie unter Schemadateien LoginSchema aus, navigieren Sie zu LoginSchema, und wählen Sie
SingleAuth.xml
- Wählen Sie die blaue Auswahlschaltfläche, gefolgt von Erstellen, gefolgt von OK
- Wählen Sie im selben Feld Richtlinie hinzufügen
- Wählen Sie die von uns erstellte LDAP-Richtlinie aus. Wir benutzen
authPol_LDAP_eotp
- Wählen Sie Add
- Wählen Sie das grüne Pluszeichen neben der
authPol_LDAP_eotp
Richtlinie aus, um einen Faktor zu erstellen - Geben Sie
factor_Email
diesen Faktor ein, der den E-Mail-Code zur Durchführung der 2nd-Faktor-Authentifizierung verwendet - Wählen Sie Erstellen
- Wählen Sie im selben Feld Richtlinie hinzufügen
- Wählen Sie die von uns erstellte E-Mail-Richtlinie aus. Wir benutzen
authPol_Email_eotp
- Wählen Sie unter Gehe zu Ausdruck
END
- Wählen Sie Add
- Jetzt haben wir die Einrichtung des nFactor-Flows abgeschlossen und können auf Fertig klicken
Citrix ADC Authentifizierung, Autorisierung und Auditing (Citrix ADC AAA) virtueller Server
- Navigieren Sie als Nächstes zuSicherheit > AAA - Anwendungsdatenverkehr > Virtuelle Serverund wählen Sie Hinzufügen
- Geben Sie die folgenden Felder ein und klicken Sie auf OK:
- Name - ein eindeutiger Wert. Wir geben ‘emailotp_authvServer’
- Typ der IP-Adresse -
Non Addressable
- Wählen Sie Kein Serverzertifikat aus, wählen Sie das Domänenzertifikat aus, klicken Sie auf Auswählen, binden und
- Wählen Sie Kein nFactor Flow
- Klicken Sie unter Select nFactor Flow auf den Pfeil nach rechts und wählen Sie den
nFactor_EmailOTP
zuvor erstellten - Klicken Sie auf Auswählen, gefolgt von Bind
- Klicken Sie auf Weiter, gefolgt von Fertig
Citrix Gateway - virtueller Server
- Als nächstes navigieren Sie zuCitrix Gateway > Virtuelle Server
- Wählen Sie Ihren vorhandenen virtuellen Server aus, der Proxy-Zugriff auf Ihre Citrix Virtual Apps and Desktops Umgebung bietet
- Wählen Sie Bearbeiten
- Wenn Sie derzeit eine LDAP-Richtlinie haben, navigieren Sie unter Standardauthentifizierung - Primäre Authentifizierung, wählen Sie LDAP-Richtlinie aus. Überprüfen Sie dann die Richtlinie, wählen Sie Bindung aufheben, wählen Sie Ja zur Bestätigung und wählen Sie Schließen
- Wählen Sie rechts im Menü Erweiterte Einstellungen die Option Authentifizierungsprofil
- Wählen Sie Add
- Geben Sie einen Namen ein. Wir treten ein
EmailOTP_auth_profile
- Klicken Sie unter Virtueller Authentifizierungsserver auf den Pfeil nach rechts und wählen Sie den von uns erstellten Citrix ADC AAA-Server
EmailOTP_Auth_Vserver
- Klicken Sie auf Auswählen und erstellen
- Klicken Sie auf OK und stellen Sie sicher, dass auf dem virtuellen Server jetzt ein Authentifizierungsprofil ausgewählt ist, während die Standardauthentifizierungsrichtlinie entfernt wurde
- Klicken Sie auf Fer
Benutzer-Endpoint
Jetzt testen wir Email OTP, indem wir uns bei unserer Citrix Virtual Apps and Desktops Umgebung authentifizieren.
- Ö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 den Benutzer-E-Mail-Client und kopieren Sie den OTP-Code
- Kehren Sie zu Ihrem Browser zurück, in dem der Benutzername ausgefüllt ist, fügen Sie den Code ein und klicken Sie auf OK
- Stellen Sie sicher, dass die virtuellen Apps und Desktops der Benutzer aufgelistet sind, und starten Sie, sobald Sie angemeldet sind
Problembehandlung
SMTP-Server
Das Citrix网关吵架西奇贝einem服务器mit einem Benutzernamen und Kennwort authentifizieren können, um die Client-E-Mail mit dem OTP-Code zu erstellen. Wenn das Citrix Gateway die E-Mail nicht senden kann, wird beim Abschluss des ersten Faktors ein Timeout angezeigt, nachdem der Benutzer seinen Benutzernamen und sein Kennwort übermittelt hat.
- Wenn Ihr Exchange-Server nur für NTLM konfiguriert ist, kann sich Citrix Gateway standardmäßig nicht authentifizieren. Das Citrix Gateway muss sich mit einem Benutzernamen und einem Kennwort anmelden können, um eine E-Mail mit dem OTP-Code zu verfassen und zu senden. Um zu überprüfen, SSH an das Citrix Gateway oder greifen Sie auf die Konsole zu.
- Geben Sie das
shell
und Telnet an den TCP-Port des Mailservers ein 25. Zum Beispieltelnet ipoct1.ipoct2.ipoct3.ipoct4 25
- Dann gib ein
ehlo
. Das Ergebnis sollteAUTH LOGIN
oder zeigenAUTH NTLM LOGIN
.Wenn es nicht
LOGIN
für weitere Informationen angezeigt wird, sieheaktivieren Sie die Anmeldeauthentifizierung auf dem SMTP-Server.
- Geben Sie das
- Sie können auch öffentliche E-Mail-Server wie Gmail verwenden. Geben Sie bei der Konfiguration der E-Mail-OTP-Richtlinie
smtps://smtp.gmail.com:587
in das Feld E-Mail-Server ein. Sie müssen jedoch Ihre Firewalls so konfigurieren, dass ausgehende SMTPS an TCP-Port 587 zulässig sind.
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 alle ihre Workspaces-Ressourcen zugreifen, indem sie ihren Standarddomänenbenutzer und ihr Kennwort eingeben und einfach ihre Identität mit an ihren E-Mail-Client gesendetes E-Mail-OTP bestätigen.
Informationsquellen
Weitere Informationen finden Sie unter anderen nFactor Authentifizierungsoptionen:
E-Mail OTP— E-Mail OTP wird mit Citrix ADC 12.1 Build 51.x eingeführt