Um True SSO mit SSSD 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.
Hinweis: Um sicherzustellen, dass eine vorhandene True SSO-Konfiguration nach einem Horizon 8-Upgrade weiterhin funktioniert, müssen Sie möglicherweise /etc/sssd/sssd.conf ändern. Weitere Informationen finden Sie unter Aktualisieren von Omnissa Horizon 8 2412 und höher.
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
- Debian
-
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 apt install -y realmd sudo realm discover mydomain.com -
Installieren Sie die erforderlichen Abhängigkeitspakete.
sudo apt-get install sssd-tools sssd libnss-sss libpam-sss libpam-pkcs11 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.Hinweise:
use_fully_qualified_names = Falsebedeutet, dass der Kurzname für den Benutzer verwendet werden mussad_gpo_map_interactive = +gdm-hzncred-Zeile für SSO hinzufügenad_gpo_access_control = permissivenur für Ubuntu 20.04 und Debian 12 hinzufügen, um https://bugs.launchpad.net/ubuntu/+source/sssd/+bug/1934997 zu behebenFügen Sie die folgenden Codezeilen
[pam]hinzu, um die Zertifikatanmeldung zu aktivieren. Die Zeilepam_cert_authaktiviert die Zertifikatanmeldung für das System. Die Zeilepam_p11_allowed_servicesaktiviert die Zertifikatanmeldung für Horizon Agent.Fügen Sie die Codezeilen
[cert]hinzu, um die Übereinstimmungs- und Zuordnungsregel für den Zertifikatbenutzer festzulegen.[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 -
Ä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"Schließen Sie die folgenden
PKINT-Parameter in den Abschnitt[realms]ein.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)Das folgende Beispiel schließt die
PKINT-Parameter in den Abschnitt[realms]ein.[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 } -
Installieren Sie das Paket Horizon Agent mit aktiviertem True SSO.
sudo ./install_viewagent.sh -T yes -
Ändern Sie die Konfigurationsdatei
/etc/omnissa/viewagent-custom.conf, sodass sie die folgende Zeile enthält.
```
NetbiosDomain = MYDOMAIN
```
11. Starten Sie die VM neu und melden Sie sich erneut an.
War diese Seite hilfreich?