Configurer le 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 avec les serveurs FAS.
Le VDA Linux communique avec les serveurs FAS via le port 80 uniquement.
Distributions prises en charge
-
FAS prend en charge un nombre limité de plateformes Linux et de méthodes d’intégration AD. Consultez la matrice suivante :
Winbind SSSD Centrify PBIS Quest Amazon Linux 2 Oui Oui Oui Oui Non RHEL 8.10 Oui Oui Oui Oui Oui RHEL 8.8 Oui Oui Oui Oui Oui RHEL 8.6 Oui Oui Oui Oui Oui RHEL 8.4 Oui Oui Oui Oui Oui RHEL 8.3 Oui Oui Oui Oui Oui RHEL 8.2 Oui Oui Oui Oui Oui RHEL 8.1 Oui Oui Oui Oui Oui RHEL 7.9 / CentOS 7.9 Oui Oui Oui Oui Oui RHEL 7.8 / CentOS 7.8 Oui Oui Oui Oui Oui Rocky Linux 8.10/8.8/8.6 Oui Oui Non Non Non SLES 15.3 Oui Non Oui Non Oui SLES 15.2 Oui Non Oui Non Oui SLES 12.5 Oui Non Oui Non Non Ubuntu 20.04 Oui Non Oui Non Oui Ubuntu 18.04 Oui Non Oui Non Oui
Configurer FAS sur le VDA Linux
Définir les serveurs FAS
Pour utiliser FAS dans une nouvelle installation de VDA Linux, tapez le nom de domaine complet (FQDN) de chaque serveur FAS lorsque vous exécutez ctxinstall.sh ou ctxsetup.sh. Étant donné que le VDA Linux ne prend pas en charge la stratégie de groupe AD, vous pouvez fournir une liste de serveurs FAS séparés par des points-virgules. Si une adresse de serveur est supprimée, remplissez son champ vide avec la chaîne de texte <none> et ne modifiez pas l’ordre des adresses de serveur.
Pour mettre à niveau une installation VDA Linux existante, vous pouvez réexécuter ctxsetup.sh pour définir les serveurs FAS. Vous pouvez également 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
service ctxjproxy restart
service ctxvda restart
<!--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>"
service ctxjproxy restart
service ctxvda restart
<!--NeedCopy-->
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 son format DER 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.
- Convertissez un fichier DER (.crt, .cer, .der) en PEM en exécutant 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 d’accès /root. Sinon, FAS ne dispose pas de l’autorisation 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-->
Des variables d’environnement sont ajoutées afin que ctxfascfg.sh puisse être exécuté en mode silencieux :
-
CTX_FAS_ADINTEGRATIONWAY=winbind | sssd | centrify | pbis | quest : Indique la méthode d’intégration Active Directory, qui est égale à
CTX_EASYINSTALL_ADINTEGRATIONWAYlorsqueCTX_EASYINSTALL_ADINTEGRATIONWAYest spécifié. SiCTX_EASYINSTALL_ADINTEGRATIONWAYn’est pas spécifié,CTX_FAS_ADINTEGRATIONWAYutilise sa propre valeur. -
CTX_FAS_CERT_PATH =<chemin du certificat> : Spécifie le chemin d’accès complet qui stocke 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.
-
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.
Choisissez la méthode d’intégration Active Directory correcte, puis tapez le chemin d’accès correct des certificats (par exemple, /etc/pki/CA/certs/).
Le script installe ensuite les packages krb5-pkinit et pam_krb5 et définit les fichiers de configuration pertinents.
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 prend en charge uniquement 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 et qu’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 Knowledge Center CTX220130.
Erreur de configuration du serveur FAS
Le lancement d’une session à partir du magasin FAS échoue.
Vérifiez /var/log/xdl/hdx.log et recherchez le journal d’erreurs similaire à ce qui suit :
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-->
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-de-Serveurs-FAS>.
sudo /opt/Citrix/VDA/bin/ctxreg dump | grep "UserCredentialService"
<!--NeedCopy-->
Si le paramètre existant est incorrect, suivez l’étape précédente Définir les serveurs FAS pour le définir à nouveau.
Configuration incorrecte du certificat d’autorité de certification
Le lancement d’une session à partir du magasin FAS échoue. Une fenêtre grise apparaît et disparaît quelques secondes plus tard.

Vérifiez /var/log/xdl/hdx.log et recherchez le journal d’erreurs similaire à ce qui suit :
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-->
Solution
Vérifiez que vous avez correctement défini dans /etc/krb5.conf le chemin d’accès complet qui stocke le certificat d’autorité de certification racine et tous les certificats intermédiaires. Le chemin d’accès complet est similaire à ce qui suit :
[realms]
EXAMPLE.COM = {
......
pkinit_anchors = DIR:/etc/pki/CA/certs/
......
}
<!--NeedCopy-->
Si le paramètre existant est incorrect, suivez l’étape précédente Installer les certificats 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 entré le nom d’utilisateur et le mot de passe sur la page de connexion ADFS.

Cette erreur indique que l’utilisateur ADFS a été vérifié avec succès, mais qu’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 :

Le problème se produit lorsque le magasin FAS est configuré 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.
Informations associées
- Les déploiements FAS courants sont résumés dans l’article Architectures de déploiement.
- Les articles « Comment faire » sont présentés dans le chapitre Configuration avancée du service d’authentification fédérée.
Problème connu
Lorsque FAS est utilisé, vous pouvez échouer lors du lancement d’une session de bureau ou d’application publiée avec des caractères non anglais.

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 :
