Guide d'utilisation de la YubiKey 5 Series avec Ubuntu
Guide d'utilisation de la Yubiky 5 Series sur Ubuntu.
Au sommaire :
- 1-Qu'est-ce que la YubiKey ?
- 2-Pourquoi acheter une Yubikey ?
- 3-Configuration de la Yubikey (Ubuntu)
- 4-Sécuriser la commande "sudo"
- 5-Sécuriser l'ouverture de session
1-Qu'est-ce que la YubiKey ?
La Yubikey est un dispositif d'authentification électronique conçu par Yubico, société fondé en 2007 par Stina Ehrensvärd et situé à Palo Alto, Seatlle et Stockholm.
Fabriqués aux Etats-Unis et en Suède, la Yubikey simplifie l’accès à vos services web, protège l’accès à votre ordinateur, empêche les usurpations de comptes ainsi que les attaques par hameçonnage (phishing) en émettant un mot de passe à usage unique ou en utilisant une paire de clé privée/publique.
Yubico propose 4 gammes de produits :
- Security Key Series : la plus abordable avec deux modèles différents mais avec des fonctionnalités limités.
- Yubikey 5 Series : la plus populaire avec six modèles différents, plusieurs connecteurs (USB-A/C), avec ou sans NFC.
- Yubikey Bio : modèle unique au format USB-A/C avec empreinte biométriques. Idéal pour les postes bureautiques en entreprise ou à titre personnel.
- YubiHSM : la plus onéreuse avec deux modèles et davantage dédié aux infrastructures.
Utilisé par des géants comme Google et Facebook, les avantages sont les suivants selon le site de Yubico, :
- 0 usurpation de comptes.
- 92 % d’appels d’assistance informatique en moins.
- Une connexion 4 fois plus rapide.
Elle supporte les normes d'authentification suivantes :
- FIDO U2F/FIDO 2 : conçu par Yubico et Google et géré par la FIDO Alliance, ces deux normes permettent l'authentification à deux facteur (2FA).
- NFC (Near Field Communication) : plus besoin de le présenter. Permet le sans contact (à partir de la Yubikey 5).
- Biometric Access : empreintes biométriques (uniquement avec le Yubikey Bio).
- OTP (One Time Password) : Mot de passe à usage unique.
- TOTP (Time-based One Time Password) : Mot de passe à usage unique basé sur le temps.
Elle est également compatible avec les gestionnaires de mots de passe suivants :
- Bitwarden/Vaultwarden
- LastPass
- KeePass
Enfin, la Yubikey est également certifié CSPN par l'ANSSI.
2-Pourquoi acheter une Yubikey ?
Avec l'authentification matérielle via la Yubikey, vous allez considérablement réduire la surface d'attaque de vos services web et de vos ordinateurs.
L'attaquant devra en plus de connaitre votre mot de passe posséder physiquement la clé s'il souhaite accéder à vos données.
"Au dessus, c'est le soleil" comme dirait le taulier.
Il faut savoir que l'authentification par SMS, voix ou application pose de gros soucis de sécurité. Les attaquants utilisent comme techniques entre autres :
- Le phishing.
- Le Social Engineering.
- Le Sim-swaping.
- Les vulnérabilité des OS.
- L'accessibilité des applications MFA.
Pour en savoir plus à ce sujet, je vous recommande ces deux articles qui vulgarise bien le sujet et devrait vous inciter à vous tourner vers une authentification matérielle.
Et une vidéo qui résume le tout en moins de 15 minutes.
3-Configuration de la Yubikey (Ubuntu)
Dans cette première partie de ce guide, nous allons configurer la Yubikey, sécuriser les droits administrateur ainsi que l'ouverture de session sous Linux.
Commencez par installer libpam-u2f (U2F pour Universal Second Factor).
sudo apt install libpam-u2f
Créez un dossier "yubico" dans "~/.config" (home/<username>/.config/yubico).
mkdir ~/.config/Yubico
Connectez la clé au PC puis exécutez la commande "pamu2fcfg" pour créé le fichier "u2f_keys".
pamu2fcfg > ~/.config/Yubico/u2f_keys
Le "Y" de la clé va clignoté, appuyez dessus pour valider et générer la clé.
Note :
- Prenez en compte que la Yubikey 5 NFC ne prend pas en charge les empreintes biométriques.
- Incompatible avec la connexion à distance via SSH.
4-Sécuriser la commande "sudo"
Nous allons voir comment sécuriser les droits d'administration de votre système Linux en ajoutant une couche de protection supplémentaire.
Ouvrez le fichier "sudo".
sudo nano /etc/pam.d/sudo
Faites un saut de ligne et ajoutez la commande suivante entre "common-auth" et "common-account".
auth required pam_u2f.so
Sauvegardez le tout avec Ctrl+O.
Désormais, à chaque fois que vous allez utiliser la commande "sudo", le mot de passe seul ne suffira plus, il faudra vous authentifier avec la clé.
Si vous n'avez pas insérer la Yubikey, vous allez être confronté à un refus du système.
il faudra insérer la clé, valider avec votre mot de passe habituel puis lorsque la Yubikey clignotera, appuyez dessus pour valider.
5-Sécuriser l'ouverture de session
Nous avons vu comment sécuriser les accès d'administration via la commande "sudo", nous allons désormais voir comment sécuriser l'ouverture de session de votre système Linux.
Note : pareil que pour la partie 4, cette méthode fonctionne uniquement en local et pas à distance via une connexion SSH.
Commencez par ouvrir le fichier "gdm-password".
sudo nano /etc/pam.d/gdm-password
Puis ajoutez la ligne suivante en dessus de "common-auth".
auth required pam_u2f.so
Sauvegardez le tout avec Ctrl+O puis redémarrez votre poste.
Authentifiez-vous avec votre mot de passe habituel puis mettez votre doigt sur la Yubikey lorsqu'elle se mettra à clignoter.
Avec la sécurisation du sudo et de la session, vous êtes sécurisé au max!!!! Manque plus qu'une deuxième clé en cas de pépin.
L'attaquant quant à lui, il a intérêt à s'accrocher.....
Source : https://support.yubico.com/hc/en-us/articles/360016649099
Sources :