Um True SSO auf einem Ubuntu-/Debian-Desktop zu aktivieren, integrieren Sie die virtuelle Basismaschine (VM) mit einer Active Directory (AD)-Domäne unter Verwendung der SSSD-Lösung. Installieren Sie dann das Stammzertifikat der Zertifizierungsstelle (CA), um die vertrauenswürdige Authentifizierung zu unterstützen, bevor Sie Horizon Agent installieren.
Verwenden Sie das folgende Verfahren, um True SSO mit SSSD auf einer Ubuntu/Debian-VM zu aktivieren.
In einigen der Beispiele im Verfahren werden Platzhalterwerte verwendet, um Entitäten in Ihrer Netzwerkkonfiguration darzustellen, wie z. B. den Hostnamen Ihrer VM. Ersetzen Sie die Platzhalterwerte durch spezifische Informationen für Ihre Konfiguration, wie in der folgenden Tabelle gezeigt.
| Platzhalterwert | Beschreibung |
|---|---|
| dns_IP_ADDRESS | IP-Adresse Ihres DNS-Namenservers |
| mydomain.com | DNS-Name Ihrer Active Directory-Domäne |
| MYDOMAIN.COM | DNS-Name Ihrer Active Directory-Domäne in Großbuchstaben |
| myhost | Hostname Ihrer Ubuntu-/Debian-VM |
| MYDOMAIN | DNS-Name der Arbeitsgruppe oder NT-Domäne, in der sich Ihr Samba-Server befindet, in Großbuchstaben |
| ads-hostname | Hostname Ihres AD-Servers |
| admin-user | Benutzername des Administrators der AD-Domäne |
Voraussetzungen
-
Stellen Sie sicher, dass die VM eine der folgenden Distributionen ausführt.
- Ubuntu 22.04/20.04
- Debian 12.x/11.x Hinweis: True SSO mit SSSD wird für Debian 10.x-Desktops nicht unterstützt. Um True SSO auf einem Debian 10.x-Desktop zu konfigurieren, verwenden Sie stattdessen den Samba-Domänenbeitritt gemäß der Beschreibung unter Konfigurieren von True SSO mit Samba für Ubuntu-/Debian-Desktops.
-
Konfigurieren Sie True SSO für Workspace ONE Access und Horizon Connection Server.
-
Rufen Sie ein Stamm-CA-Zertifikat ab und speichern Sie es in
/tmp/certificate.cerauf der Ubuntu-/Debian-VM. Siehe How to export Root Certification Authority Certificate.Wenn es sich bei einer untergeordneten CA auch um eine ausstellende Zertifizierungsstelle handelt, rufen Sie die gesamte Kette der Stamm- und untergeordneten CA-Zertifikate ab und speichern Sie sie im Ordner
/tmp/certificate.cerauf der VM.
Vorgehensweise
-
Überprüfen Sie auf der Basis-VM die Netzwerkverbindung mit Active Directory.
sudo realm discover mydomain.com -
Installieren Sie die erforderlichen Abhängigkeitspakete.
sudo apt-get install sssd-tools sssd libnss-sss libpam-sss adcli samba-common-bin krb5-user krb5-pkinit -
Treten Sie der AD-Domäne bei.
sudo realm join --verbose mydomain.com -U admin-user -
Installieren Sie das Stamm-CA-Zertifikat oder die Zertifikatskette.
-
Suchen Sie das heruntergeladene Stamm-CA-Zertifikat oder die Zertifikatskette und übertragen Sie es in eine PEM-Datei.
sudo openssl x509 -inform der -in /tmp/certificate.cer -out /tmp/certificate.pem -
Kopieren Sie das Zertifikat in die Datei
/etc/sssd/pki/sssd_auth_ca_db.pem.sudo cp /tmp/certificate.pem /etc/sssd/pki/sssd_auth_ca_db.pem
-
-
Passen Sie die Konfigurationsdatei
/etc/sssd/sssd.confan, wie im folgenden Beispiel gezeigt.[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 #Use short name for user fallback_homedir = /home/%u@%d access_provider = ad ad_gpo_map_interactive #For SSO, you can add this line for ad_gpo_map_interactive and set equal to a +gdm value. You must obtain from Omnissa Support the appropriate value for your specific Horizon version ad_gpo_access_control = permissive #Only add this line for Ubuntu 20.04 and Debian 12 to fix https://bugs.launchpad.net/ubuntu/+source/sssd/+bug/1934997 [pam] #Add pam section for certificate login pam_cert_auth = True #Add this line to enable certificate login for system pam_p11_allowed_services #To enable certificate logon for Horizon Agent, you can add this line for pam_p11_allowed_services and set equal to a +gdm value. You must obtain from Omnissa Support the appropriate value for your specific Horizon version [certmap/mydomain.com/truesso] #Add this section and following lines to set match and map rule for certificate user matchrule = <EKU>msScLogin maprule = (|(userPrincipal={subject_principal})(samAccountName={subject_principal.short_name})) domains = mydomain.com priority = 10 -
Ändern Sie den Zugriffsmodus für die Konfigurationsdatei
/etc/krb5.conf, um sie bearbeitbar zu machen.sudo chmod 644 /etc/krb5.conf -
Bearbeiten Sie die Datei
/etc/krb5.confgemäß folgendem Beispiel.[realms] MYDOMAIN.COM = { kdc = kdcserver.mydomain.com admin_server = dnsserver.mydomain.com pkinit_anchors = DIR:/etc/sssd/pki pkinit_kdc_hostname = kdcserver.mydomain.com pkinit_eku_checking = kpServerAuth } [domain_realm] .mydomain.com = MYDOMAIN.COM mydomain.com = MYDOMAIN.COM -
Installieren Sie das Paket Horizon Agent mit aktiviertem True SSO.
sudo ./install_viewagent.sh -T yes -
Ändern Sie die Konfigurationsdatei
viewagent-custom.conf, sodass sie die folgende Zeile enthält.NetbiosDomain = MYDOMAIN -
Starten Sie die VM neu und melden Sie sich erneut an.
War diese Seite hilfreich?