Utilisation d'un Yubikey comme authentification multifacteur pour MacOS

Feb 03 2023
Le 2 février est la journée mondiale 2FA, j'ai donc pensé qu'il serait amusant d'écrire un petit guide sur la façon d'ajouter une clé de sécurité Yubikey comme deuxième facteur (2FA) pour se connecter à votre MacBook. Ce guide est destiné aux appareils non gérés.

Le 2 février est la journée mondiale 2FA , j'ai donc pensé qu'il serait amusant d'écrire un petit guide sur la façon d'ajouter une clé de sécurité Yubikey comme deuxième facteur (2FA) pour se connecter à votre MacBook. Ce guide est destiné aux appareils non gérés. Les appareils gérés dans Active Directory par une entreprise nécessitent une configuration différente. Pour ceux qui ne connaissent pas le Yubikey, voici un extrait de leur site Web :

La YubiKey est l'authentification matérielle réinventée. Sécurisez les identités de vos employés et utilisateurs, réduisez les coûts de support et vivez une expérience utilisateur inégalée.

Tout d'abord, pourquoi voudriez-vous l'authentification multifacteur (MFA) ? Eh bien, tout le monde a des données sensibles à protéger et le simple fait d'utiliser un mot de passe de nos jours est considéré comme assez faible ; ils peuvent être devinés, fissurés ou divulgués lors d'une violation de données par exemple. Par conséquent, comme l'expliquent les gens incroyables du NIST :

Il est nécessaire d'ajouter plus de couches d'authentification au-delà d'un mot de passe pour garantir que les comptes restent sécurisés. Ces couches supplémentaires conduisent au terme « authentification multi-facteurs » ou MFA et peuvent inclure trois éléments :

- des éléments que vous connaissez, tels qu'un mot de passe ou d'autres informations personnellement connues telles que les réponses aux questions de sécurité

- des choses que vous avez - comme un badge d'identification avec une puce intégrée ou un générateur de code numérique

- des choses que vous êtes — telles que des traits physiques comme vos empreintes digitales ou votre voix

MFA utilise des facteurs de plusieurs de ces éléments pour prouver l'identité des utilisateurs. Par exemple, en plus d'entrer un mot de passe, un utilisateur peut être tenu de fournir un code qui a été envoyé à son téléphone ou à son compte de messagerie.

Ainsi, en plus d'utiliser votre empreinte digitale ou votre mot de passe pour vous connecter à MacOS, les deux n'étant qu'une couche, nous voulons également une couche de protection supplémentaire. Ce qui dans ce cas est quelque chose que vous avez : un Yubikey.

Photo de Bruno Brito sur Unsplash

Pour que cela fonctionne correctement, vous aurez besoin de deux Yubikeys ; un pour une utilisation quotidienne et un en secours si vous perdez ou endommagez votre Yubikey principal. Pendant que vous y êtes, assurez-vous que FileVault est activé. Inutile d'ajouter une Yubikey si votre disque dur n'est pas crypté.

La majeure partie de ce guide est basée sur le guide Yubikey pour MacOS et est assez facile à suivre. Cependant, si vous souhaitez forcer la connexion à votre MacBook avec un Yubikey, vous aurez besoin d'un profil personnalisé et modifier certains paramètres. Le guide officiel indique également quels Yubikeys fonctionneront comme une carte à puce, la fonctionnalité nécessaire pour agir en tant que 2FA. Prêt à rendre votre MacBook plus sécurisé ? Allons-y!

Maintenant, avant de continuer, il y a un inconvénient majeur pour les utilisateurs d'Apple Sillicon selon le guide officiel Yubico :

Chaque fois que l'ordinateur est éteint, macOS utilise la dernière carte à puce utilisée pour verrouiller le disque avec FileVault. Dans ce scénario, seule la dernière carte à puce utilisée pour se connecter fonctionnera pour déverrouiller le disque au prochain démarrage, ce qui empêchera efficacement toute carte à puce configurée en tant que sauvegarde de déverrouiller le disque.

Vous devez décider vous-même si vous voulez prendre ce risque. Pour ma part, je fais une sauvegarde Time Machine quotidienne et presque toutes mes données sont synchronisées avec un NAS local, donc je peux être à nouveau opérationnel assez rapidement. Veuillez envisager les options de récupération appropriées pour le faible risque que vous ne parveniez pas à déverrouiller votre Mac.

Ok, maintenant que nous avons réglé cela, vous allez télécharger le Yubikey Manager pour MacOS. A partir de là, nous allons suivre les instructions sur le site Yubico :

Connectez votre Yubikey à votre MacBook, ouvrez le Yubikey Manager et suivez ces étapes :

  • Configurez un nouveau code PIN ;
  • Configurez un nouveau PUK ;
  • Configurez une nouvelle clé de gestion.

Ensuite, cliquez sur "configuration pour MacOS", comme dans la capture d'écran ci-dessus. Vous recevrez une notification pour appairer votre clé :

Couplage de la carte à puce

Dans les fenêtres suivantes, entrez le code PIN et la clé de gestion que vous venez de créer et suivez les instructions. Lorsque vous avez terminé, verrouillez l'écran et vérifiez si vous pouvez utiliser votre code PIN pour vous connecter. Si c'est réussi, répétez les étapes ci-dessus pour la clé de secours.

Si tout fonctionne correctement, nous allons maintenant imposer la connexion avec notre Yubikey en tant que carte à puce. Pour cela, nous devons importer un profil avec le bon réglage sur notre MacBook. Ouvrez votre éditeur de texte préféré, comme Sublime et collez ce qui suit (cet exemple provient du site d'assistance d'Apple ) :

<?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>

Vous pouvez également accéder à l'emplacement du fichier et double-cliquer simplement sur le profil. Enfin, déconnectez-vous, retirez votre Yubikey et vérifiez si vous pouvez vous connecter sans elle. Cela ne devrait pas fonctionner. Maintenant, reconnectez votre Yubikey et réessayez. Est-ce que ça marche? Super! Vous savez ce qui serait bien ? Que votre écran se verrouille et nécessite immédiatement un code PIN lorsque vous retirez la Yubikey. Faisons en sorte que cela arrive.

Revenez aux paramètres de sécurité et de confidentialité et cliquez sur Avancé. Basculer Turn on screen saver when login token is removed.

Ensuite, accédez à Verrouiller l'écran dans les paramètres système et passez Require password after screen saver begins or display is turned offà Immédiatement.

La modification de ce paramètre peut vous obliger à vous déconnecter ou à redémarrer pour fonctionner. Et c'est tout! Je sais que l'utilisation de 2FA peut sembler un inconvénient mineur, mais cela aidera à protéger votre MacBook si quelqu'un y accède sans autorisation.