Um True SSO auf RHEL 9.x-/8.x -Desktops zu unterstützen, müssen Sie die virtuelle Basismaschine (VM) zuerst in Ihre Active Directory-Domäne (AD) integrieren. Anschließend müssen Sie bestimmte Konfigurationen auf dem System ändern, um die True SSO-Funktion zu unterstützen.

In einigen der Beispiele im Verfahren werden Platzhalterwerte verwendet, um Entitäten in Ihrer Netzwerkkonfiguration darzustellen, z. B. den DNS-Namen Ihrer Active Directory-Domäne. Ersetzen Sie die Platzhalterwerte durch spezifische Informationen für Ihre Konfiguration, wie in der folgenden Tabelle gezeigt.

Platzhalterwert Beschreibung
mydomain.com DNS-Name Ihrer Active Directory-Domäne
MYDOMAIN.COM DNS-Name Ihrer Active Directory-Domäne in Großbuchstaben
MYDOMAIN Name Ihrer NetBIOS-Domäne
dnsserver.mydomain.com Name des DNS-Servers

Voraussetzungen

  • Konfigurieren Sie True SSO für Workspace ONE Access und Horizon Connection Server.
  • Stellen Sie sicher, dass der Active Directory(AD)-Server durch DNS auf der Basis-VM aufgelöst werden kann.
  • Konfigurieren Sie den Hostnamen der VM.
  • Konfigurieren Sie das Network Time Protocol (NTP) auf der VM.
  • Rufen Sie ein Stammzertifikat der Zertifizierungsstelle (CA) ab und speichern Sie es im Ordner /tmp/certificate.cer auf der VM. Siehe How to export Root Certification Authority Certificate.

    Wenn es sich bei einer untergeordneten CA auch um eine ausstellende Stelle handelt, rufen Sie die gesamte Kette der Stamm- und untergeordneten CA-Zertifikate ab und speichern Sie sie im Ordner /tmp/certificate.cer auf der VM.

  • Stellen Sie zur Verwendung von True SSO im FIPS-Modus sicher, dass Sie alle in Konfigurieren einer FIPS-kompatiblen virtuellen Linux-Maschine beschriebenen Schritte ausgeführt haben. Sie müssen das vertrauenswürdige CA-Zertifikat für VMwareBlastServer zu /etc/vmware/ssl/rui.crt hinzufügen und den mit rui.crt gekoppelten Schlüssel zu /etc/vmware/ssl/rui.key hinzufügen.

Prozedur

  1. Überprüfen Sie auf der Basis-VM die Netzwerkverbindung mit Active Directory.
    realm discover mydomain.com
  2. Installieren Sie die erforderlichen Abhängigkeitspakete.
    yum install oddjob oddjob-mkhomedir sssd adcli samba-common-tools
  3. Treten Sie der AD-Domäne bei.
    realm join --verbose mydomain.com -U administrator
  4. Installieren Sie das Stamm-CA-Zertifikat oder die Zertifikatskette.
    1. Suchen Sie das heruntergeladene Stamm-CA-Zertifikat oder die Zertifikatskette und übertragen Sie es in eine PEM-Datei.
      openssl x509 -inform der -in /tmp/certificate.cer -out /tmp/certificate.pem
      
    2. 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
  5. Passen Sie die Konfigurationsdatei /etc/sssd/sssd.conf an, 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 = +gdm-vmwcred         #Add this line for SSO
     
    [pam]                                         #Add pam section for certificate logon
    pam_cert_auth = True                          #Add this line to enable certificate logon for system
    pam_p11_allowed_services = +gdm-vmwcred       #Add this line to enable certificate logon for VMware Horizon Agent
     
    [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
  6. Ändern Sie die Konfigurationsdatei /etc/krb5.conf, indem Sie den Modus gleich 644 festlegen.
    Hinweis: Wenn Sie /etc/krb5.conf nicht wie angegeben ändern, funktioniert die Funktion True SSO möglicherweise nicht.
  7. (RHEL 9.x) Um sicherzustellen, dass TrueSSO mit Instant-Clone-Desktop-Pools ordnungsgemäß ausgeführt wird, ändern Sie die folgenden Konfigurationen.
    Hinweis: Sie können diese Konfigurationen überspringen, wenn Sie die VM nicht für einen Instant-Clone-Desktop-Pool verwenden.
    1. Führen Sie den Befehl aus, um die SHA-1-Verschlüsselungsrichtlinie explizit zuzulassen.
      update-crypto-policies --set DEFAULT:SHA1
    2. Suchen Sie nach dem zuvor heruntergeladenen Root-CA-Zertifikat oder der zuvor heruntergeladenen Zertifikatskette und kopieren Sie sie in das Verzeichnis /etc/pki/ca-trust/source/anchors/ca_cert.pem. Verwenden Sie dann den Befehl update-ca-trust, damit Legacy-Anwendungen die vertrauenswürdigen Zertifikate lesen können.
      cp /tmp/certificate.pem /etc/pki/ca-trust/source/anchors/ca_cert.pem
      update-ca-trust
    3. Bearbeiten Sie die Datei /etc/krb5.conf gemäß folgendem Beispiel.
      [realms]
           MYDOMAIN.COM = {
                kdc =  dnsserver.mydomain.com
                admin_server =  dnsserver.mydomain.com
                pkinit_anchors = DIR:/etc/pki/ca-trust/source/anchors
                pkinit_kdc_hostname =  dnsserver.mydomain.com
                pkinit_eku_checking = kpServerAuth
           }
      [domain_realm]
           .mydomain.com = MYDOMAIN.COM
           mydomain.com = MYDOMAIN.COM
  8. Installieren Sie das Paket Horizon Agent mit aktiviertem True SSO.
    sudo ./install_viewagent.sh -T yes
  9. Ändern Sie die Konfigurationsdatei /etc/vmware/viewagent-custom.conf, sodass sie die folgende Zeile enthält.
    NetbiosDomain = MYDOMAIN
  10. Starten Sie die VM neu und melden Sie sich erneut an.