Recherche de site Web

Comment utiliser l'authentification à deux facteurs avec Ubuntu


Au fil du temps, l’authentification traditionnelle par nom d’utilisateur et mot de passe s’est révélée insuffisante pour assurer une sécurité robuste aux applications et aux systèmes. Les noms d’utilisateur et les mots de passe peuvent facilement être piratés à l’aide d’une multitude d’outils de piratage, laissant votre système vulnérable aux violations. Pour cette raison, toute entreprise ou entité qui prend la sécurité au sérieux doit mettre en œuvre une authentification à 2 facteurs.

Connue familièrement sous le nom de MFA (Multi-Factor Authentication), l'authentification à 2 facteurs fournit une couche de sécurité supplémentaire qui oblige les utilisateurs à fournir certains détails tels que des codes., ou OTP (One Time Password) avant ou après l'authentification avec le nom d'utilisateur et le mot de passe habituels.

De nos jours, plusieurs sociétés telles que Google, Facebook, Twitter et AWS, pour n'en citer que quelques-unes, offrent aux utilisateurs le choix de créer une MFA pour protéger davantage leurs comptes.

Dans ce guide, nous montrons comment utiliser l'Authentification à deux facteurs avec Ubuntu.

Étape 1 : Installez le package PAM de Google

Tout d'abord, installez le package Google PAM. PAM, abréviation de Pluggable Authentication Module, est un mécanisme qui fournit une couche d'authentification supplémentaire sur la plate-forme Linux.

Le package est hébergé sur le référentiel Ubuntu, alors continuez et utilisez la commande apt pour l'installer comme suit :

sudo apt install libpam-google-authenticator

Lorsque vous y êtes invité, appuyez sur 'Y' et appuyez sur ENTER pour continuer l'installation.

Étape 2 : installez l'application Google Authenticator sur votre smartphone

De plus, vous devez installer l'application Google Authenticator sur votre tablette ou votre smartphone. L'application vous présentera un code OTP à 6 chiffres qui se renouvelle automatiquement toutes les 30 secondes.

Étape 3 : configurer Google PAM dans Ubuntu

Une fois l'application Google Authenticator en place, nous allons procéder et configurer le package Google PAM sur Ubuntu en modifiant le /etc/pam.d/common-auth< comme indiqué.

sudo vim /etc/pam.d/common-auth

Ajoutez la ligne ci-dessous au fichier comme indiqué.

auth required pam_google_authenticator.so

Enregistrez le fichier et quittez.

Maintenant, exécutez la commande ci-dessous pour initialiser PAM.

google-authenticator

Cela évoquera quelques questions sur l’écran de votre terminal. Tout d’abord, il vous sera demandé si vous souhaitez que les jetons d’authentification soient basés sur le temps.

Les jetons d'authentification basée sur le temps expirent après un certain temps. Par défaut, c'est après 30 secondes, après quoi un nouvel ensemble de jetons est généré. Ces jetons sont considérés comme plus sécurisés que les jetons non temporels. Par conséquent, tapez 'y' pour oui et appuyez sur ENTER.

Ensuite, un code QR s'affichera sur le terminal comme indiqué ci-dessous et juste en dessous, certaines informations seront affichées. Les informations affichées comprennent :

  • Clef secrète
  • Le code de vérification
  • Codes à gratter d'urgence

Vous devez enregistrer ces informations dans un coffre-fort pour référence future. Les codes à gratter d'urgence sont extrêmement utiles en cas de perte de votre appareil d'authentification. Si quelque chose arrive à votre dispositif d'authentification, utilisez les codes.

Lancez l'application Google Authenticator sur votre appareil intelligent et sélectionnez « Scanner le code QR » pour scanner le code QR présenté.

REMARQUE : vous devez agrandir la fenêtre du terminal afin de scanner l'intégralité du code QR. Une fois le code QR scanné, un OTP à six chiffres qui change toutes les 30 secondes sera affiché sur l'application.

Ensuite, sélectionnez 'y' pour mettre à jour le fichier d'authentification Google dans votre dossier personnel.

