Agent de livraison virtuel Linux 2503

Service d’authentification fédérée

Vous pouvez utiliser le Service d’authentification fédérée (FAS) pour authentifier les utilisateurs se connectant à un VDA Linux. Le VDA Linux utilise le même environnement Windows que le VDA Windows pour la fonctionnalité de connexion FAS. Pour plus d’informations sur la configuration de l’environnement Windows pour FAS, consultez Service d’authentification fédérée. Cet article fournit des informations supplémentaires spécifiques au VDA Linux.

Remarque :

  • Le VDA Linux ne prend pas en charge la stratégie Comportement en session.

  • Le VDA Linux utilise des connexions courtes pour transmettre des données aux serveurs FAS.

Distributions prises en charge

FAS prend en charge un nombre limité de distributions Linux et de méthodes de jonction de domaine. Consultez la matrice suivante :

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

Configurer FAS sur le VDA Linux

Installer les certificats

Pour la vérification des certificats des utilisateurs, installez le certificat d’autorité de certification racine et tous les certificats intermédiaires sur le VDA. Par exemple, pour installer le certificat d’autorité de certification racine, obtenez le certificat racine AD à partir de l’étape précédente Récupérer le certificat d’autorité de certification auprès de l’autorité de certification Microsoft (sur AD), ou téléchargez-le depuis le serveur d’autorité de certification racine http://CA-SERVER/certsrv.

Remarque :

Les commandes suivantes s’appliquent également à la configuration d’un certificat intermédiaire.

Par exemple, pour convertir un fichier DER (.crt, .cer, .der) en PEM, exécutez une commande similaire à la suivante :

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

Ensuite, installez le certificat d’autorité de certification racine dans le répertoire openssl en exécutant une commande similaire à la suivante :

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

Remarque :

Ne placez pas le certificat d’autorité de certification racine sous le chemin /root. Sinon, FAS ne disposera pas de la permission de lecture pour le certificat d’autorité de certification racine.

Exécuter ctxfascfg.sh

Exécutez le script ctxfascfg.sh pour configurer FAS :

sudo /opt/Citrix/VDA/sbin/ctxfascfg.sh
<!--NeedCopy-->

Vous pouvez exécuter ctxfascfg.sh en mode silencieux. Avant d’exécuter le script en mode silencieux, définissez les variables d’environnement suivantes :

  • CTX_FAS_ADINTEGRATIONWAY=winbind | sssd | centrify | pbis | quest : Indique la méthode d’intégration Active Directory, qui est égale à CTX_EASYINSTALL_ADINTEGRATIONWAY lorsque CTX_EASYINSTALL_ADINTEGRATIONWAY est spécifiée. Si CTX_EASYINSTALL_ADINTEGRATIONWAY n’est pas spécifiée, CTX_FAS_ADINTEGRATIONWAY utilise sa propre valeur.

  • CTX_FAS_CERT_PATH =<chemin du certificat> : Spécifie le chemin complet où sont stockés le certificat racine et tous les certificats intermédiaires.

  • CTX_FAS_KDC_HOSTNAME : Spécifie le nom d’hôte du Centre de distribution de clés (KDC) lorsque vous sélectionnez PBIS et Quest.

  • CTX_FAS_PKINIT_KDC_HOSTNAME : Spécifie le nom d’hôte du KDC PKINIT, qui est égal à CTX_FAS_KDC_HOSTNAME sauf indication contraire. Si vous avez plusieurs Delivery Controllers, ajoutez les noms d’hôte de tous les KDC du domaine à pkinit_kdc_hostname dans le fichier /etc/krb5.conf. Pour plus d’informations, consultez l’article du Knowledge Center CTX322129.

  • CTX_FAS_SERVER_LIST=’list-fas-servers’ – Les serveurs du Service d’authentification fédérée (FAS) sont configurés via la stratégie de groupe AD. Pour plus d’informations sur la configuration de la stratégie FAS sur l’objet de stratégie de groupe de domaine, consultez Configurer la stratégie de groupe. Le VDA Linux ne prend pas en charge la stratégie de groupe AD, mais vous pouvez fournir une liste de serveurs FAS séparés par des points-virgules à la place. La séquence doit être la même que celle configurée dans la stratégie de groupe AD. Si une adresse de serveur est supprimée, remplissez son espace vide avec la chaîne de texte ’<none>‘ et ne modifiez pas l’ordre des adresses de serveur. Pour communiquer correctement avec les serveurs FAS, assurez-vous d’ajouter un numéro de port cohérent avec le numéro de port spécifié sur les serveurs FAS, par exemple, CTX_XDL_FAS_LIST=’fas_server_1_url:port_number; fas_server_2_url: port_number; fas_server_3_url: port_number’.

    Pour mettre à niveau une installation VDA Linux existante, vous pouvez exécuter les commandes suivantes pour définir les serveurs FAS et redémarrer le service ctxvda afin que votre paramètre prenne effet.

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

    Pour mettre à jour les serveurs FAS via ctxreg, exécutez les commandes suivantes :

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

Choisissez la méthode d’intégration Active Directory correcte, puis saisissez le chemin correct des certificats (par exemple, /etc/pki/CA/certs/).

Le script installe ensuite les packages krb5-pkinit et pam_krb5 et configure les fichiers de configuration pertinents. Pour RHEL 8 et versions ultérieures, comme PAM_KRB5 est déplacé vers le référentiel EPEL, le script tente d’activer EPEL dans ces distributions.

Désactiver FAS

Pour désactiver FAS sur le VDA Linux, supprimez tous les serveurs FAS de ConfDB à l’aide des commandes suivantes :

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

Activer l’authentification secondaire en cas d’échec de l’authentification unique FAS

