Konfigurieren des Verbundauthentifizierungsdiensts
Mit dem Verbundauthentifizierungsdienst (Federated Authentication Service, FAS) können Sie Benutzer authentifizieren, die sich bei einem Linux VDA anmelden. Der Linux VDA verwendet dieselbe Windows-Umgebung wie der Windows VDA für das FAS-Anmeldefeature. Informationen zur Konfiguration der Windows-Umgebung für FAS finden Sie unter Verbundauthentifizierungsdienst. Dieser Artikel enthält zusätzliche Informationen speziell für den Linux VDA.
Hinweis
Der Linux VDA bietet keine Unterstützung für die Richtlinie In-session Behavior.
Der Linux VDA verwendet kurze Verbindungen, um Daten an FAS-Server zu übertragen.
Konfigurieren des FAS auf dem Linux VDA
FAS-Unterstützung unter RHEL 8/CentOS 8
FAS ist abhängig von dem Modul pam_krb5, das unter RHEL 8/CentOS 8 veraltet ist. Zur Verwendung von FAS unter RHEL 8/CentOS 8 erstellen Sie das Modul pam_krb5 wie folgt:
-
Laden Sie den Quellcode pam_krb5-2.4.8-6 von der folgenden Website herunter:
https://centos.pkgs.org/7/centos-x86_64/pam_krb5-2.4.8-6.el7.x86_64.rpm.html.
-
Erstellen und installieren Sie das Modul pam_krb5 unter RHEL 8/CentOS 8.
yum install make gcc krb5-devel pam-devel autoconf libtool rpm2cpio pam_krb5-2.4.8-6.el7.src.rpm | cpio -div tar xvzf pam_krb5-2.4.8.tar.gz cd pam_krb5-2.4.8 ./configure --prefix=/usr make make install <!--NeedCopy-->
-
Überprüfen Sie, ob pam_krb5.so unter /usr/lib64/security/ vorliegt.
ls -l /usr/lib64/security | grep pam_krb5 <!--NeedCopy-->
Einrichten von FAS-Servern
Um den Verbundauthentifizierungsdienst bei einer Neuinstallation von Linux VDA einzurichten, geben Sie den FQDN jedes FAS-Servers ein, wenn Sie beim Ausführen von ctxinstall.sh oder ctxsetup.sh nach CTX_XDL_FAS_LIST gefragt werden. Da der Linux VDA die AD-Gruppenrichtlinie nicht unterstützt, geben Sie stattdessen eine durch Semikolons getrennte Liste mit FAS-Servern an. Wenn eine Serveradresse entfernt wird, füllen Sie die leere Stelle mit der Textzeichenfolge <none> auf und ändern nicht die Reihenfolge der Serveradressen.
Zum Aktualisieren einer vorhandenen Linux VDA-Installation können Sie ctxsetup.sh
erneut ausführen, um die FAS-Server einzurichten. Sie können die FAS-Server auch über die folgenden Befehle einrichten. Starten Sie anschließend den ctxvda
-Dienst neu, um die Einstellung zu übernehmen.
sudo /opt/Citrix/VDA/bin/ctxreg create -k "HKLM\Software\Citrix\VirtualDesktopAgent\Authentication\UserCredentialService" -t "REG_SZ" -v "Addresses" -d "<Your-FAS-Server-List>" --force
service ctxjproxy restart
service ctxvda restart
<!--NeedCopy-->
Um die FAS-Server über ctxreg
zu aktualisieren, führen Sie die folgenden Befehle aus:
sudo /opt/Citrix/VDA/bin/ctxreg update -k "HKLM\Software\Citrix\VirtualDesktopAgent\Authentication\UserCredentialService" -v "Addresses" -d "<Your-FAS-Server-List>"
service ctxjproxy restart
service ctxvda restart
<!--NeedCopy-->
Installieren von Zertifikaten
Für die Überprüfung von Benutzerzertifikaten installieren Sie das Stammzertifizierungsstellenzertifikat und alle Zwischenzertifikate auf dem VDA. Beispiel: Zum Installieren des Stammzertifizierungsstellenzertifikats rufen Sie das AD-Stammzertifikat aus dem vorherigen Schritt Abrufen des ZS-Zertifikats von der Microsoft-Zertifizierungsstelle (in AD) ab oder laden Sie es im DER-Format vom Stammzertifizierungsstellenserver http://CA-SERVER/certsrv
herunter.
Hinweis:
Die folgenden Befehle gelten auch für die Konfiguration eines Zwischenzertifikats.
Mit diesem oder einem ähnlichen Befehl können Sie eine DER-Datei (.crt, .cer, .der) in PEM konvertieren.
sudo openssl x509 -inform der -in root.cer -out root.pem
<!--NeedCopy-->
Anschließend installieren Sie mit diesem oder einem ähnlichen Befehl das Stammzertifizierungsstellenzertifikat im Verzeichnis openssl
:
sudo cp root.pem /etc/pki/CA/certs/
<!--NeedCopy-->
Hinweis:
Speichern Sie das Stammzertifizierungsstellenzertifikat nicht im Verzeichnis /root. Andernfalls besitzt FAS keine Leseberechtigung für das Stammzertifizierungsstellenzertifikat.
Ausführen von ctxfascfg.sh
Führen Sie das Skript ctxfascfg.sh aus, um FAS-Parameter zu konfigurieren:
sudo /opt/Citrix/VDA/sbin/ctxfascfg.sh
<!--NeedCopy-->
Es werden Umgebungsvariablen hinzugefügt, damit ctxfascfg.sh
im stillen Modus ausgeführt werden kann:
-
CTX_FAS_ADINTEGRATIONWAY=winbind | sssd | centrify | pbis: Die Active Directory-Integrationsmethode; das entspricht
CTX_EASYINSTALL_ADINTEGRATIONWAY
, wennCTX_EASYINSTALL_ADINTEGRATIONWAY
angegeben wurde. WennCTX_EASYINSTALL_ADINTEGRATIONWAY
nicht angegeben ist, verwendetCTX_FAS_ADINTEGRATIONWAY
die eigene Werteinstellung. -
CTX_FAS_CERT_PATH =<certificate path>: Gibt den vollständigen Pfad an, in dem Stammzertifikate und alle Zwischenzertifikate gespeichert werden.
-
CTX_FAS_KDC_HOSTNAME: Gibt den Hostnamen des Schlüsselverteilungscenters (KDC) an, wenn Sie PBIS auswählen.
-
CTX_FAS_PKINIT_KDC_HOSTNAME: Gibt den Hostnamen des PKINIT KDC an, der CTX_FAS_KDC_HOSTNAME ist, sofern nicht anders angegeben.
Wählen Sie die korrekte Active Directory-Integrationsmethode aus und geben Sie den korrekten Pfad zu den Zertifikaten ein (z. B. /etc/pki/CA/certs/
).
Das Skript installiert die Pakete krb5-pkinit und pam_krb5 und legt die relevanten Konfigurationsdateien fest.
Einschränkung
-
FAS unterstützt eingeschränkte Linux-Plattformen und AD-Integrationsmethoden. Siehe folgende Tabelle:
Winbind SSSD Centrify PBIS Amazon Linux 2 Ja Ja Ja Ja RHEL 8.4 / CentOS 8 (2105) Ja Ja Ja Ja RHEL 8.3/CentOS 8.3 Ja Ja Ja Ja RHEL 8.2/CentOS 8.2 Ja Ja Ja Ja RHEL 8.1/CentOS 8.1 Ja Ja Ja Ja RHEL 7.9/CentOS 7.9 Ja Ja Ja Ja RHEL 7.8/CentOS 7.8 Ja Ja Ja Ja SLES 15.3 Ja Nein Ja Nein SLES 15.2 Ja Nein Ja Nein SLES 12.5 Ja Nein Ja Nein Ubuntu 20.04 Ja Nein Ja Nein Ubuntu 18.04 Ja Nein Ja Nein Ubuntu 16.04 Ja Nein Ja Nein - FAS unterstützt den Sperrbildschirm noch nicht. Wenn Sie in einer Sitzung auf die Sperrschaltfläche klicken, können Sie sich mit FAS nicht erneut bei der Sitzung anmelden.
- Der Artikel Übersicht über die Architekturen des Verbundauthentifizierungsdiensts enthält eine Übersicht über die gebräuchlichen FAS-Architekturen, die in dieser Version unterstützt werden. Das Einbinden über Azure AD mit Windows 10 ist nicht möglich.
Problembehandlung
Stellen Sie vor einer Problembehandlung des Verbundauthentifizierungsdiensts (FAS) sicher, dass der Linux VDA ordnungsgemäß installiert und konfiguriert ist, sodass Sitzungen ohne FAS-Server erfolgreich im gemeinsamen Store per Kennwortauthentifizierung gestartet werden können.
Wenn Sitzungen ohne FAS-Server fehlerfrei ausgeführt werden, setzen Sie die HDX-Protokollebene der Login-Klasse auf VERBOSE und die VDA-Protokollebene auf TRACE. Informationen zum Aktivieren von Protokollen zur Ablaufverfolgung (Tracing) für Linux VDA finden Sie im Knowledge Center-Artikel CTX220130.
Fehler bei der FAS-Serverkonfiguration
Der Start einer Sitzung über den FAS-Store schlägt fehl.
Überprüfen Sie /var/log/xdl/hdx.log und suchen Sie ein Fehlerprotokoll folgender Art:
2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: validate_user: [Logon Type] Federated Authentication Logon.
2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: validate_fas: entry
2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: connect_fas: start connect to server 0
2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: connect_fas0: failed to connect: Connection refused.
2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: validate_fas: failed to connect to server [0], please confirm if fas service list is well configurated in condb
2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: validate_fas: exit, 43
2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: validate_user: failed to validate fas credential
2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: LoginBoxValidate: failed validation of user 'user1@CTXDEV.LOCAL', INVALID_PARAMETER
<!--NeedCopy-->
Lösung
Stellen Sie mit folgendem Befehl sicher, dass der Citrix Registrierungswert “HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\VirtualDesktopAgent\Authentication\UserCredentialService” auf <Your-FAS-Server-List> festgelegt ist.
sudo /opt/Citrix/VDA/bin/ctxreg dump | grep "UserCredentialService"
<!--NeedCopy-->
Wenn die Einstellung falsch ist, legen Sie sie erneut fest, wie weiter oben im Schritt Einrichten von FAS-Servern beschrieben.
Falsche Konfiguration des Zertifizierungsstellenzertifikats
Der Start einer Sitzung über den FAS-Store schlägt fehl. Ein graues Fenster wird für einige Sekunden angezeigt.
Überprüfen Sie /var/log/xdl/hdx.log und suchen Sie ein Fehlerprotokoll folgender Art:
2021-01-28 01:47:46.210 <P30656:S5> citrix-ctxlogin: get_logon_certificate: entry
2021-01-28 01:47:46.210 <P30656:S5> citrix-ctxlogin: check_caller: current process: pid [30656], name [/opt/Citrix/VDA/bin/ctxlogin]
2021-01-28 01:47:46.210 <P30656:S5> citrix-ctxlogin: get_public_certificate: entry
2021-01-28 01:47:46.211 <P30656:S5> citrix-ctxlogin: query_fas: waiting for response...
2021-01-28 01:47:46.270 <P30656:S5> citrix-ctxlogin: query_fas: query to server success
2021-01-28 01:47:46.270 <P30656:S5> citrix-ctxlogin: get_public_certificate: exit
2021-01-28 01:47:46.270 <P30656:S5> citrix-ctxlogin: fas_base64_decode: input size 1888
2021-01-28 01:47:46.271 <P30656:S5> citrix-ctxlogin: fas_base64_decode: output size 1415
2021-01-28 01:47:46.271 <P30656:S5> citrix-ctxlogin: get_logon_certificate: get logon certificate success
2021-01-28 01:47:46.271 <P30656:S5> citrix-ctxlogin: cache_certificate: cache certificate success
2021-01-28 01:47:46.271 <P30656:S5> citrix-ctxlogin: get_logon_certificate: exit, 0
2021-01-28 01:47:48.060 <P30656:S5> citrix-ctxlogin: validate_user: pam_authenticate err,can retry for user user1@CTXDEV.LOCAL
<!--NeedCopy-->
Lösung
Stellen Sie sicher, dass der vollständige Pfad, in dem das Stammzertifizierungsstellenzertifikat und alle Zwischenzertifikate gespeichert werden, korrekt in /etc/krb5.conf festgelegt ist. Der vollständige Pfad ist dem folgenden ähnlich:
[realms]
EXAMPLE.COM = {
......
pkinit_anchors = DIR:/etc/pki/CA/certs/
......
}
<!--NeedCopy-->
Wenn die vorhandene Einstellung falsch ist, legen Sie sie erneut fest, wie weiter oben im Schritt Installieren von Zertifikaten beschrieben.
Überprüfen Sie auch, ob das Stammzertifizierungsstellenzertifikat gültig ist.
Kontozuordnungsfehler bei Spiegelung
FAS ist für die SAML-Authentifizierung konfiguriert. Der folgende Fehler kann auftreten, wenn ein Benutzer der Active Directory-Verbunddienste (AD FS) den Benutzernamen und das Kennwort auf der AD FS-Anmeldeseite eingibt.
Die Fehlermeldung zeigt an, dass der Benutzer zwar erfolgreich in AD FS verifiziert wurde, aber kein gespiegeltes Konto für den Benutzer in AD konfiguriert ist.
Lösung
Richten Sie das gespiegelte Konto in AD ein.
AD FS nicht konfiguriert
Bei einem Anmeldeversuch beim FAS-Store tritt folgender Fehler auf:
Das Problem tritt auf, wenn der FAS-Speicher für die SAML-Authentifizierung konfiguriert ist, aber die AD FS-Bereitstellung fehlt.
Lösung
Stellen Sie den AD FS-Identitätsanbieter für den Verbundauthentifizierungsdienst (FAS) bereit. Weitere Informationen finden Sie unter AD FS-Bereitstellung des Verbundauthentifizierungsdiensts.
Verwandte Informationen
- Der Artikel Übersicht über die Architekturen des Verbundauthentifizierungsdiensts enthält eine Übersicht über die gebräuchlichen FAS-Architekturen.
- Artikel mit Anleitungen finden Sie unter Erweiterte Konfiguration des Verbundauthentifizierungsdiensts.
Bekanntes Problem
Beim Einsatz von FAS kann der Start einer veröffentlichten Desktop- oder App-Sitzung mit nicht-englischen Zeichen fehlschlagen.
Workaround
Klicken Sie im ZS-Tool mit der rechten Maustaste auf Vorlagen verwalten und ändern Sie die Vorlage für Citrix_SmartcardLogon von Aus diesen Informationen in Active Directory erstellen in Informationen werden in der Anforderung angegeben: