Skip to main content

24 août 2026

Configurer True SSO avec SSSD sur des postes de travail Ubuntu/Debian

Pour prendre en charge True SSO avec SSSD sur des postes de travail Ubuntu/Debian, intégrez la machine virtuelle (VM) de base à un domaine Active Directory (AD) à l'aide de la solution SSSD. Installez ensuite le certificat d'autorité de certification (CA) racine pour prendre en charge l'authentification approuvée avant d'installer Horizon Agent.

Remarque : pour vous assurer qu'une configuration True SSO existante continue de fonctionner après une mise à niveau d'Horizon 8, vous devrez peut-être modifier /etc/sssd/sssd.conf. Pour plus d'informations, reportez-vous à la section Mise à niveau vers Omnissa Horizon 8 2412 et versions ultérieures.

Certains exemples de la procédure utilisent des valeurs d'espace réservé pour représenter des entités dans votre configuration réseau, telles que le nom d'hôte de votre VM. Remplacez les valeurs d'espace réservé par des informations spécifiques à votre configuration, comme décrit dans le tableau suivant.

Valeur d'espace réservéDescription
dns_IP_ADDRESSAdresse IP de votre serveur de nom DNS
mydomain.comNom DNS de votre domaine AD
MYDOMAIN.COMNom DNS de votre domaine AD en majuscules
myhostNom d'hôte de votre VM Ubuntu/Debian
MYDOMAINNom DNS du groupe de travail ou domaine NT qui inclut votre serveur Samba, en majuscules
ads-hostnameNom d'hôte de votre serveur AD
admin-userNom d'utilisateur de l'administrateur de domaine AD

Conditions préalables

  • Vérifiez que la machine virtuelle exécute l'une des distributions suivantes :

    • Ubuntu
    • Debian
  • Configurez True SSO pour Omnissa Access et Horizon Connection Server.

  • Procurez-vous un certificat d'autorité de certification (CA) racine et enregistrez-le dans /tmp/certificate.cer sur la machine virtuelle Ubuntu/Debian. Reportez-vous à Exportation du certificat d'autorité de certification de racine.

    Si une autorité de certification (CA) subordonnée est également une autorité émettrice, procurez-vous la chaîne complète de certificats d'autorité de certification (CA) racine et subordonnée et enregistrez-la dans /tmp/certificate.cer sur la machine virtuelle.

Procédure

  1. Sur la VM de base, vérifiez la connexion réseau à Active Directory.

    sudo apt install -y realmd
    sudo realm discover mydomain.com
    
  2. Installez les modules de dépendance requis.

    sudo apt-get install sssd-tools sssd libnss-sss libpam-sss libpam-pkcs11 adcli samba-common-bin krb5-user krb5-pkinit
    
  3. Joignez le domaine AD.

    sudo realm join --verbose mydomain.com -U admin-user
    
  4. Installez le certificat ou la chaîne de certificats d'autorité de certification (CA) racine.

    1. Localisez le certificat ou la chaîne de certificats d'autorité de certification (CA) racine que vous avez téléchargé et transférez-le vers un fichier PEM.

      sudo openssl x509 -inform der -in /tmp/certificate.cer -out /tmp/certificate.pem
      
    2. Copiez le certificat dans le fichier /etc/sssd/pki/sssd_auth_ca_db.pem.

      sudo cp /tmp/certificate.pem /etc/sssd/pki/sssd_auth_ca_db.pem
      
  5. Modifiez le fichier de configuration /etc/sssd/sssd.conf, comme illustré dans l'exemple suivant.

    Remarques :

    use_fully_qualified_names = False signifie utiliser un nom court pour l'utilisateur

    Ajouter la ligne ad_gpo_map_interactive = +gdm-hzncred pour SSO

    Ajouter ad_gpo_access_control = permissive uniquement pour Ubuntu 20.04 et Debian 12 pour corriger https://bugs.launchpad.net/ubuntu/+source/sssd/+bug/1934997

    Ajoutez les lignes de code [pam] ci-dessous pour disposer d'une connexion par certificat. La ligne pam_cert_auth active la connexion par certificat pour le système. La lignepam_p11_allowed_services active la connexion par certificat pour Horizon Agent.

    Ajoutez les lignes de code [cert] pour définir la règle de correspondance et de mappage pour l'utilisateur du certificat.

    [sssd]
    domains = mydomain.com
    config_file_version = 2
    services = nss, pam
     
    [domain/mydomain.com]
    ad_domain = mydomain.com
    krb5_realm = MYDOMAIN.COM
    realmd_tags = manages-system joined-with-adcli
    cache_credentials = True
    id_provider = ad
    krb5_store_password_if_offline = True
    default_shell = /bin/bash
    ldap_id_mapping = True
    use_fully_qualified_names = False
    fallback_homedir = /home/%u@%d
    access_provider = ad
    ad_gpo_map_interactive = +gdm-hzncred
    ad_gpo_access_control = permissive
     
    [pam]
    pam_cert_auth = True
    pam_p11_allowed_services = +gdm-hzncred
     
    [certmap/mydomain.com/truesso]
    matchrule = <EKU>msScLogin
    maprule = (|(userPrincipal={subject_principal})(samAccountName={subject_principal.short_name}))
    domains = mydomain.com
    priority = 10
    
  6. Modifiez le mode d'accès au fichier de configuration /etc/krb5.conf pour le rendre modifiable.

    sudo chmod 644 /etc/krb5.conf
    
  7. Modifiez le fichier /etc/krb5.conf, comme illustré dans l'exemple suivant.

    kdc and pkinit_kdc_hostname specify Kerberos Key Distribution Center
    This can be found in output of "dig +short _kerberos._tcp.MYDOMAIN.COM SRV" or "nslookup -type=SRV _kerberos._tcp.dc._msdcs.mydomain.com"
    

    Incluez les paramètres PKINT suivants dans la section [realms].

    pkinit_anchors specifies the directory containing trusted CA certificates for PKINIT
    pkinit_kdc_hostname: Hostname of the KDC for PKINIT
    pkinit_eku_checking: Controls Extended Key Usage checking (example, kpServerAuth)
    

    L'exemple suivant inclut les paramètres PKINT dans la section [realms].

    [realms]
    http://MYDOMAIN.COM  = {
    kdc =  http://dnsserver.mydomain.com 
    admin_server =  http://dnsserver.mydomain.com 
    pkinit_anchors = FILE:/etc/sssd/pki/sssd_auth_ca_db.pem
    pkinit_kdc_hostname =  http://dnsserver.mydomain.com 
    pkinit_eku_checking = kpServerAuth
    }
    
  8. Installez le module Horizon Agent, avec True SSO activé.

    sudo ./install_viewagent.sh -T yes
    
  9. Modifiez le fichier de configuration /etc/omnissa/viewagent-custom.conf afin qu'il inclue la ligne suivante.

```
NetbiosDomain = MYDOMAIN
```

11. Redémarrez la VM et reconnectez-vous.

Cette page vous a-t-elle été utile ?

Envoyer un commentaire sur cette rubrique

Cette rubrique vous a-t-elle été utile ?

N'indiquez aucune information personnelle ou confidentielle.

Génération du lien…