Linux Virtual Delivery Agent 2503

Federated Authentication Service

Sie können den Federated Authentication Service (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 Federated Authentication Service. Dieser Artikel enthält zusätzliche Informationen speziell für den Linux VDA.

Hinweis:

  • Der Linux VDA unterstützt die Richtlinie Verhalten während der Sitzung nicht.

  • Der Linux VDA verwendet kurze Verbindungen, um Daten mit FAS-Servern zu übertragen.

Unterstützte Distributionen

FAS unterstützt eingeschränkte Linux-Distributionen und Methoden zur Domänenbeitritt. Siehe die folgende Matrix:

  Winbind SSSD Centrify PBIS Quest
Debian 12.9/11.11 Ja Ja Ja Ja Nein
RHEL 9.6/9.4/9.2 Ja Ja Ja Nein Ja
RHEL 8.10/8.8 Ja Ja Ja Ja Ja
Rocky Linux 9.6/9.4/9.2 Ja Ja Ja Nein Nein
Rocky Linux 8.10/8.8 Ja Ja Ja Nein Nein
SUSE 15.6 Ja Ja Ja Nein Nein
Ubuntu 24.04 Ja Ja Ja Nein Nein
Ubuntu 22.04 Ja Ja Ja Ja Ja

FAS auf dem Linux VDA konfigurieren

Zertifikate installieren

Zur Überprüfung der Benutzerzertifikate installieren Sie das Stammzertifikat der Zertifizierungsstelle (CA) und alle Zwischenzertifikate auf dem VDA. Um beispielsweise das Stammzertifikat der Zertifizierungsstelle (CA) zu installieren, rufen Sie das AD-Stammzertifikat aus dem vorherigen 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 ähnlichen Befehl wie den folgenden aus:

sudo openssl x509 -inform der -in root.cer -out root.pem
<!--NeedCopy-->

Installieren Sie anschließend das Stammzertifikat der Zertifizierungsstelle (CA) im openssl-Verzeichnis, indem Sie einen ähnlichen Befehl wie den folgenden ausführen:

-  sudo cp root.pem /etc/pki/CA/certs/
<!--NeedCopy-->

Hinweis:

Legen Sie das Stammzertifikat der Zertifizierungsstelle (CA) nicht unter dem Pfad /root ab. Andernfalls verfügt FAS nicht über die Leseberechtigung für das Stammzertifikat der Zertifizierungsstelle (CA).

ctxfascfg.sh ausführen

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_ADINTEGRATIONWAY entspricht, wenn CTX_EASYINSTALL_ADINTEGRATIONWAY angegeben ist. Wenn CTX_EASYINSTALL_ADINTEGRATIONWAY nicht angegeben ist, verwendet CTX_FAS_ADINTEGRATIONWAY seine eigene Werteinstellung.

  • CTX_FAS_CERT_PATH =<certificate path>: Gibt den vollständigen Pfad an, der das Stammzertifikat und alle Zwischenzertifikat speichert.

  • 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 Federated Authentication Service (FAS)-Server werden über die AD-Gruppenrichtlinie konfiguriert. Informationen zur FAS-Richtlinieneinstellung im Domänen-GPO finden Sie unter Gruppenrichtlinie konfigurieren. Der Linux VDA unterstützt die AD-Gruppenrichtlinie nicht, aber Sie können stattdessen eine semikolongetrennte Liste von FAS-Servern angeben. Die Reihenfolge muss dieselbe sein wie in der AD-Gruppenrichtlinie konfiguriert. Wenn eine Serveradresse entfernt wird, füllen Sie ihre 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 bestehende Linux VDA-Installation zu aktualisieren, können Sie die folgenden Befehle ausführen, um die FAS-Server festzulegen und den ctxvda-Dienst neu 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 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>"
    
     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-->

Sekundäre Authentifizierung für FAS SSO-Fehler aktivieren

Der Linux VDA bietet eine verbesserte Anmelderesilienz, indem er eine sekundäre Authentifizierungsmethode anbietet, insbesondere wenn FAS Single Sign-On (SSO) fehlschlägt. Mit dieser Funktion werden Benutzer, wenn FAS SSO auf Probleme stößt, aufgefordert, ihre Anmeldeinformationen für die Kennwortauthentifizierung manuell einzugeben. Um die Funktion zu aktivieren, führen Sie den folgenden Befehl aus:

create -k "HKLM\System\CurrentControlSet\Control\Citrix\AccessControl\Login\Global" -t "REG_DWORD" -v "SecondaryAuthEnabled" -d "0x00000001" --force
<!--NeedCopy-->

Einschränkung

  • FAS unterstützt den Sperrbildschirm noch nicht. Wenn Sie in einer Sitzung auf die Schaltfläche zum Sperren klicken, können Sie sich nicht erneut über FAS bei der Sitzung anmelden.
  • Diese Version unterstützt nur die gängigen FAS-Bereitstellungen, die im Artikel Architekturübersicht des Federated Authentication Service zusammengefasst sind, und beinhaltet nicht Windows 10 Azure AD Join.

Fehlerbehebung

Bevor Sie FAS beheben, stellen Sie sicher, dass:

  • Der Linux VDA ist korrekt installiert und konfiguriert.
  • Eine Nicht-FAS-Sitzung kann erfolgreich im gemeinsamen Store mithilfe der Kennwortauthentifizierung gestartet werden.

Wenn Nicht-FAS-Sitzungen ordnungsgemäß funktionieren, setzen Sie die HDX-Protokollierungsstufe der Klasse Login auf VERBOSE und die VDA-Protokollierungsstufe 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 nach häufigen Konfigurationsproblemen in Ihrer Linux VDA-Umgebung zu suchen.

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:

Your-FAS-Server-List 2021-01-28 01:42:16.164 citrix-ctxlogin: validate_user: [Logon Type] Federated Authentication Logon.

2021-01-28 01:42:16.164 citrix-ctxlogin: validate_fas: entry

2021-01-28 01:42:16.164 citrix-ctxlogin: connect_fas: start connect to server 0

2021-01-28 01:42:16.164 citrix-ctxlogin: connect_fas0: failed to connect: Connection refused.

  • 2021-01-28 01:42:16.164 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 &lt;P26422:S4&gt; citrix-ctxlogin: validate_fas: exit, 43

2021-01-28 01:42:16.164 citrix-ctxlogin: validate_user: failed to validate fas credential

2021-01-28 01:42:16.164 citrix-ctxlogin: LoginBoxValidate: failed validation of user 'user1@CTXDEV.LOCAL', INVALID_PARAMETER


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

<!--NeedCopy-->
sudo /opt/Citrix/VDA/bin/ctxreg dump grep “UserCredentialService”

Wenn die vorhandene Einstellung falsch ist, befolgen Sie den vorhergehenden Schritt [FAS-Server einrichten](/en-us/linux-virtual-delivery-agent/2503/configure/authentication/federated-authentication-service.html), 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.

![Ungültige Anmeldung aufgrund falscher Root-CA-Zertifikatkonfiguration](/en-us/linux-virtual-delivery-agent/2503/media/incorrect-root-ca-cert-config.png)

Überprüfen Sie **/var/log/xdl/hdx.log** und suchen Sie nach einem Fehlerprotokoll, das dem folgenden ähnelt:

<!--NeedCopy-->

2021-01-28 01:47:46.210 citrix-ctxlogin: get_logon_certificate: entry

2021-01-28 01:47:46.210 citrix-ctxlogin: check_caller: current process: pid [30656], name [/opt/Citrix/VDA/bin/ctxlogin]

2021-01-28 01:47:46.210 citrix-ctxlogin: get_public_certificate: entry

2021-01-28 01:47:46.211 citrix-ctxlogin: query_fas: waiting for response...

2021-01-28 01:47:46.270 citrix-ctxlogin: query_fas: query to server success

2021-01-28 01:47:46.270 citrix-ctxlogin: get_public_certificate: exit

2021-01-28 01:47:46.270 citrix-ctxlogin: fas_base64_decode: input size 1888

2021-01-28 01:47:46.271 citrix-ctxlogin: fas_base64_decode: output size 1415

2021-01-28 01:47:46.271 citrix-ctxlogin: get_logon_certificate: get logon certificate success

2021-01-28 01:47:46.271 citrix-ctxlogin: cache_certificate: cache certificate success

2021-01-28 01:47:46.271 citrix-ctxlogin: get_logon_certificate: exit, 0

2021-01-28 01:47:48.060 citrix-ctxlogin: validate_user: pam_authenticate err,can retry for user user1@CTXDEV.LOCAL


#### Lösung

Stellen Sie sicher, dass Sie in `/etc/krb5.conf` den vollständigen Pfad korrekt festgelegt haben, der das Root-CA-Zertifikat und alle Zwischenzertifikate speichert. Der vollständige Pfad ähnelt dem folgenden:

<!--NeedCopy-->

[realms]

EXAMPLE.COM = {

......

pkinit_anchors = DIR:/etc/pki/CA/certs/

......

}


Wenn die vorhandene Einstellung falsch ist, befolgen Sie den vorhergehenden Schritt [Zertifikate installieren](/en-us/linux-virtual-delivery-agent/2503/configure/authentication/federated-authentication-service.html#install-certificates), um sie erneut festzulegen.

Alternativ können Sie überprüfen, ob das Root-CA-Zertifikat gültig ist.

### Fehler bei der Zuordnung von Shadow-Konten

FAS ist über SAML-Authentifizierung konfiguriert. Der folgende Fehler kann auftreten, nachdem ein ADFS-Benutzer den Benutzernamen und das Kennwort auf der ADFS-Anmeldeseite eingegeben hat.

![Fehler bei der Zuordnung von Shadow-Konten](/en-us/linux-virtual-delivery-agent/2503/media/shadow-account-mapping-error.png)

Der Fehler weist darauf hin, dass:

-  Der ADFS-Benutzer wurde erfolgreich überprüft, aber es ist kein Shadow-Benutzer in AD konfiguriert.

#### Lösung

Richten Sie das Shadow-Konto in AD ein.

### ADFS nicht konfiguriert

Der folgende Fehler tritt bei einem Anmeldeversuch im FAS-Store auf:

![ADFS nicht konfiguriert](/en-us/linux-virtual-delivery-agent/2503/media/adfs-not-configured.png)

Das Problem tritt auf, wenn Sie den FAS-Store für die Verwendung der SAML-Authentifizierung konfigurieren, die ADFS-Bereitstellung jedoch fehlt.

#### Lösung

Stellen Sie den ADFS IdP für den Federated Authentication Service bereit. Weitere Informationen finden Sie unter [ADFS-Bereitstellung des Federated Authentication Service](/en-us/federated-authentication-service/2503/deployment-architectures/adfs.html).

## Verwandte Informationen

-  Die gängigen FAS-Bereitstellungen sind im Artikel [Architekturübersicht des Federated Authentication Service](/en-us/federated-authentication-service/2503/deployment-architectures.html) zusammengefasst.
-  „How-to“-Artikel werden im Kapitel [Erweiterte Konfiguration des Federated Authentication Service](/en-us/federated-authentication-service/2503/config-manage.html) vorgestellt.

## Bekannte Probleme

Wenn FAS verwendet wird, kann es fehlschlagen, wenn Sie versuchen, eine veröffentlichte Desktop- oder App-Sitzung mit nicht-englischen Zeichen zu starten.

![Fehler beim Starten von Sitzungen mit nicht-englischen Zeichen](/en-us/linux-virtual-delivery-agent/2503/media/launching-nonenglish-session-fails.png)

### 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:

![Die Option „In der Anforderung bereitstellen“](/en-us/linux-virtual-delivery-agent/2503/media/supply-in-the-request.png)
<!--NeedCopy-->
Federated Authentication Service