Le VDA Linux offre une résilience de connexion améliorée en proposant une méthode d’authentification secondaire spécifiquement lorsque l’authentification unique (SSO) FAS échoue. Grâce à cette fonctionnalité, si l’authentification unique FAS rencontre des problèmes, les utilisateurs sont invités à saisir manuellement leurs informations d’identification pour l’authentification par mot de passe. Pour activer cette fonctionnalité, exécutez la commande suivante :

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

Limitation

  • FAS ne prend pas encore en charge l’écran de verrouillage. Si vous cliquez sur le bouton de verrouillage dans une session, vous ne pouvez pas vous reconnecter à la session à l’aide de FAS.
  • Cette version ne prend en charge que les déploiements FAS courants résumés dans l’article Présentation de l’architecture du Service d’authentification fédérée et n’inclut pas Windows 10 Azure AD Join.

Dépannage

Avant de dépanner FAS, assurez-vous que :

  • Le VDA Linux est installé et configuré correctement.
  • Une session non-FAS peut être lancée avec succès sur le magasin commun à l’aide de l’authentification par mot de passe.

Si les sessions non-FAS fonctionnent correctement, définissez le niveau de journalisation HDX de la classe Login sur VERBOSE et le niveau de journalisation VDA sur TRACE. Pour plus d’informations sur l’activation de la journalisation de trace pour le VDA Linux, consultez l’article du Centre de connaissances CTX220130.

Vous pouvez également utiliser l’outil Linux XDPing pour vérifier les problèmes de configuration courants qui pourraient exister dans votre environnement VDA Linux.

Erreur de configuration du serveur FAS

Le lancement d’une session depuis le magasin FAS échoue.

  • Vérifiez /var/log/xdl/hdx.log et recherchez le journal d’erreurs similaire à ce qui suit :

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


#### Solution

Exécutez la commande suivante pour vérifier que la valeur de registre Citrix "HKEY\_LOCAL\_MACHINE\\SOFTWARE\\Citrix\\VirtualDesktopAgent\\Authentication\\UserCredentialService" est définie sur \<Votre-Liste-Serveurs-FAS\>.

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

Si le paramètre existant est incorrect, suivez l'étape précédente [Définir les serveurs FAS](/en-us/linux-virtual-delivery-agent/2503/configure/authentication/federated-authentication-service.html) pour le définir à nouveau.

### Configuration incorrecte du certificat d'autorité de certification

Le lancement d'une session depuis le magasin FAS échoue. Une fenêtre grise apparaît et disparaît quelques secondes plus tard.

![Connexion invalide en raison d'une configuration incorrecte du certificat d'autorité de certification racine](/en-us/linux-virtual-delivery-agent/2503/media/incorrect-root-ca-cert-config.png)

Vérifiez **/var/log/xdl/hdx.log** et recherchez le journal d'erreurs similaire à ce qui suit :

<!--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>


#### Solution

Vérifiez que vous avez correctement défini dans `/etc/krb5.conf` le chemin complet qui stocke le certificat d'autorité de certification racine et tous les certificats intermédiaires. Le chemin complet est similaire à ce qui suit :

<!--NeedCopy-->

[realms]

EXAMPLE.COM = {

......

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

......

}


Si le paramètre existant est incorrect, suivez l'étape précédente [Installer les certificats](/en-us/linux-virtual-delivery-agent/2503/configure/authentication/federated-authentication-service.html#install-certificates) pour le définir à nouveau.

Vous pouvez également vérifier si le certificat d'autorité de certification racine est valide.

### Erreur de mappage de compte fantôme

FAS est configuré par l'authentification SAML. L'erreur suivante peut se produire après qu'un utilisateur ADFS a saisi son nom d'utilisateur et son mot de passe sur la page de connexion ADFS.

![Erreur de mappage de compte fantôme](/en-us/linux-virtual-delivery-agent/2503/media/shadow-account-mapping-error.png)

L'erreur indique que :

-  L'utilisateur ADFS a été vérifié avec succès, mais aucun utilisateur fantôme n'est configuré sur AD.

#### Solution

Définissez le compte fantôme sur AD.

### ADFS non configuré

L'erreur suivante se produit lors d'une tentative de connexion au magasin FAS :

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

Le problème survient lorsque vous configurez le magasin FAS pour utiliser l'authentification SAML, mais que le déploiement ADFS est manquant.

#### Solution

Déployez l'IdP ADFS pour le service d'authentification fédérée. Pour plus d'informations, consultez [Déploiement ADFS du service d'authentification fédérée](/en-us/federated-authentication-service/2503/deployment-architectures/adfs.html).

## Informations connexes

-  Les déploiements FAS courants sont résumés dans l'article [Présentation de l'architecture du service d'authentification fédérée](/en-us/federated-authentication-service/2503/deployment-architectures.html).
-  Les articles « Comment faire » sont présentés dans le chapitre [Configuration avancée du service d'authentification fédérée](/en-us/federated-authentication-service/2503/config-manage.html).

## Problèmes connus

Lorsque FAS est utilisé, vous pouvez échouer lors de la tentative de lancement d'un bureau publié ou d'une session d'application avec des caractères non-anglais.

![Échec du lancement de sessions avec des caractères non-anglais](/en-us/linux-virtual-delivery-agent/2503/media/launching-nonenglish-session-fails.png)

### Solution de contournement

Cliquez avec le bouton droit sur **Gérer les modèles** dans l'outil CA pour modifier le modèle **Citrix\_SmartcardLogon** de **Construire à partir de ces informations Active Directory** à **Fournir dans la demande** :

![L'option Fournir dans la demande](/en-us/linux-virtual-delivery-agent/2503/media/supply-in-the-request.png)
<!--NeedCopy-->
Service d’authentification fédérée