Um die Smartcard-Umleitung auf einer virtuellen Maschine (VM) unter RHEL 7.9 zu konfigurieren, müssen Sie die Bibliotheken, von denen die Funktion abhängt, sowie das für die Authentifizierung erforderliche Stammzertifikat der Zertifizierungsstelle (CA) installieren. Außerdem müssen Sie einige Konfigurationsdateien bearbeiten, um des Einrichten der Authentifizierung abzuschließen.
Gehen Sie wie folgt vor, um die Smartcard-Umleitung auf einer RHEL 7.9-VM einzurichten.
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 |
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 |
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 |
Hinweis: Wenn Sie die
vSphere-Konsole verwenden, um sich bei einer RHEL 7.9-VM anzumelden, auf der
Horizon Agent installiert und Smartcard-Umleitung aktiviert ist, kann eine verzögerte Abmeldezeit von zwei Minuten oder länger auftreten. Diese verzögerte Abmeldung tritt nur bei der
vSphere-Konsole auf. Die RHEL 7.9-Abmeldung von
Horizon Client ist nicht betroffen.
Prozedur
- Installieren Sie die erforderlichen Bibliotheken.
sudo yum install nss-tools nss-pam-ldapd esc pam_pkcs11 pam_krb5 opensc pcsc-lite-ccid authconfig
authconfig-gtk krb5-libs krb5-workstation krb5-pkinit pcsc-lite pcsc-lite-libs
- Installieren Sie ein Stamm-CA-Zertifikat.
- Laden Sie ein Stamm-CA-Zertifikat herunter und speichern Sie es in /tmp/certificate.cer auf Ihrem Desktop. Siehe How to export Root Certification Authority Certificate.
- Übertragen Sie das heruntergeladene Stamm-CA-Zertifikat in eine .pem-Datei.
openssl x509 -inform der -in /tmp/certificate.cer -out /tmp/certificate.pem
- Verwenden Sie den Befehl certutil, um das Stamm-CA-Zertifikat in der Systemdatenbank /etc/pki/nssdb zu installieren.
Ersetzen Sie „root CA cert“ im folgenden Beispielbefehl durch den Namen des Stamm-CA-Zertifikats in der Systemdatenbank.
sudo certutil -A -d /etc/pki/nssdb -n "root CA cert" -t "CT,C,C" -i /tmp/certificate.pem
- Navigieren Sie zu , aktivieren Sie das Kontrollkästchen Smartcard-Unterstützung aktivieren und klicken Sie auf Anwenden.
- Bearbeiten Sie die Einstellung module in der Konfigurationsdatei /etc/pam_pkcs11/pam_pkcs11.conf, wie im folgenden Beispiel.
use_pkcs11_module = coolkey;
...
pkcs11_module coolkey {
module = libcoolkeypk11.so;
description = "Cool Key";
slot_num = 0;
nss_dir = /etc/pki/nssdb;
cert_policy = ca, signature;
}
- Bearbeiten Sie die Datei /etc/pam_pkcs11/cn_map, damit sie die im folgenden Beispiel gezeigten Inhalte enthält. Welche konkreten Inhalte Sie einfügen müssen, entnehmen Sie den im Smartcard-Zertifikat aufgeführten Benutzerinformationen.
- Bearbeiten Sie die Konfigurationsdatei /etc/krb5.conf/, wie im folgenden Beispiel.
[libdefaults]
dns_lookup_realm = false
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
rdns = false
default_realm = MYDOMAIN.COM
default_ccache_name = KEYRING:persistent:%{uid}
[realms]
MYDOMAIN.COM = {
kdc = ads-hostname
admin_server = ads-hostname
default_domain = ads-hostname
pkinit_anchors = FILE:/etc/pki/nssdb/certificate.pem
pkinit_cert_match = <KU>digitalSignature
pkinit_kdc_hostname = ads-hostname
}
[domain_realm]
.mydomain.com = MYDOMAIN.COM
mydomain.com = MYDOMAIN.COM
- Wenn die VM die MATE-Desktop-Umgebung ausführt, fügen Sie die Zeile
auth include smartcard-auth
am Anfang von /etc/pam.d/mate-screensaver hinzu (siehe folgendes Beispiel).
#%PAM-1.0
# Fedora Core
auth include smartcard-auth
auth include system-auth
auth optional pam_gnome_keyring.so
account include system-auth
password include system-auth
session include system-auth
Sie müssen diese Konfiguration durchführen, um sicherzustellen, dass Benutzer bei Anmeldung mit einer Smartcard den Bildschirm entsperren können.
- Um die Smartcard-SSO-Funktion (Single Sign-On) zu unterstützen, konfigurieren Sie die Datei /etc/vmware/viewagent-greeter.conf. Siehe Einstellen der Optionen in Konfigurationsdateien auf einem Linux-Desktop.
- Starten Sie den PC/SC-Daemon neu.
sudo chkconfig pcscd on
sudo service pcscd start
- Installieren Sie das Paket Horizon Agent mit aktivierter Smartcard-Umleitung.
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.
yum reinstall pcsc-lite-libs pcsc-lite
Anschließend können Sie das Horizon Agent-Installationsprogramm ausführen.
- Wenn Sie eine benutzerdefinierte PC/SC Lite-Bibliothek verwenden, konfigurieren Sie die Optionen pcscd.maxReaderContext und pcscd.readBody in der Datei /etc/vmware/config.
- Starten Sie die VM neu und melden Sie sich erneut an.