Dieser Artikel richtet sich an Systemadministratoren, die für die Sicherheitsrichtlinien in Unternehmensumgebungen mit Smart-Card-Authentifizierung verantwortlich sind.
Anmeldung ausschließlich mit Smart Card aktivieren
Halten Sie sich genau an diese Schritte, um sicherzustellen, dass sich Benutzer am Computer anmelden können.
- Koppeln Sie eine Smart Card mit einem Administrator-Benutzeraccount, oder konfigurieren Sie die Attribut-Zuordnung.
- Falls Sie strenge Zertifikatsprüfungen aktiviert haben, installieren Sie alle erforderlichen Root-Zertifikate oder Intermediates.
- Überprüfen Sie, ob Sie sich mithilfe einer Smart Card bei einem Administratoraccount anmelden können.
- Installieren Sie ein Smart-Card-Konfigurationsprofil, das den String "<key>enforceSmartCard</key><true/>" enthält, so wie im folgenden Beispiel für ein Konfigurationsprofil ausschließlich mit Smart Card.
- Überprüfen Sie, ob Sie sich nach wie vor mithilfe einer Smart Card anmelden können.
Weitere Informationen zu Payload-Einstellungen für Smart Cards finden Sie in den Apple-Referenzinformationen zu Konfigurationsprofilen.
Weitere Informationen zur Verwendung von Smart-Card-Diensten finden Sie unter macOS-Implementierung: Referenz oder indem Sie Terminal öffnen und man SmartCardServices
eingeben.
Authentifizierung ausschließlich mit Smart Card deaktivieren
Wenn Sie die auf dem Computer installierten Profile manuell verwalten, können Sie das Profil, das ausschließlich die Smart Card verwendet, auf zwei Arten entfernen. Entweder verwenden Sie den Bereich "Profile" in den Systemeinstellungen oder das Befehlszeilenwerkzeug /usr/bin/profiles. Öffnen Sie für weitere Informationen Terminal, und geben Sie man profiles
ein.
Wenn Ihre Clientcomputer für Mobile Device Management (MDM) registriert sind, können Sie die passwortbasierte Authentifizierung wiederherstellen. Entfernen Sie dazu das Smart-Card-Konfigurationsprofil, das die Einschränkung, dass ausschließlich eine Smart Card verwendet werden kann, aktiviert, von den Clientcomputern.
Um zu verhindern, dass Benutzer nicht mehr auf ihren Account zugreifen können, entfernen Sie das enforceSmartCard-Profil, bevor Sie eine Smart Card entkoppeln oder die Attribut-Zuordnung deaktivieren. Wenn ein Benutzer nicht mehr auf seinen Account zugreifen kann, entfernen Sie das Konfigurationsprofil, um das Problem zu beheben.
Wenn Sie die Ausschließlich-Smart-Card-Richtlinie anwenden, bevor Sie die Authentifizierung ausschließlich mit Smart Card aktivieren, kann dies dazu führen, dass ein Benutzer nicht mehr auf seinen Computer zugreifen kann. Um dieses Problem zu beheben, entfernen Sie die Ausschließlich-Smart-Card-Richtlinie:
- Schalten Sie den Mac ein, und halten Sie dann sofort Befehlstaste-R gedrückt, um aus der macOS-Wiederherstellung zu starten. Lassen Sie die Tasten los, sobald Sie das Apple-Logo, eine sich drehende Weltkugel oder eine Aufforderung zur Eingabe eines Firmware-Passworts sehen.
- Wählen Sie im Fenster "Dienstprogramme" die Option "Festplattendienstprogramm" aus, und klicken Sie dann auf "Fortfahren".
- Wählen Sie in der Seitenleiste "Festplattendienstprogramm" das Volume, das Sie verwenden möchten, und wählen Sie dann in der Menüleiste "Ablage"> "Aktivieren". (Wenn das Volume bereits aktiviert ist, wird diese Option grau dargestellt.) Geben Sie dann Ihr Administratorpasswort ein, wenn Sie dazu aufgefordert werden.
- Beenden Sie das Festplattendienstprogramm.
- Wählen Sie "Terminal" aus dem Menü "Dienstprogramme" in der Menüleiste aus.
- Löschen Sie das Konfigurationsprofil-Repository. Öffnen Sie dazu Terminal, und geben Sie die folgenden Befehle ein.
Ersetzen Sie <volumename> in diesen Befehlen durch den Namen des macOS-Volumes, auf dem die Profileinstellungen installiert wurden.
rm /Volumes/<volumename>/var/db/ConfigurationProfiles/MDM_ComputerPrefs.plist
rm /Volumes/<volumename>/var/db/ConfigurationProfiles/.profilesAreInstalled
rm /Volumes/<volumename>/var/db/ConfigurationProfiles/Settings/.profilesAreInstalled
rm /Volumes/<volumename>/var/db/ConfigurationProfiles/Store/ConfigProfiles.binary
rm /Volumes/<volumename>/var/db/ConfigurationProfiles/Setup/.profileSetupDone
- Wenn Sie fertig sind, wählen Sie das Menü "Apple" () > "Neustart".
- Installieren Sie alle Konfigurationsprofile, die vorhanden waren, bevor Sie die Authentifizierung ausschließlich mit Smart Card aktiviert haben, neu.
Secure Shell Daemon (SSHD) zur Unterstützung der Authentifizierung ausschließlich mit Smart Card konfigurieren
Benutzer können mit ihrer Smart Card die Authentifizierung über SSH an lokalen oder entfernten Computern durchführen, die korrekt konfiguriert sind. Befolgen Sie diese Schritte, um SSHD auf einem Computer zu konfigurieren, damit er die Smart-Card-Authentifizierung unterstützt.
Aktualisieren Sie die Datei /etc/ssh/sshd_config:
- Verwenden Sie den folgenden Befehl, um ein Backup der Datei sshd_config anzulegen:
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config_backup_`date "+%Y-%m-%d_%H:%M"`
- Ändern Sie in der Datei sshd_config "#ChallengeResponseAuthentication yes" in "ChallengeResponseAuthentication no" sowie "#PasswordAuthentication yes" in "#PasswordAuthentication no.".
Verwenden Sie anschließend die folgenden Befehle, um SSHD neu zu starten:
sudo launchctl stop com.openssh.sshd
sudo launchctl start com.openssh.sshd
Wenn ein Benutzer die SSH-Sitzungen mit einer Smart Card authentifizieren möchte, bitten Sie ihn, folgende Schritte auszuführen:
- Verwenden Sie den folgenden Befehl, um den öffentlichen Schlüssel aus seiner Smart Card zu exportieren:
ssh-keygen -D /usr/lib/ssh-keychain.dylib
- Fügen Sie den öffentlichen Schlüssel aus dem vorherigen Schritt zur Datei ~/.ssh/authorized_keys auf dem gewünschten Computer hinzu.
- Verwenden Sie den folgenden Befehl, um ein Backup der Datei ssh_config anzulegen:
sudo cp /etc/ssh/ssh_config /etc/ssh/ssh_config_backup_`date "+%Y-%m-%d_%H:%M"`
- Fügen Sie in der Datei /etc/ssh/ssh_config die Zeile "PKCS11Provider=/usr/lib/ssh-keychain.dylib." hinzu.
Auf Wunsch kann ein Benutzer auch den folgenden Befehl verwenden, um den privaten Schlüssel zu seinem ssh-Agenten hinzuzufügen:
ssh-add -s /usr/lib/ssh-keychain.dylib
Ausschließlich Smart Card für den SUDO-Befehl aktivieren
Verwenden Sie den folgenden Befehl, um ein Backup der Datei /etc/pam.d/sudo anzulegen:
sudo cp /etc/pam.d/sudo /etc/pam.d/sudo_backup_`date "+%Y-%m-%d_%H:%M"`
Ersetzen Sie anschließend den kompletten Inhalt der Datei /etc/pam.d/sudo mit dem folgenden Text:
# sudo: auth account password session auth sufficient pam_smartcard.so auth required pam_opendirectory.so auth required pam_deny.so account required pam_permit.so password required pam_deny.so session required pam_permit.so
Ausschließlich Smart Card für den LOGIN-Befehl aktivieren
Verwenden Sie den folgenden Befehl, um ein Backup der Datei /etc/pam.d/login anzulegen:
sudo cp /etc/pam.d/login /etc/pam.d/login_backup_`date "+%Y-%m-%d_%H:%M"`
Ersetzen Sie anschließend den kompletten Inhalt der Datei /etc/pam.d/login mit dem folgenden Text:
# login: auth account password session auth sufficient pam_smartcard.so auth optional pam_krb5.so use_kcminit auth optional pam_ntlm.so try_first_pass auth optional pam_mount.so try_first_pass auth required pam_opendirectory.so try_first_pass auth required pam_deny.so account required pam_nologin.so account required pam_opendirectory.so password required pam_opendirectory.so session required pam_launchd.so session required pam_uwtmp.so session optional pam_mount.so
Ausschließlich Smart Card für den SU-Befehl aktivieren
Verwenden Sie den folgenden Befehl, um ein Backup der Datei /etc/pam.d/su anzulegen:
sudo cp /etc/pam.d/su /etc/pam.d/su_backup_`date "+%Y-%m-%d_%H:%M"`
Ersetzen Sie anschließend den kompletten Inhalt der Datei /etc/pam.d/su mit dem folgenden Text:
# su: auth account password session auth sufficient pam_smartcard.so auth required pam_rootok.so auth required pam_group.so no_warn group=admin,wheel ruser root_only fail_safe account required pam_permit.so account required pam_opendirectory.so no_check_shell password required pam_opendirectory.so session required pam_launchd.so
Beispiel für ein Konfigurationsprofil ausschließlich mit Smart Card
Dies ist ein Beispiel für ein Konfigurationsprofil ausschließlich mit Smart Card. Es enthält die unterschiedlichen Arten von Schlüsseln und Strings, die in diesem Profiltyp vorhanden sind.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>PayloadContent</key> <array> <dict> <key>PayloadDescription</key> <string>Configures smart card-only</string> <key>PayloadDisplayName</key> <string>Smart card-only</string> <key>PayloadIdentifier</key> <string>com.apple.configprofile.78.</string> <key>PayloadOrganization</key> <string>Apple</string> <key>PayloadType</key> <string>com.apple.security.smartcard</string> <key>PayloadUUID</key> <string>5A15247B-899C-474D-B1D7-DBD82BDE5678</string> <key>PayloadVersion</key> <integer>1</integer> <key>UserPairing</key> <false/> <key>allowSmartCard</key> <true/> <key>checkCertificateTrust</key> <false/> <key>enforceSmartCard</key> <true/> </dict> </array> <key>PayloadDescription</key> <string>Smartcard profile.</string> <key>PayloadDisplayName</key> <string>Smart card-only</string> <key>PayloadIdentifier</key> <string>com.apple.configprofile.77</string> <key>PayloadOrganization</key> <string></string> <key>PayloadRemovalDisallowed</key> <false/> <key>PayloadType</key> <string>Configuration</string> <key>PayloadScope</key> <string>system</string> <key>PayloadUUID</key> <string>7D34CC86-C707-44D2-9A9F-C5F6E347BD77</string> <key>PayloadVersion</key> <integer>1</integer> </dict> </plist>