Skip to main content

16. April 2026

Konfigurieren der Smartcard-Umleitung für RHEL- und Rocky Linux 9.x/8.x-Desktops

Um die Smartcard-Umleitung für RHEL- und Rocky Linux 9.x/8.x-Desktops einzurichten, integrieren Sie zunächst die Basis-VM in Ihre Active Directory (AD)-Domäne. Installieren Sie dann die erforderlichen Bibliotheken und das Root-CA-Zertifikat, bevor Sie Horizon Agent installieren.

In Beispielen verwendete Platzhalter

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.

PlatzhalterwertBeschreibung
dns_IP_ADDRESSIP-Adresse Ihres DNS-Namenservers
rhelsc.domain.comVollqualifizierter Hostname Ihrer VM
rhelscNicht qualifizierter Hostname Ihrer VM
domain.comDNS-Name Ihrer Active Directory-Domäne
DOMAIN.COMDNS-Name Ihrer Active Directory-Domäne in Großbuchstaben
DOMAINDNS-Name der Arbeitsgruppe oder NT-Domäne, in der sich Ihr Samba-Server befindet, in Großbuchstaben
dnsserver.domain.comHostname Ihres AD-Servers

Vorgehensweise

  1. Führen Sie auf der Basis-VM die folgenden Schritte aus.

    a. Konfigurieren Sie die Netzwerk- und DNS-Einstellungen gemäß den Anforderungen Ihrer Organisation.

    b. Schalten Sie IPv6 aus.

    c. Schalten Sie Automatisches DNS aus.

  2. Installieren Sie die erforderlichen Abhängigkeitspakete.

    sudo yum install oddjob oddjob-mkhomedir sssd adcli samba-common-tools krb5-pkinit
    sudo yum install -y opensc pcsc-lite pcsc-lite-libs pcsc-lite-ccid nss-tools
    
  3. Bearbeiten Sie die Konfigurationsdatei /etc/krb5.conf, sodass Sie dem folgenden Beispiel ähnelt.

    # To opt out of the system crypto-policies configuration of krb5, remove the
    # symlink at /etc/krb5.conf.d/crypto-policies which will not be recreated.
    includedir /etc/krb5.conf.d/
    
    [logging]
        default = FILE:/var/log/krb5libs.log
        kdc = FILE:/var/log/krb5kdc.log
        admin_server = FILE:/var/log/kadmind.log
    
    [libdefaults]
        dns_lookup_realm = false
        ticket_lifetime = 24h
        renew_lifetime = 7d
        forwardable = true
        rdns = false
        pkinit_anchors = /etc/pki/tls/certs/ca-bundle.crt
        spake_preauth_groups = edwards25519
        default_realm = DOMAIN.COM
        default_ccache_name = KEYRING:persistent:%{uid}
    
    [realms]
     DOMAIN.COM = {
         kdc = dnsserver.domain.com
         admin_server = dnsserver.domain.com
         default_domain = dnsserver.domain.com
         pkinit_anchors = FILE:/etc/pki/nssdb/certificate.pem
         pkinit_cert_match = <KU>digitalSignature
         pkinit_kdc_hostname = dnsserver.domain.com
     }
    
    [domain_realm]
     .domain.com = DOMAIN.COM
     domain.com = DOMAIN.COM
    
  4. Überprüfen Sie auf der Basis-VM die Netzwerkverbindung zur AD-Domäne.

    sudo realm discover domain.com
    
  5. Treten Sie der AD-Domäne bei.

    sudo realm join --verbose domain.com -U AdminUser
    

    Durch Ausführen des Befehls join wird Ausgabe ähnlich dem folgenden Beispiel zurückgegeben.

    Enter AdminUser's password:
    Using short domain name -- DOMAIN
    Joined 'rhelsc' to dns domain 'domain.com'
    
  6. Aktivieren Sie den pcscd-Dienst.

    sudo systemctl enable pcscd
    sudo systemctl start pcscd
    
  7. Passen Sie die Konfigurationsdatei /etc/sssd/sssd.conf an, wie im folgenden Beispiel gezeigt. Geben Sie im Abschnitt [pam] pam_cert_auth = True an.

    [sssd]
    domains = domain.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
    
    [pam]                                 #Add pam section for certificate logon
    pam_cert_auth = True                  #Add this line to enable certificate logon for system
    
  8. Geben Sie die Systemidentität und die Authentifizierungsquellen an.

    sudo authselect select sssd with-smartcard with-mkhomedir
    
  9. Rufen Sie ein Stammzertifikat einer Zertifizierungsstelle (CA) oder eine Zertifikatskette ab, wie unter Exportieren des Stammzertifizierungsstellenzertifikats beschrieben, und installieren Sie das Zertifikat.

    a. 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
    

    b. 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
    
  10. Um den Status der Smartcard zu überprüfen, führen Sie die folgenden pkcs11-tool-Befehle aus und bestätigen Sie, dass diese die korrekte Ausgabe zurückgeben.

    sudo pkcs11-tool -L
    
    sudo pkcs11-tool --login -O
    
    sudo pkcs11-tool --test --login
    
  11. Um die Smartcard-SSO-Funktion und den Horizon Greeter zu unterstützen, wenn SSO deaktiviert ist, konfigurieren Sie die Datei viewagent-greeter.conf. Siehe Bearbeiten von Konfigurationsdateien auf einem Linux-Desktop.

  12. Installieren Sie das Paket Horizon Agent mit aktivierter Smartcard-Umleitung.

    • Wenn Sie das Installationsprogramm .rpm verwenden:

      a. Führen Sie das Installationsprogramm aus, um Horizon Agent mit den Standardfunktionsoptionen zu installieren. In folgendem Befehl weist die Installationsdatei den Namen horizonagent-linux-YYMM-y.y.y-xxxxxxx.el8.x86_64.rpm auf.

      sudo rpm -ivh horizonagent-linux-YYMM-y.y.y-xxxxxxx.el8.x86_64.rpm
      

      b. Zum Hinzufügen der Smartcard-Umleitungsfunktion führen Sie das Skript ViewSetup.sh aus.

      Suchen Sie nach dem Skript ViewSetup.sh (in der Regel in einem Verzeichnis vom Typ bin innerhalb der Struktur /usr/). Wechseln Sie dann zu diesem Verzeichnis, um das Skript auszuführen.

      sudo ViewSetup.sh -m yes
      
    • Wenn Sie das Installationsprogramm .tar.gz verwenden, führen Sie das Installationsprogramm mit dem Parameter aus, um die Smartcard-Umleitung zu aktivieren:

      sudo ./install_viewagent.sh -m yes
      

    Hinweis: Wenn Sie eine Fehlermeldung erhalten, die Sie auffordert, die Standard-PC/SC-Lite-Bibliothek zu installieren, deinstallieren Sie die benutzerdefinierte PC/SC-Lite-Bibliothek, die derzeit auf der Maschine vorhanden ist, und installieren Sie die Standard-PC/SC-Lite-Bibliothek mithilfe des folgenden Befehls.

    sudo yum reinstall pcsc-lite-libs pcsc-lite
    

    Anschließend können Sie das Horizon Agent-Installationsprogramm ausführen.

  13. Wenn Sie eine benutzerdefinierte PC/SC Lite-Bibliothek verwenden, konfigurieren Sie die Optionen pcscd.maxReaderContext und pcscd.readBody in der Horizon-Datei config.

    Siehe Bearbeiten von Konfigurationsdateien auf einem Linux-Desktop.

  14. Starten Sie die virtuelle Maschine neu und melden Sie sich erneut an.

War diese Seite hilfreich?

Feedback zu diesem Thema geben

War dieses Thema hilfreich?

Bitte geben Sie keine personenbezogenen oder vertraulichen Daten an.

Link wird erstellt…