Comment configurer l'authentification à deux facteurs en SSH dans Ubuntu?

Authentification à deux facteurs

La L'authentification à deux facteurs (2FA) n'est pas quelque chose d'unique qui peut être utilisé sur les réseaux sociaux ou sur tout autre site Web. Eh bien, cette mesure de sécurité peut également être mise en œuvre dans un système d'exploitation.

Voilà pourquoi Aujourd'hui, nous allons voir comment implémenter l'authentification à deux facteurs en SSH dans Ubuntu et les dérivés utilisant le célèbre Google Authenticator qui augmentera considérablement la sécurité de votre serveur OpenSSH.

Normalement, il vous suffit de saisir un mot de passe ou d'utiliser la clé SSH pour vous connecter à distance à votre système.

L'authentification à deux facteurs (2FA) nécessite la saisie de deux informations pour vous connecter.

Par conséquent, vous devrez également entrer un mot de passe à usage unique basé sur l'heure pour vous connecter à votre serveur SSH.

Ce mot de passe à usage unique est calculé à l'aide de l'algorithme TOTP, qui est une norme IETF.

Installation et configuration de Google Authenticator dans Ubuntu et ses dérivés

La première étape que nous allons effectuer est l'installation de Google Authenticator dans notre système, nous allons donc ouvrir un terminal dans le système (cela peut être fait avec la combinaison de touches "Ctrl + Alt + T) et dans celui-ci, nous allons taper la commande suivante:

sudo apt install libpam-google-authenticator

Installation terminée nous allons exécuter l'application nouvellement installée avec la commande suivante:

google-authenticator

Lors de l'exécution de cette commande, ce que nous allons faire est d'attribuer une clé secrète et cela nous demandera si nous voulons utiliser les jetons en fonction du temps, ce à quoi nous répondrons oui.

Après ça, ils verront un code QR qu'ils pourront scanner à l'aide d'une application TOTP sur leur téléphone.

Ici Nous vous recommandons d'utiliser l'application Google Authenticator sur votre téléphone mobile.il, afin que vous puissiez installer l'application via Google Play ou Apple App Store sur votre téléphone mobile.

Vous avez déjà l'application sur votre téléphone, vous devez scanner le code QR avec. Gardez à l'esprit que vous devez agrandir la fenêtre du terminal pour scanner l'intégralité du code QR.

Le code QR représente la clé secrète, qui n'est connue que de son serveur SSH et de son application Google Authenticator.

Une fois le code QR scanné, ils peuvent voir un jeton unique à six chiffres sur leur téléphone. Par défaut, ce jeton dure 30 secondes et il doit être entré pour se connecter à Ubuntu via SSH.

clé secrète-authentificateur-google

Dans le terminal, vous pourrez également voir le code secret, ainsi que le code de vérification et le code de démarrage d'urgence.

D'où nous vous recommandons de conserver ces informations dans un endroit sûr pour une utilisation ultérieure. Parmi les autres questions qui nous sont posées, nous allons simplement répondre oui en tapant la lettre y.

Configuration de SSH à utiliser avec Google Authenticator

En comptant déjà sur ce qui précède, Nous allons maintenant faire la configuration nécessaire pour pouvoir utiliser la connexion SSH dans notre système avec Google Authenticator.

Dans le terminal vNous allons taper la commande suivante

sudo nano /etc/ssh/sshd_config

À l'intérieur du fichier nous allons chercher les lignes suivantes et nous les changerons en "oui", en étant comme suit:

UsePAM yes

ChallengeResponseAuthentication yes

Une fois les modifications effectuées, enregistrez les modifications effectuées avec Ctrl + O et fermez le fichier avec Ctrl + X.

Dans le même terminal, nous allons redémarrer SSH avec:

sudo systemctl restart ssh

Par défaut, l'authentification exige qu'ils saisissent le mot de passe de l'utilisateur pour se connecter.

Pour ce que éditons le fichier de règles PAM pour le démon SSH.

sudo nano /etc/pam.d/sshd

Au début de ce fichier, vous pouvez voir la ligne suivante, qui permet l'authentification par mot de passe

ChallengeResponseAuthentication

Ce que nous devons fixer à oui.

Pour activer également l'authentification par mot de passe à usage unique, ajoutez les deux lignes suivantes.

@include common-auth

#One-time password authentication via Google Authenticator

auth required pam_google_authenticator.so

Enregistrez et fermez le fichier.

Désormais, chaque fois qu'ils se connectent à votre système via une connexion SSH, ils seront invités à saisir le mot de passe utilisateur et un code de vérification (le mot de passe à usage unique généré par Google Authenticator).


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.

  1.   Miguel dit

    Bonjour, tutoriel assez simple, cependant, une fois que j'ai fait toutes les étapes que je ne peux plus entrer par ssh, cela me lance une erreur de mot de passe incorrecte, je ne peux même pas demander 2FA.

    J'ai Ubuntu Server 20.04