Authentification à deux facteurs Linux

Authentification à deux facteurs Linux
L'authentification à deux facteurs (2FA) est un processus de connexion composé d'un double mécanisme d'authentification. Les implémentations les plus connues incluent la confirmation classique du SMS ou du code par e-mail pour les navigateurs et appareils nouveaux / inconnus.

Dans ce scénario, même si un pirate obtient un mot de passe PayPal ou Hosting, il ne pourra pas se connecter sans le code de confirmation envoyé au téléphone ou par e-mail de la victime.

La mise en œuvre de l'authentification à deux facteurs est l'une des meilleures pratiques pour protéger notre e-mail, nos comptes de réseaux sociaux, l'hébergement, et plus encore. Malheureusement, notre système n'est pas l'exception.

Ce tutoriel montre comment implémenter l'authentification à deux facteurs pour protéger votre accès SSH à l'aide de Google Authenticator ou Authy-SSH. Google Authenticator vous permet de vérifier une connexion à l'aide de l'application mobile, tandis qu'Authy-SSH peut être implémenté sans une application en utilisant la vérification SMS.

Authentification à deux facteurs Linux à l'aide de Google Authenticator

Note: S'il vous plaît, avant de continuer, assurez-vous que Google Authenticator soit installé sur votre appareil mobile.

Pour démarrer, exécutez la commande suivante pour installer Google Authenticator (Distributions Linux basées sur Debian):

sudo apt install libpam-google-authenticator -y

Pour installer Google Authenticator sur les distributions Linux basées sur Red Hat (CentOS, Fedora), exécutez la commande suivante:

sudo dnf install google-authenticator -y

Une fois installé, exécutez Google Authenticator comme indiqué dans la capture d'écran ci-dessous.

Google-authenticteur

Comme vous pouvez le voir, un code QR apparaît. Vous devez ajouter le nouveau compte en cliquant sur le + Icône de votre application mobile Google Authenticator et sélectionnez Scanner le code QR.

Google Authenticator fournira également des codes de sauvegarde que vous devez imprimer et économiser au cas où vous perdez accès à votre appareil mobile.

On vous pose des questions, qui sont détaillées ci-dessous, et vous pouvez accepter toutes les options par défaut en sélectionnant Y Pour toutes les questions:

  • Après avoir scanné le code QR, le processus d'installation nécessitera la permission de modifier votre maison. Presse Y Pour continuer à la question suivante.
  • La deuxième question recommande de désactiver plusieurs connexions en utilisant le même code de vérification. Presse Y continuer.
  • La troisième question fait référence au timing d'expiration pour chaque code généré. Encore une fois, vous pouvez permettre le temps de le temps, appuyez sur Y continuer.
  • Activer la limitation des taux, jusqu'à 3 tentatives de connexion toutes les années 30. Presse Y continuer.

Une fois Google Authenticator installé, vous devez modifier le fichier / etc / pam.d / sshd Pour ajouter un nouveau module d'authentification. Utilisez Nano ou tout autre éditeur comme indiqué dans la capture d'écran ci-dessous pour modifier le fichier / etc / pam.d / sshd:

nano / etc / pam.d / sshd

Ajouter la ligne suivante à / etc / pam.d / sshd comme indiqué dans l'image ci-dessous:

Auth exigé pam_google_authenticator.So nullok

Note: Les instructions du chapeau rouge mentionnent une ligne contenant #Auth Sublack Password-Auth. Si vous trouvez cette ligne dans votre / etc / pam.d./ sshd, commentez-le.

Enregistrer / etc / pam.d./ sshd et modifier le fichier / etc / ssh / sshd_config Comme indiqué dans l'exemple ci-dessous:

nano / etc / ssh / sshd_config

Trouvez la ligne:

#ChallengeResponSeutinghentification non

Décommente dessus et remplacer Non avec Oui:

ChallengeResponSeutinghentification Oui

Sortez des modifications de sauvegarde et redémarrez le service SSH:

sudo systemctl redémarrer sshd.service

Vous pouvez tester l'authentification à deux facteurs en vous connectant à votre Host local comme indiqué ci-dessous:

ssh localhost

Vous pouvez trouver le code dans votre application mobile Google Authentication. Sans ce code, personne ne pourra accéder à votre appareil via SSH. Remarque: ce code change après 30 secondes. Par conséquent, vous devez le vérifier rapidement.

