Recherche de site Web

Comment utiliser l’authentification à deux facteurs avec Ubuntu


Au fil du temps, l’authentification traditionnelle par nom d’utilisateur et par mot de passe s’est avérée inadéquate pour fournir une sécurité robuste aux applications et aux systèmes. Les noms d’utilisateur et les mots de passe peuvent facilement être craqués à l’aide d’une pléthore 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 l’authentification à 2 facteurs.

Familièrement connue 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 un mot de passe à usage unique (OTP) avant ou après s’être authentifiés avec le nom d’utilisateur et le mot de passe habituels.

De nos jours, de nombreuses entreprises telles que Google, Facebook, Twitter et AWS, pour n’en citer que quelques-unes, offrent aux utilisateurs le choix de configurer l’authentification multifacteur pour protéger davantage leurs comptes.

Dans ce guide, nous vous montrons comment vous pouvez 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 supplémentaire d’authentification sur la plate-forme Linux.

Le paquet 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 poursuivre 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 à la configuration du package Google PAM sur Ubuntu en modifiant le fichier /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 suscitera 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és 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ûrs que les jetons non basés sur le temps, et par conséquent, tapez « y » pour oui et appuyez sur ENTRÉE.

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 :

  • Clé secrète
  • 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 maximiser 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 s’affichera 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’éviter les attaques qui pourraient survenir en raison d’attaques de l’homme du milieu. Sélectionnez donc « y »

Dans l'invite suivante, sélectionnez « n » pour interdire l'extension de la durée qui résout 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 de synchronisation temporelle médiocre.

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, il vous sera demandé de saisir un code de vérification que vous pouvez obtenir à partir de l’application Google Authenticator.

Vous pouvez le vérifier davantage en redémarrant et une fois que vous arrivez à l’écran de connexion, il vous sera demandé de fournir votre code de vérification.

Une fois que vous avez fourni votre code à partir de l’application Google Authenticator, il vous suffit de fournir votre mot de passe pour accéder à votre système.

Étape 4 : Intégrer SSH à Google Authenticator

Si vous avez l’intention d’utiliser SSH avec le module Google PAM, vous devez intégrer les deux. Il y a deux façons d’y parvenir.

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 'yes' comme indiqué

Pour l'utilisateur racine, 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 entrent en vigueur.

$ sudo systemctl restart ssh

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

Pour l’authentification à clé publique SSH

Si vous utilisez l’authentification à clé publique, répétez les étapes ci-dessus et ajoutez la ligne indiqué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 appareil 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 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 splash discret $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, procédez 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

Éditez 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, vous n’aurez qu’à 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 d’apprendre comment cela s’est passé.

Articles connexes: