Föderierter Authentifizierungsdienst
Sie können den Föderierten Authentifizierungsdienst (FAS) verwenden, um Benutzer zu authentifizieren, die sich bei einem Linux VDA anmelden. Der Linux VDA verwendet dieselbe Windows-Umgebung wie der Windows VDA für die FAS-Anmeldefunktion. Informationen zum Konfigurieren der Windows-Umgebung für FAS finden Sie unter Föderierter Authentifizierungsdienst. Dieser Artikel enthält zusätzliche Informationen speziell für den Linux VDA.
Hinweis:
Der Linux VDA unterstützt die Richtlinie Verhalten in der Sitzung nicht.
Der Linux VDA verwendet kurze Verbindungen, um Daten mit FAS-Servern zu übertragen.
Unterstützte Distributionen
FAS unterstützt eine begrenzte Anzahl von Linux-Distributionen und Domänenbeitrittsmethoden. Siehe die folgende Matrix:
| Winbind | SSSD | Centrify | PBIS | Quest | |
|---|---|---|---|---|---|
| Amazon Linux 2 | Ja | Ja | Ja | Ja | Nein |
| Debian 11.11 | Ja | Ja | Ja | Ja | Nein |
| RHEL 9.6/9.4/9.3/9.2/9.0 | Ja | Ja | Ja | Nein | Ja |
| RHEL 8.10/8.9/8.8/8.6 | Ja | Ja | Ja | Ja | Ja |
| RHEL 7.9, CentOS 7.9 | Ja | Ja | Ja | Ja | Ja |
| Rocky Linux 9.6/9.4/9.3/9.2/9.0 | Ja | Ja | Ja | Nein | Nein |
| Rocky Linux 8.10/8.9/8.8/8.6 | Ja | Ja | Ja | Nein | Nein |
| SUSE 15.5 | Ja | Ja | Ja | Nein | Ja |
| Ubuntu 22.04/20.04 | Ja | Ja | Ja | Ja | Ja |
Konfigurieren von FAS auf dem Linux VDA
Zertifikate installieren
Zur Überprüfung der Benutzerzertifikate installieren Sie das Stamm-CA-Zertifikat und alle Zwischenzertifikate auf dem VDA. Um beispielsweise das Stamm-CA-Zertifikat zu installieren, rufen Sie das AD-Stammzertifikat aus dem vorhergehenden Schritt Abrufen des CA-Zertifikats von der Microsoft CA (auf AD) ab oder laden Sie es vom Stamm-CA-Server http://CA-SERVER/certsrv herunter.
Hinweis:
Die folgenden Befehle gelten auch für die Konfiguration eines Zwischenzertifikats.
Um beispielsweise eine DER-Datei (.crt, .cer, .der) in PEM zu konvertieren, führen Sie einen Befehl ähnlich dem folgenden aus:
sudo openssl x509 -inform der -in root.cer -out root.pem
<!--NeedCopy-->
Installieren Sie anschließend das Stamm-CA-Zertifikat im Verzeichnis openssl, indem Sie einen Befehl ähnlich dem folgenden ausführen:
- sudo cp root.pem /etc/pki/CA/certs/
<!--NeedCopy-->
Hinweis:
Legen Sie das Stamm-CA-Zertifikat nicht unter dem Pfad /root ab. Andernfalls verfügt FAS nicht über die Leseberechtigung für das Stamm-CA-Zertifikat.
Ausführen von ctxfascfg.sh
Führen Sie das Skript ctxfascfg.sh aus, um FAS zu konfigurieren:
sudo /opt/Citrix/VDA/sbin/ctxfascfg.sh
<!--NeedCopy-->
Sie können ctxfascfg.sh im unbeaufsichtigten Modus ausführen. Bevor Sie das Skript im unbeaufsichtigten Modus ausführen, legen Sie die folgenden Umgebungsvariablen fest:
-
CTX_FAS_ADINTEGRATIONWAY=winbind | sssd | centrify | pbis | quest: Bezeichnet die Active Directory-Integrationsmethode, die
CTX_EASYINSTALL_ADINTEGRATIONWAYentspricht, wennCTX_EASYINSTALL_ADINTEGRATIONWAYangegeben ist. WennCTX_EASYINSTALL_ADINTEGRATIONWAYnicht angegeben ist, verwendetCTX_FAS_ADINTEGRATIONWAYseine eigene Werteinstellung. -
CTX_FAS_CERT_PATH =<Zertifikatspfad>: Gibt den vollständigen Pfad an, in dem das Stammzertifikat und alle Zwischenzertifikate gespeichert sind.
-
CTX_FAS_KDC_HOSTNAME: Gibt den Hostnamen des Key Distribution Center (KDC) an, wenn Sie PBIS und Quest auswählen.
-
CTX_FAS_PKINIT_KDC_HOSTNAME: Gibt den PKINIT KDC-Hostnamen an, der CTX_FAS_KDC_HOSTNAME entspricht, sofern nicht anders angegeben. Wenn Sie mehrere Delivery Controller haben, fügen Sie die Hostnamen aller KDCs der Domäne zu pkinit_kdc_hostname in der Datei /etc/krb5.conf hinzu. Weitere Informationen finden Sie im Knowledge Center-Artikel CTX322129.
-
CTX_FAS_SERVER_LIST=’list-fas-servers’ – Die Server des Föderierten Authentifizierungsdienstes (FAS) werden über die AD-Gruppenrichtlinie konfiguriert. Informationen zur FAS-Richtlinieneinstellung in der Domänen-GPO finden Sie unter Gruppenrichtlinie konfigurieren. Der Linux VDA unterstützt die AD-Gruppenrichtlinie nicht, aber Sie können stattdessen eine durch Semikolons getrennte Liste von FAS-Servern angeben. Die Reihenfolge muss dieselbe sein wie in der AD-Gruppenrichtlinie konfiguriert. Wenn eine Serveradresse entfernt wird, füllen Sie die Lücke mit der Textzeichenfolge ’<none>‘ und ändern Sie nicht die Reihenfolge der Serveradressen. Um ordnungsgemäß mit FAS-Servern zu kommunizieren, stellen Sie sicher, dass Sie eine Portnummer anhängen, die mit der auf den FAS-Servern angegebenen Portnummer übereinstimmt, z. B. CTX_XDL_FAS_LIST=’fas_server_1_url:port_number; fas_server_2_url: port_number; fas_server_3_url: port_number’.
Um eine vorhandene Linux VDA-Installation zu aktualisieren, können Sie die folgenden Befehle ausführen, um die FAS-Server festzulegen und den Dienst
ctxvdaneu zu starten, damit Ihre Einstellung wirksam wird.- 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 systemctl restart ctxjproxy systemctl restart ctxvda <!--NeedCopy-->Um die FAS-Server über
ctxregzu 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>" systemctl restart ctxjproxy systemctl restart ctxvda <!--NeedCopy-->
Wählen Sie die richtige Active Directory-Integrationsmethode und geben Sie dann den korrekten Pfad der Zertifikate ein (z. B. /etc/pki/CA/certs/).
Das Skript installiert dann die Pakete krb5-pkinit und pam_krb5 und legt die relevanten Konfigurationsdateien fest. Für RHEL 8 und höher, da PAM_KRB5 in das EPEL-Repository verschoben wurde, versucht das Skript, EPEL in diesen Distributionen zu aktivieren.
FAS deaktivieren
Um FAS auf dem Linux VDA zu deaktivieren, entfernen Sie alle FAS-Server aus der ConfDB mit den folgenden Befehlen:
sudo /opt/Citrix/VDA/bin/ctxreg create -k "HKLM\Software\Citrix\VirtualDesktopAgent\Authentication\UserCredentialService" -t "REG_SZ" -v "Addresses" -d "" --force
systemctl restart ctxjproxy
systemctl restart ctxvda
<!--NeedCopy-->
Einschränkung
- FAS unterstützt den Sperrbildschirm noch nicht. Wenn Sie in einer Sitzung auf die Sperrschaltfläche klicken, können Sie sich nicht erneut mit FAS bei der Sitzung anmelden.
- Diese Version unterstützt nur die gängigen FAS-Bereitstellungen, die im Artikel Architekturübersicht des Föderierten Authentifizierungsdienstes zusammengefasst sind, und beinhaltet nicht Windows 10 Azure AD Join.
Fehlerbehebung
Bevor Sie FAS beheben, stellen Sie sicher, dass:
-
Der Linux VDA korrekt installiert und konfiguriert ist.
-
Eine Nicht-FAS-Sitzung kann erfolgreich im gemeinsamen Store mithilfe der Kennwortauthentifizierung gestartet werden.
Wenn Nicht-FAS-Sitzungen ordnungsgemäß funktionieren, setzen Sie die HDX-Protokollstufe der Klasse Login auf VERBOSE und die VDA-Protokollstufe auf TRACE. Informationen zum Aktivieren der Trace-Protokollierung für den Linux VDA finden Sie im Knowledge Center-Artikel CTX220130.
Sie können auch das Linux-Tool XDPing verwenden, um häufige Konfigurationsprobleme zu überprüfen, die in Ihrer Linux VDA-Umgebung auftreten können.
FAS-Server-Konfigurationsfehler
Das Starten einer Sitzung aus dem FAS-Store schlägt fehl.
Überprüfen Sie /var/log/xdl/hdx.log und suchen Sie nach einem Fehlerprotokoll, das dem folgenden ähnelt:
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-->
Your-FAS-Server-List
Lösung
Führen Sie den folgenden Befehl aus, um zu überprüfen, ob der Citrix-Registrierungswert “HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\VirtualDesktopAgent\Authentication\UserCredentialService” auf <Ihre-FAS-Server-Liste> gesetzt ist.
sudo /opt/Citrix/VDA/bin/ctxreg dump | grep "UserCredentialService"
<!--NeedCopy-->
Wenn die vorhandene Einstellung falsch ist, befolgen Sie den vorhergehenden Schritt FAS-Server einrichten, um sie erneut festzulegen.
Falsche CA-Zertifikatkonfiguration
Das Starten einer Sitzung aus dem FAS-Store schlägt fehl. Ein graues Fenster erscheint und verschwindet nach einigen Sekunden wieder.

