ℹ️ À savoir · En bref
Le Linux VDA publie des bureaux et applications Linux dans Citrix comme un VDA Windows : même console, mêmes catalogues, même Workspace app.
La difficulté n'est pas Citrix mais l'intégration Linux / Active Directory : DNS, Kerberos, heure et jonction au domaine doivent être parfaits.
Objectifs de la fiche
- Connaître les distributions et méthodes d'intégration AD prises en charge.
- Installer et configurer un Linux VDA.
- Préparer une image Linux pour MCS.
- Dépanner l'enregistrement et l'ouverture de session.
Architecture et prérequis

| Élément | Version 2603 / 2607 LTSR |
|---|---|
| Distributions | Ubuntu 22.04 et 24.04 ; RHEL et Rocky 8.10, 9.x, 10 ; SUSE 15.7 ; Debian 12 et 13 |
| Intégration AD | SSSD et winbind (toutes distributions), Centrify, Quest ; PBIS sur certaines seulement |
| Prérequis | ASP.NET Core Runtime 10 installé avant le VDA, un environnement de bureau (GNOME, MATE, KDE…) |
| Plateformes | vSphere, Azure, AWS, GCP, XenServer, Nutanix, Hyper-V, physique |
| Mode | Bureau partagé (multisession) ou VDI (une session par machine) |
⚠️ Piège
Sur Ubuntu, n'utilise pas le noyau ou le Xorg HWE ; reste sur une distribution et une version listées, sinon le support Citrix refusera le dossier.
Installer un VDA (machine unique)
installation
# Ubuntu : paquet puis dépendances
sudo dpkg -i xendesktopvda_*.deb ; sudo apt-get install -f -y
# Configuration interactive ou par variables (exemple non interactif)
export CTX_XDL_DDC_LIST='cc1.corp.local cc2.corp.local'
export CTX_XDL_VDI_MODE='N' # N = bureau partagé, Y = VDI
export CTX_XDL_DESKTOP_ENVIRONMENT='gnome'
export CTX_XDL_START_SERVICE='Y'
sudo -E /opt/Citrix/VDA/sbin/ctxsetup.sh --silent
# Alternative : assistant "easy install" (dépendances + jonction AD + configuration)
sudo /opt/Citrix/VDA/sbin/ctxinstall.sh
Intégration Active Directory
| Méthode | Remarques |
|---|---|
| SSSD | Standard actuel sur RHEL / Rocky / Ubuntu ; jonction avec realm join ou adcli |
| Winbind (Samba) | Très répandu, nécessaire pour certains scénarios (partages, fichiers Samba) |
| Centrify / Quest | Solutions commerciales, gestion centralisée par GPO |
| PBIS | Non pris en charge sur RHEL 9 / 10 et Rocky 9 / 10 : à éviter pour un nouveau projet |
💡 Astuce
Vérifie dans l'ordre : heure (chrony vers les DC), DNS (résolution directe et inverse des contrôleurs et du VDA), kinit utilisateur@CORP.LOCAL, klist, puis id utilisateur.
Une zone DNS parasite (zone de recherche ou domaine homonyme) peut détourner la recherche du KDC : contrôle dig _kerberos._tcp.corp.local SRV.
MCS pour Linux
Le principe est celui de CTX-05, mais la jonction au domaine se fait sur chaque VM créée, à partir de mcs.conf et de modèles de configuration AD.
préparer l'image
# /etc/xdl/mcs/mcs.conf (extrait)
AD_INTEGRATION=sssd # winbind | sssd | centrify | pbis
WORKGROUP=CORP # nom NetBIOS (casse respectée)
dns1=10.0.0.10
dns2=10.0.0.11
NTP_SERVER=10.0.0.10
VDI_MODE=N
Use_AD_Configuration_Files_Of_Current_VDA=N # Y : reprendre la config AD du VDA courant
# Appliquer la configuration MCS à l'image
sudo /opt/Citrix/VDA/sbin/deploymcs.sh
| Règle | Pourquoi |
|---|---|
| Image non jointe au domaine (sauf si l'on reprend volontairement la config du VDA courant) | Chaque VM rejoint le domaine elle-même au premier démarrage |
Modèles AD dans /etc/xdl/ad_join/ | Adapter sssd.conf.tmpl, krb5 et smb à ton domaine en gardant les variables ($REALM, $WORKGROUP) |
| Valeurs de registre persistantes | Dans /etc/xdl/mcs/mcs_local_setting.reg |
| Mise à jour | Mettre à jour le paquet sur l'image, ajuster mcs.conf, nouveau snapshot, mettre à jour le catalogue |
Dépanner
commandes utiles
systemctl status ctxvda ctxhdx # services Citrix
sudo /opt/Citrix/VDA/bin/xdping # contrôle de l'environnement (DNS, Kerberos, ports…)
sudo /opt/Citrix/VDA/bin/ctxreg list -k "HKLM\Software\Citrix\VirtualDesktopAgent" # liste des contrôleurs…
ls /var/log/xdl/ # journaux du VDA (vda.log, hdx.log…)
sudo /opt/Citrix/VDA/bin/xdlcollect.sh # collecte pour le support
| Symptôme | Cause probable | Parade |
|---|---|---|
| VDA non enregistré | Heure, DNS inverse, Kerberos, liste des contrôleurs | xdping, klist -k (keytab), chrony, liste des DDC |
| Machines MCS non jointes | Image déjà jointe, mcs.conf incohérent, modèles AD non adaptés | Image propre, revoir mcs.conf et /etc/xdl/ad_join/, refaire le snapshot |
| Échec Kerberos aléatoire | Zone DNS parasite, KDC injoignable | Vérifier les enregistrements SRV et la recherche DNS |
| Écran noir ou session fermée | Bureau non pris en charge, Wayland, profil utilisateur | Bureau listé (Xorg), journaux hdx, créer un utilisateur de test |
| Session refusée | Paramètre de sécurité HDX non pris en charge par le Linux VDA | Comparer les stratégies appliquées aux fonctions documentées du Linux VDA |
🔷 En contexte Citrix
Pour un catalogue Ubuntu MCS : image propre non jointe, mcs.conf relu ligne par ligne, DNS sans zone parasite. Ce sont les trois causes typiques des échecs de jonction et d'enregistrement.
Teste avec un catalogue de recette d'une machine avant de déployer : un cycle MCS Linux est rapide à refaire, une production cassée beaucoup moins.
À retenir
- Même console et même client que Windows ; l'effort est sur Linux + AD.
- SSSD ou winbind ; heure, DNS et Kerberos d'abord.
- MCS : image non jointe,
mcs.conf+deploymcs.sh, jonction par VM. - Distributions et bureaux listés uniquement (pas de HWE sur Ubuntu).
- xdping, journaux
/var/log/xdl/etxdlcollect.shpour dépanner.
Auto-évaluation
Q1. Pourquoi l'image MCS Linux ne doit-elle pas être jointe au domaine ?
→ Chaque VM rejoint le domaine au premier démarrage avec sa propre identité, à partir de mcs.conf et des modèles AD ; une image déjà jointe produit des identités incohérentes.
Q2. Quelles vérifications avant d'accuser Citrix quand un Linux VDA ne s'enregistre pas ?
→ Heure synchronisée, DNS direct et inverse, kinit / klist (keytab), puis xdping et la liste des contrôleurs.
Q3. Où se configure la méthode d'intégration AD pour MCS ?
→ Dans /etc/xdl/mcs/mcs.conf, variable AD_INTEGRATION (sssd, winbind, centrify, pbis).
Q4. Que faut-il installer avant le paquet Linux VDA en 2603 ?
→ ASP.NET Core Runtime 10 (et un environnement de bureau).