Comme vous pouvez le voir, le processus 2FA a fonctionné avec succès. Vous trouverez ci-dessous les instructions pour une implémentation 2FA différente à l'aide de SMS au lieu d'une application mobile.

Authentification à deux facteurs Linux utilisant Authy-SSH (SMS)

Vous pouvez également implémenter l'authentification à deux facteurs à l'aide d'Authy (Twilio). Pour cet exemple, une application mobile ne sera pas requise et le processus sera effectué via la vérification SMS.

Pour commencer, allez à https: // www.twilio.com / try-twilio et remplir le formulaire d'inscription.

Écrivez et vérifiez votre numéro de téléphone:

Vérifiez le numéro de téléphone à l'aide du code envoyé par SMS:

Une fois enregistré, allez sur https: // www.twilio.com / console / authy et appuyer sur le Commencer bouton:

Clique le Vérifiez le numéro de téléphone bouton et suivez les étapes pour confirmer votre numéro:

Vérifiez votre numéro:

Une fois vérifié, revenez à la console en cliquant sur Retour à la console:

Sélectionnez un nom pour l'API et cliquez sur Créer une application:

Remplissez les informations demandées et appuyez sur Faire une requête:

Sélectionner Jeton SMS et presser Faire une requête:

Aller sur https: // www.twilio.com / console / authy / applications et cliquez sur l'application que vous avez créée dans les étapes précédentes:

Une fois sélectionné, vous verrez dans le menu de gauche l'option Paramètres. Cliquer sur Paramètres et copier le Clé de l'API de production. Nous l'utiliserons dans les étapes suivantes:

De la console, téléchargez authy-ssh Exécution de la commande suivante:

git clone https: // github.com / authy / authy-ssh

Ensuite, entrez dans le répertoire Authy-SSH:

CD Authy-ssh

À l'intérieur de la course du répertoire Authy-SSH:

Sudo Bash Authy-Ssh Install / USR / Local / Bin

On vous demandera de coller le Clé de l'API de production Je vous ai demandé de copier, coller et appuyer ENTRER continuer.

Lorsqu'on lui a posé des questions sur l'action par défaut lorsque l'API.autocar.com ne peut pas être contacté, sélectionnez 1. Et presser ENTRER.

Note: Si vous collez une mauvaise clé API, vous pouvez la modifier dans le fichier / usr / local / bin / authy-ssh.confli Comme indiqué dans l'image ci-dessous. Remplacez le contenu après «api_key =» par votre clé API:

Activer Authy-Ssh en fonctionnant:

sudo / usr / local / bin / authy-ssh activer 'whoami'

Remplissez les informations requises et appuyez sur Y:

Vous pouvez tester l'exécution d'Authy-Ssh:

Test Authy-SSH

Comme vous pouvez le voir, 2FA fonctionne correctement. Redémarrez le service SSH, exécutez:

SUDO SHERE SSH Redémarrer

Vous pouvez également le tester en vous connectant via SSH à LocalHost:

Comme illustré, 2FA a fonctionné avec succès.

Authy propose des options 2FA supplémentaires, y compris la vérification des applications mobiles. Vous pouvez voir tous les produits disponibles à https: // authy.com /.

Conclusion:

Comme vous pouvez le voir, 2FA peut être facilement implémenté par n'importe quel niveau utilisateur Linux. Les deux options mentionnées dans ce tutoriel peuvent être appliquées en quelques minutes.

SSH-Authy est une excellente option pour les utilisateurs sans smartphones qui ne peuvent pas installer une application mobile.

La mise en œuvre de vérification en deux étapes peut empêcher tout type d'attaque basée sur la connexion, y compris les attaques d'ingénierie sociale, dont beaucoup sont devenus obsolètes avec cette technologie parce que le mot de passe de la victime n'est pas suffisant pour accéder aux informations de la victime.

D'autres alternatives Linux 2FA incluent Freeotp (chapeau rouge), Authentificateur mondial, et le client OTP, mais certaines de ces options n'offrent que la double authentification du même appareil.

J'espère que vous avez trouvé ce tutoriel utile. Continuez à suivre l'astuce Linux pour plus de conseils et de tutoriels Linux.