macOS configureren voor verplichte authenticatie met smartcard
Authenticatie met smartcard voorziet in sterke twee-factor-authenticatie in macOS Sierra en nieuwer. macOS High Sierra 10.13.2 en nieuwer ondersteunen verplichte authenticatie met smartcard, waarbij het gebruik van een smartcard vereist is en authenticatie met wachtwoord wordt uitgeschakeld.
Dit artikel is bedoeld voor systeembeheerders die een beveiligingsbeleid instellen in ondernemingen waarvoor smartcard-authenticatie vereist is.
Verplichte authenticatie met smartcard inschakelen
Volg deze stappen zorgvuldig om ervoor te zorgen dat gebruikers kunnen inloggen bij de computer.
Koppel een smartcard aan een beheerdersaccount of configureer Attribute Matching.
Als je strenge certificaatcontroles hebt ingeschakeld, installeer je alle vereiste rootcertificaten of tussenpersonen.
Controleer of je met een smartcard kunt inloggen bij een beheerdersaccount.
Installeer een configuratieprofiel voor de smartcard met de tekst 'configuratieprofiel voor verplichte authenticatie met smartcard hieronder.
Controleer of je nog steeds kunt inloggen met een smartcard.
Raadpleeg de Apple Configuration Profile Reference voor meer informatie over de payloadinstellingen van de smartcard.
Raadpleeg de macOS Deployment Guide of open Terminal en voer man SmartCardServices
in.
Verplichte authenticatie met smartcard uitschakelen
Als je de profielen die op de computer zijn geïnstalleerd handmatig beheert, kun je het profiel voor verplichte authenticatie met smartcard op twee manieren verwijderen. Je kunt het deelvenster 'Profielen' van Systeemvoorkeuren gebruiken of de opdrachtregel /usr/bin/profiles gebruiken. Open Terminal voor meer informatie en voer man profiles
in.
Als je clientcomputers zijn ingeschreven bij Mobile Device Management (MDM), kun je op wachtwoorden gebaseerde verificatie herstellen. Verwijder hiervoor het configuratieprofiel van de smartcard waarmee de beperking voor verplichte authenticatie met smartcard is ingeschakeld, van de clientcomputers.
Om te voorkomen dat gebruikers geen toegang hebben tot hun account, verwijder je het profiel enforceSmartCard voordat je een smartcard loskoppelt of Attribute Matching uitschakelt. Als gebruikers geen toegang hebben tot hun account, verwijder je het configuratieprofiel om het probleem op te lossen.
Als je het beleid voor verplichte authenticatie met smartcard toepast voordat je verplichte authenticatie met smartcard inschakelt, kan de toegang van een gebruiker tot de computer worden geblokkeerd. Verwijder het beleid voor verplichte authenticatie met smartcard om dit probleem op te lossen:
Schakel de Mac in en houd onmiddellijk Command-R ingedrukt om op te starten via macOS-herstel. Laat de toetsen los wanneer je het Apple logo of een draaiende wereldbol ziet, of als je om een firmwarewachtwoord wordt gevraagd.
Selecteer 'Schijfhulpprogramma' in het venster 'Hulpprogramma's' en klik op 'Ga door'.
Selecteer in de zijbalk van Schijfhulpprogramma het volume dat je gebruikt en kies vervolgens 'Archief' > 'Activeer' in de menubalk. (Als het volume al is geactiveerd, wordt deze optie grijs weergegeven.) Voer vervolgens het beheerderswachtwoord in wanneer daarom wordt gevraagd.
Stop Schijfhulpprogramma.
Kies 'Terminal' in het menu 'Hulpprogramma's' in de menubalk.
Verwijder de opslaglocatie voor configuratieprofielen. Open hiervoor Terminal en voer de volgende opdrachten in.
Vervang in deze opdrachten door de naam van het macOS-volume waar de profielinstellingen zijn geïnstalleerd.
rm /Volumes//var/db/ConfigurationProfiles/MDM_ComputerPrefs.plist
rm /Volumes//var/db/ConfigurationProfiles/.profilesAreInstalled
rm /Volumes//var/db/ConfigurationProfiles/Settings/.profilesAreInstalled
rm /Volumes//var/db/ConfigurationProfiles/Store/ConfigProfiles.binary
rm /Volumes//var/db/ConfigurationProfiles/Setup/.profileSetupDone
Als je klaar bent, kies je het Apple-menu () > 'Herstart'.
Installeer alle configuratieprofielen opnieuw die bestonden voordat je verplichte authenticatie met smartcard inschakelde.
SSHD (Secure Shell Daemon) configureren om verplichte authenticatie met smartcard te ondersteunen
Gebruikers kunnen hun smartcard gebruiken om authenticatie via SSH uit te voeren voor de lokale computer of voor externe computers die op de juiste manier zijn geconfigureerd. Volg deze stappen om SSHD te configureren op een computer zodat deze support biedt voor authenticatie met smartcard.
Werk het bestand /etc/ssh/sshd_config bij:
Gebruik de volgende opdracht om een reservekopie te maken van het bestand sshd_config:
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config_backup_`date "+%Y-%m-%d_%H:%M"`
Wijzig in het bestand sshd_config '#ChallengeResponseAuthentication yes' in 'ChallengeResponseAuthentication no' en wijzig '#PasswordAuthentication yes' naar '#PasswordAuthentication no'.
Gebruik vervolgens de volgende opdrachten om SSHD te herstarten:
sudo launchctl stop com.openssh.sshd
sudo launchctl start com.openssh.sshd
Als een gebruiker SSH-sessies wil verifiëren met een smartcard, moet de gebruiker de volgende stappen uitvoeren:
Gebruik de volgende opdracht om de openbare sleutel van de smartcard te exporteren:
ssh-keygen -D /usr/lib/ssh-keychain.dylib
Voeg de openbare sleutel van de vorige stap toe aan het bestand ~/.ssh/authorized_keys op de doelcomputer.
Gebruik de volgende opdracht om een reservekopie te maken van het bestand ssh_config:
sudo cp /etc/ssh/ssh_config /etc/ssh/ssh_config_backup_`date "+%Y-%m-%d_%H:%M"`
Voeg in het bestand /etc/ssh/ssh_config de regel "PKCS11Provider=/usr/lib/ssh-keychain.dylib" toe.
Indien gewenst kan de gebruiker ook de volgende opdracht gebruiken om de privésleutel toe te voegen aan de ssh-agent:
ssh-add -s /usr/lib/ssh-keychain.dylib
Verplichte authenticatie met smartcard inschakelen voor de SUDO-opdracht
Gebruik de volgende opdracht om een reservekopie te maken van het bestand /etc/pam.d/sudo:
sudo cp /etc/pam.d/sudo /etc/pam.d/sudo_backup_`date "+%Y-%m-%d_%H:%M"`
Vervang vervolgens alle inhoud van het bestand /etc/pam.d/sudo door de volgende tekst:
# 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
Verplichte authenticatie met smartcard inschakelen voor de LOGIN-opdracht
Gebruik de volgende opdracht om een reservekopie te maken van het bestand /etc/pam.d/login:
sudo cp /etc/pam.d/login /etc/pam.d/login_backup_`date "+%Y-%m-%d_%H:%M"`
Vervang vervolgens alle inhoud van het bestand /etc/pam.d/login door de volgende tekst:
# 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
Verplichte authenticatie met smartcard inschakelen voor de SU-opdracht
Gebruik de volgende opdracht om een reservekopie te maken van het bestand /etc/pam.d/su:
sudo cp /etc/pam.d/su /etc/pam.d/su_backup_`date "+%Y-%m-%d_%H:%M"`
Vervang vervolgens alle inhoud van het bestand /etc/pam.d/su door de volgende tekst:
# 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
Voorbeeldconfiguratieprofiel voor verplichte authenticatie met smartcard
Hier is een voorbeeldconfiguratieprofiel voor verplichte authenticatie met smartcard. Je kunt deze gebruiken om de soorten sleutels en tekenreeksen te zien die dit type profiel bevat.
PayloadContent PayloadDescription Configures smart card-only PayloadDisplayName Smart card-only PayloadIdentifier com.apple.configprofile.78. PayloadOrganization Apple PayloadType com.apple.security.smartcard PayloadUUID 5A15247B-899C-474D-B1D7-DBD82BDE5678 PayloadVersion 1 UserPairing allowSmartCard checkCertificateTrust enforceSmartCard PayloadDescription Smartcard profile. PayloadDisplayName Smart card-only PayloadIdentifier com.apple.configprofile.77 PayloadOrganization PayloadRemovalDisallowed PayloadType Configuration PayloadScope system PayloadUUID 7D34CC86-C707-44D2-9A9F-C5F6E347BD77 PayloadVersion 1