Überprüfen Sie /var/log/xdl/hdx.log und suchen Sie nach einem Fehlerprotokoll, das dem folgenden ähnelt:
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
Vergewissern Sie sich, dass Sie in /etc/krb5.conf den vollständigen Pfad, der das Root-CA-Zertifikat und alle Zwischenzertifikate speichert, korrekt festgelegt haben. Der vollständige Pfad ähnelt dem folgenden:
[realms]
EXAMPLE.COM = {
......
pkinit_anchors = DIR:/etc/pki/CA/certs/
......
}
<!--NeedCopy-->
Wenn die vorhandene Einstellung falsch ist, befolgen Sie den vorhergehenden Schritt Zertifikate installieren, um sie erneut festzulegen.
Alternativ können Sie überprüfen, ob das Root-CA-Zertifikat gültig ist.
Fehler bei der Shadow-Konto-Zuordnung
FAS ist mit SAML-Authentifizierung konfiguriert. Der folgende Fehler kann auftreten, nachdem ein ADFS-Benutzer den Benutzernamen und das Kennwort auf der ADFS-Anmeldeseite eingegeben hat.

Der Fehler weist darauf hin, dass:
- Der ADFS-Benutzer erfolgreich überprüft wurde, aber kein Shadow-Benutzer in AD konfiguriert ist.
Lösung
Legen Sie das Shadow-Konto in AD fest.
ADFS nicht konfiguriert
Der folgende Fehler tritt während eines Anmeldeversuchs beim FAS-Store auf:

Das Problem tritt auf, wenn Sie den FAS-Store für die Verwendung der SAML-Authentifizierung konfigurieren, aber die ADFS-Bereitstellung fehlt.
Lösung
Stellen Sie den ADFS IdP für den Federated Authentication Service bereit. Weitere Informationen finden Sie unter Bereitstellung von Federated Authentication Service ADFS.
Verwandte Informationen
- Die gängigen FAS-Bereitstellungen sind im Artikel Architekturübersicht des Federated Authentication Service zusammengefasst.
- “How-to”-Artikel werden im Kapitel Erweiterte Konfiguration des Federated Authentication Service vorgestellt.
Bekannte Probleme
Wenn FAS verwendet wird, kann es beim Versuch, eine veröffentlichte Desktop- oder App-Sitzung mit nicht-englischen Zeichen zu starten, zu einem Fehler kommen.

Problemumgehung
Klicken Sie im CA-Tool mit der rechten Maustaste auf Vorlagen verwalten, um die Vorlage Citrix_SmartcardLogon von Aus diesen Active Directory-Informationen erstellen in In der Anforderung bereitstellen zu ändern:
