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 24.04/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 Omnissa 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 configuration. You must obtain from Omnissa Support the appropriate value for your specific Horizon version ad_gpo_map_interactive = <Omnissa support provided value> [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 configuration. You must obtain from Omnissa Support the appropriate value for your specific Horizon version pam_p11_allowed_services=<Omnissa support provided value> [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.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" -
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?