Comment installer & configurer 2FA sur Linux

Étape 1: Mettez à jour votre système
Tout d'abord, il est essentiel de vérifier que votre système est à jour. Ouvrez votre terminal et exécutez :
sudo apt update && sudo apt upgrade -y
Étape 2: Installer libpam-google-authenticator
Pour activer le 2FA, nous utiliserons le libpam-google-authenticatorpackage qui fournit l'intégration PAM (Pluggable Authentication Module) nécessaire.
Installez-le en exécutant :
sudo apt install libpam-google-authenticator -y
Étape 3: Générer la clé TOTP
google-authenticator
Votre nouvelle clé secrète est :: cvjhbkntyjehbdgzdvb Entrez le code de l'application (-1 pour ignorer) :
Souhaitez-vous que les jetons d'authentification soient basés sur le temps ? (Oui)
Voulez-vous que je mette à jour votre fichier « ~/.google_authenticator » ? (Oui)
Voulez-vous interdire l'utilisation multiple du même jeton ? Cela vous limite à une connexion toutes les 30 secondes environ, mais cela augmente vos chances de remarquer ou même de prévenir les attaques de type man-in-the-middle (o/n) (Oui)
Par défaut, un nouveau jeton est généré toutes les 30 secondes par l'application mobile. Afin de compenser une éventuelle désynchronisation entre le client et le serveur, nous permettons un jeton supplémentaire avant et après l'heure actuelle. Cela permet une désynchronisation allant jusqu'à 30 secondes entre le serveur d'authentification et le client. Si vous rencontrez des problèmes de mauvaise synchronisation horaire, vous pouvez augmenter la fenêtre de sa taille par défaut de 3 codes autorisés (un code précédent, le code actuel, le code suivant) à 17 codes autorisés (les 8 codes précédents, le code actuel et les 8 codes suivants). Cela permettra une désynchronisation allant jusqu'à 4 minutes entre le client et le serveur. Voulez-vous le faire ? (non)
Voulez-vous activer la limitation de débit ? (Oui)
Après avoir répondu à ces questions, vous recevrez un QR code et un jeu de codes à gratter d'urgence. Scannez le QR code avec votre application Authy et conservez les codes à gratter en lieu sûr.
Étape 4 : Configurer SSH pour utiliser PAM
sudo vim.tiny /etc/ssh/sshd_config
#Recherchez les lignes KbdInteractiveAuthentication et ChallengeResponseAuthentication et définissez-la sur yes:
KbdInteractiveAuthentication yes
ChallengeResponseAuthentication yes
UsePAM yes
NB: sur debian le ChallengeResponseAuthentication est absent, il faut le rajouter
Enregistrez et quittez le fichier
Étape 5 : Mettre à jour la configuration PAM pour SSH
sudo vim.tiny /etc/pam.d/sshd
Ajoutez la ligne suivante en haut du fichier :
auth required pam_google_authenticator.so
Étape 6 : Redémarrer le service SSH
sudo systemctl restart ssh
Étape 7 : Testez votre configuration
Il est maintenant temps de tester votre configuration d'authentification à deux facteurs. Ouvrez un nouveau terminal et essayez de vous connecter en SSH à votre serveur :
ssh username@your_server_ip
Subscribe to my newsletter
Read articles from Ani hunt directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
