Comment configurer l'authentification à deux facteurs dans Ubuntu pour les utilisateurs d'Ubuntu à l'aide de l'authentificateur Google (il peut également être configuré pour les comptes non Google)?
Comment configurer l'authentification à deux facteurs dans Ubuntu pour les utilisateurs d'Ubuntu à l'aide de l'authentificateur Google (il peut également être configuré pour les comptes non Google)?
Remarque: Une fois que vous avez activé l'authentification à 2 facteurs pour un utilisateur et que vous n'avez pas défini la même chose pour root, vous ne pourrez jamais vous connecter directement en tant que root. Dans un tel cas, une solution consiste à utiliser n'importe quel autre utilisateur sudo pour lequel nous l'avons configuré, puis à utiliser sudo su -
pour basculer vers l'utilisateur root.
Utilisez les étapes ci-dessous pour le configurer.
Installez le package ci-dessous pour installer l'authentificateur Google que nous utiliserons comme module complémentaire avec l'authentification PAM:
sudo apt-get install libpam-google-authenticator
Modifiez maintenant /etc/pam.d/sshd
ce fichier et ajoutez Google Authenticator comme indiqué ci-dessous:
*sudo vim /etc/pam.d/sshd
entrez ci-dessous en haut de ce fichier-
auth required pam_google_authenticator.so
Ici, nous devons apporter des modifications /etc/ssh/sshd_config
pour que ssh utilise Google Authenticator, de cette façon, nous nous assurons que ssh utilise l'authentification à deux facteurs.
vim /etc/ssh/sshd_config
Dans ce fichier, nous devons trouver ChallengeResponseAuthentication
et décommenter et / ou le modifier pour ressembler à ci-dessous (en bref, définissez-le sur oui: P):
ChallengeResponseAuthentication yes
Authentification supplémentaire ou GUI à 2 facteurs sinon ignorez cela et passez à l'étape 4: Pour l'activer pour la connexion à l'interface graphique, modifiez /etc/pam.d/common-auth
:
sudo vim /etc/pam.d/common-auth
et maintenant ajoutez ceci auth required pam_google_authenticator.so
au - dessus de la ligne auth [success=1 default=ignore] pam_unix.so nullok_secure
puis enregistrez le fichier.
Passez maintenant à un compte sur lequel vous souhaitez le configurer.
( Remarque: je suggérerais de créer au moins deux comptes de superutilisateur sur le système en dehors du compte root et de le configurer au moins, pour l'un d'entre eux d'abord mais pas le compte root.)
sudo su - testuser1
Nous allons maintenant utiliser la commande ci-dessous pour configurer l'authentification à deux facteurs pour cela testuser1
:
google-authenticator
L'exécution de cette commande vous posera la question ci-dessous. (la réponse recommandée est Oui)
Voulez-vous que les jetons d'authentification soient basés sur le temps (y / n) y
Après cela, il vous montrera le code QR et les codes à gratter d'urgence et quelques autres détails. Les résultats devraient ressembler à l'image ci-dessous:
Vous devez maintenant utiliser votre téléphone Android / Apple / Blackberry pour télécharger et installer l' application Google Authenticator à partir des marchés respectifs, par exemple Google Play Store. qui va générer du code pour vous connecter.
Ci-dessous, la capture d'écran de l'icône de l'application et de l'application tirée du téléphone Android de l'application.
Démarrez l'application sur votre téléphone et scannez le QR Code ou utilisez la clé secrète et le code de vérification donnés sous le QR code sur le système, que vous pouvez également voir dans la première capture d'écran ci-dessus.
Une fois que tout cela est fait, il est très important de noter et de sauvegarder vos codes à gratter d'urgence dans un endroit sûr, car ce sont les codes qui peuvent vous aider au cas où vous seriez verrouillé d'une manière ou d'une autre.
À ce stade, vous devriez jeter un œil au bas de l'écran où il vous pose une question ci-dessous. (la réponse recommandée est Oui):
Voulez-vous que je mette à jour votre fichier "/home/testuser1/.google_authenticator" (o / n) y
Encore une fois, il vous posera une autre question et la réponse recommandée pour la question ci-dessous est également Oui:
Voulez-vous interdire plusieurs utilisations du même jeton d'authentification? Cela vous limite à une seule connexion toutes les 30 secondes, mais augmente vos chances de remarquer ou même d'empêcher les attaques de l'homme du milieu (o / n) y
La question suivante serait la suivante et la réponse recommandée est non:
Par défaut, les jetons sont valables pendant 30 secondes et afin de compenser le décalage temporel possible entre le client et le serveur, nous autorisons un jeton supplémentaire avant et après l'heure actuelle. Si vous rencontrez des problèmes avec une mauvaise synchronisation horaire, vous pouvez augmenter la fenêtre de sa taille par défaut de 1: 30min à environ 4min. Voulez-vous le faire (o / n) n
Et la dernière question serait comme ci-dessous et la réponse recommandée pour elle est Oui:
Si l'ordinateur auquel vous vous connectez n'est pas protégé contre les tentatives de connexion par force brute, vous pouvez activer la limitation de débit pour le module d'authentification. Par défaut, cela limite les attaquants à pas plus de 3 tentatives de connexion toutes les 30 secondes. Voulez-vous activer la limitation de débit (y / n) y
Basculez maintenant la sortie de ce compte pour revenir au compte root:
exit
Redémarrez maintenant le service ssh
service ssh restart
Il suffit maintenant de prendre une session ssh pour l'utilisateur pour lequel vous l'avez configuré et il vous demandera d'abord un code de vérification que vous pouvez saisir depuis votre mobile, puis il vous demandera un mot de passe utilisateur.
C'est tout ce qui est requis pour configurer l'authentification à deux facteurs. N'hésitez pas à améliorer la réponse si nécessaire et veuillez m'excuser pour le langage pas si bon.
auth optional
place deauth required
. Sinon, une connexion n'est plus possible si la session se bloque et que le processus n'est pas terminé.