Dans l'invite suivante, limitez la connexion à une seule connexion toutes les 30 secondes afin d'empêcher les attaques qui pourraient survenir en raison d'attaques de l'homme du milieu. Alors sélectionnez 'y'

Dans l'invite suivante, sélectionnez 'n' pour interdire l'extension de la durée qui corrige le décalage temporel entre le serveur et le client. Il s'agit de l'option la plus sécurisée, sauf si vous rencontrez des problèmes liés à une mauvaise synchronisation de l'heure.

Et enfin, activez la limitation du débit à seulement 3 tentatives de connexion.

À ce stade, nous avons terminé la mise en œuvre de la fonctionnalité d'authentification à 2 facteurs. En fait, si vous exécutez une commande sudo, vous serez invité à saisir un code de vérification que vous pourrez obtenir à partir de l'application Google Authenticator.

Vous pouvez vérifier davantage cela en redémarrant et une fois arrivé à l'écran de connexion, il vous sera demandé de fournir votre code de vérification.

Après avoir fourni votre code depuis l'application Google Authenticator, fournissez simplement votre mot de passe pour accéder à votre système.

Étape 4 : Intégrez SSH à Google Authenticator

Si vous avez l'intention d'utiliser SSH avec le module Google PAM, vous devez intégrer les deux. Vous pouvez y parvenir de deux manières.

Pour l'authentification par mot de passe SSH

Pour activer l'authentification par mot de passe SSH pour un utilisateur standard, ouvrez d'abord le fichier de configuration SSH par défaut.

sudo vim /etc/ssh/sshd_config

Et définissez les attributs suivants sur 'oui' comme indiqué

Pour l'utilisateur root, définissez l'attribut « PermitRootLogin » sur 'yes'.

PermitRootLogin yes

Enregistrez le fichier et quittez.

Ensuite, modifiez la règle PAM pour SSH.

sudo vim /etc/pam.d/sshd

Ajoutez ensuite la ligne suivante

auth   required   pam_google_authenticator.so

Enfin, redémarrez le service SSH pour que les modifications prennent effet.

sudo systemctl restart ssh

Dans l'exemple ci-dessous, nous nous connectons au système Ubuntu à partir du client Putty.

Pour l'authentification par clé publique SSH

Si vous utilisez l'authentification par clé publique, répétez les étapes ci-dessus et ajoutez la ligne affichée au bas du fichier /etc/ssh/sshd_config.

AuthenticationMethods publickey,keyboard-interactive

Encore une fois, modifiez la règle PAM pour le démon SSH.

sudo vim /etc/pam.d/sshd

Ajoutez ensuite la ligne suivante.

auth   required   pam_google_authenticator.so

Enregistrez le fichier et redémarrez le service SSH comme nous l'avons vu précédemment.

sudo systemctl restart ssh

Désactiver l'authentification à deux facteurs dans Ubuntu

Si vous perdez votre dispositif d’authentification ou votre clé secrète, ne devenez pas fou. Vous pouvez facilement désactiver la couche d'authentification 2FA et revenir à votre méthode de connexion simple par nom d'utilisateur/mot de passe.

Tout d'abord, redémarrez votre système et appuyez sur 'e' sur la première entrée GRUB.

Faites défiler et localisez la ligne qui commence par linux et se termine par quiet splash $vt_handoff. Ajoutez la ligne systemd.unit=rescue.target et appuyez sur ctrl+x pour entrer en mode de secours.

Une fois que vous avez obtenu le shell, fournissez le mot de passe root et appuyez sur ENTER.

Ensuite, continuez et supprimez le fichier .google-authenticator dans votre répertoire personnel comme suit. Assurez-vous de remplacer le nom d'utilisateur par votre propre nom d'utilisateur.


rm /home/username/.google_authenticator

Modifiez ensuite le fichier /etc/pam.d/common-auth.


$ vim /etc/pam.d/common-auth

Commentez ou supprimez la ligne suivante :


auth required pam_google_authenticator.so

Enregistrez le fichier et redémarrez votre système. Sur l'écran de connexion, il vous sera uniquement demandé de fournir votre nom d'utilisateur et votre mot de passe pour vous authentifier.

Et cela nous amène à la fin de cet article. Nous serons heureux de savoir comment cela s’est passé.