Vous voulez sécuriser votre serveur SSH avec une authentification à deux facteurs facile à utiliser? Google fournit le logiciel nécessaire pour intégrer le système de mot de passe à usage unique (TOTP) de Google Authenticator à votre serveur SSH. Vous devrez saisir le code depuis votre téléphone lorsque vous vous connecterez.

Google Authenticator ne « téléphone pas à la maison » à Google – tout le travail se fait sur votre serveur SSH et votre téléphone. En fait, Google Authenticator est complètement open-source, vous pouvez donc même examiner son code source vous-même.

Installez Google Authenticator

Pour implémenter l’authentification multifactorielle avec Google Authenticator, nous avons besoin du module PAM open source Google Authenticator. PAM signifie «module d’authentification enfichable» – c’est un moyen de connecter facilement différentes formes d’authentification à un système Linux.

Les référentiels de logiciels d’Ubuntu contiennent un package facile à installer pour le module PAM de Google Authenticator. Si votre distribution Linux ne contient pas de package pour cela, vous devrez le télécharger à partir de la page de téléchargement de Google Authenticator sur Google Code et le compiler vous-même.

Pour installer le package sur Ubuntu, exécutez la commande suivante:

sudo apt-get install libpam-google-Authenticator

(Cela n’installera que le module PAM sur notre système – nous devrons l’activer manuellement pour les connexions SSH.)

Créer une clé d’authentification

Connectez-vous en tant qu’utilisateur avec lequel vous vous connecterez à distance et exécutez le authentificateur Google pour créer une clé secrète pour cet utilisateur.

Autorisez la commande à mettre à jour votre fichier Google Authenticator en tapant y. Vous serez ensuite invité à répondre à plusieurs questions qui vous permettront de restreindre l’utilisation du même jeton de sécurité temporaire, d’augmenter la fenêtre de temps pour laquelle les jetons peuvent être utilisés et de limiter les tentatives d’accès autorisées pour entraver les tentatives de craquage par force brute. Ces choix échangent tous une certaine sécurité pour une certaine facilité d’utilisation.

 image

Google Authenticator vous présentera une clé secrète et plusieurs «codes à gratter d’urgence». Notez les codes à gratter d’urgence dans un endroit sûr – ils ne peuvent être utilisés qu’une seule fois chacun, et ils sont destinés à être utilisés si vous perdez votre téléphone.

 image

Saisissez la clé secrète dans l’application Google Authenticator sur votre téléphone (les applications officielles sont disponibles pour Android, iOS et Blackberry). Vous pouvez également utiliser la fonction de numérisation de code-barres – accédez à l’URL située en haut de la sortie de la commande et vous pouvez numériser un code QR avec l’appareil photo de votre téléphone.

 image

Vous aurez désormais un code de vérification en constante évolution sur votre téléphone.

 image

Si vous souhaitez vous connecter à distance en tant que plusieurs utilisateurs, exécutez cette commande pour chaque utilisateur. Chaque utilisateur aura sa propre clé secrète et ses propres codes.

Activez Google Authenticator

Ensuite, vous devrez exiger Google Authenticator pour les connexions SSH. Pour ce faire, ouvrez le /etc/pam.d/sshd fichier sur votre système (par exemple, avec le sudo nano /etc/pam.d/sshd et ajoutez la ligne suivante au fichier:

authentification requise pam_google_authenticator.so

Ensuite, ouvrez le / etc / ssh / sshd_config fichier, localisez le ChallengeResponseAuthentication et modifiez-la comme suit:

ChallengeResponseAuthentication oui

(Si la ChallengeResponseAuthentication n’existe pas déjà, ajoutez la ligne ci-dessus au fichier.)

Enfin, redémarrez le serveur SSH pour que vos modifications prennent effet:

sudo service ssh restart

 image

Vous serez invité à saisir votre mot de passe et votre code Google Authenticator chaque fois que vous tenterez de vous connecter via SSH.

 google-authentator-ssh-header

Laisser un commentaire