in

Comment se connecter à votre bureau Linux avec Google Authenticator

Pour plus de sécurité, vous pouvez exiger un jeton d’authentification basé sur l’heure ainsi qu’un mot de passe pour vous connecter à votre PC Linux. Cette solution utilise Google Authenticator et d’autres applications TOTP.

Ce processus a été effectué sur Ubuntu 14.04 avec le bureau Unity standard et le gestionnaire de connexion LightDM, mais les principes sont les mêmes sur la plupart des distributions et postes de travail Linux.

Nous vous avons montré précédemment comment exiger Google Authenticator pour un accès à distance via SSH, et ce processus est similaire. Cela ne nécessite pas l’application Google Authenticator, mais fonctionne avec toute application compatible qui implémente le schéma d’authentification TOTP, y compris Authy.

Installez le Google Authenticator PAM

Comme lors de la configuration de l’accès SSH, nous devons d’abord installer le logiciel PAM («pluggable-authentication module») approprié. PAM est un système qui nous permet de brancher différents types de méthodes d’authentification dans un système Linux et de les exiger.

Sur Ubuntu, la commande suivante installera Google Authenticator PAM. Ouvrez une fenêtre de terminal, tapez la commande suivante, appuyez sur Entrée et indiquez votre mot de passe. Le système téléchargera le PAM à partir des référentiels de logiciels de votre distribution Linux et l’installera:

sudo apt-get install libpam-google-authentication

Nous espérons que d’autres distributions Linux devraient également avoir ce package disponible pour une installation facile – ouvrez les référentiels de logiciels de votre distribution Linux et effectuez une recherche. Dans le pire des cas, vous pouvez trouver le code source du module PAM sur GitHub et compilez-le vous-même.

Comme nous l’avons souligné précédemment, cette solution ne dépend pas du «téléphone à domicile» aux serveurs de Google. Il implémente l’algorithme TOTP standard et peut être utilisé même lorsque votre ordinateur n’a pas accès à Internet.

Créez vos clés d’authentification

Vous devez maintenant créer une clé d’authentification secrète et la saisir dans l’application Google Authenticator (ou une application similaire) sur votre téléphone. Tout d’abord, connectez-vous en tant que compte utilisateur sur votre système Linux. Ouvrez une fenêtre de terminal et exécutez le authentificateur google commander. Taper y et suivez les instructions ici. Cela créera un fichier spécial dans le répertoire du compte utilisateur actuel avec les informations de Google Authenticator.

Vous serez également guidé tout au long du processus d’obtention de ce code de vérification à deux facteurs dans un Google Authenticator ou une application TOTP similaire sur votre smartphone. Votre système peut générer un code QR que vous pouvez scanner, ou vous pouvez le saisir manuellement.

N’oubliez pas de noter vos codes à gratter d’urgence, que vous pouvez utiliser pour vous connecter si vous perdez votre téléphone.

Suivez ce processus pour chaque compte d’utilisateur qui utilise votre ordinateur. Par exemple, si vous êtes la seule personne à utiliser votre ordinateur, vous ne pouvez le faire qu’une seule fois sur votre compte d’utilisateur normal. Si quelqu’un d’autre utilise votre ordinateur, vous voudrez qu’il se connecte à son propre compte et génère un code à deux facteurs approprié pour son propre compte afin qu’il puisse se connecter.

Activer l’authentification

C’est là que les choses deviennent un peu difficiles. Lorsque nous avons expliqué comment activer deux facteurs pour les connexions SSH, nous ne l’avons requis que pour les connexions SSH. Cela garantissait que vous pouviez toujours vous connecter localement si vous perdiez votre application d’authentification ou si quelque chose n’allait pas.

Puisque nous allons activer l’authentification à deux facteurs pour les connexions locales, il y a des problèmes potentiels ici. Si quelque chose ne va pas, vous ne pourrez peut-être pas vous connecter. Gardant cela à l’esprit, nous vous expliquerons comment l’activer pour les connexions graphiques uniquement. Cela vous donne une trappe d’évacuation si vous en avez besoin.

Activer Google Authenticator pour les connexions graphiques sur Ubuntu

Vous pouvez toujours activer l’authentification en deux étapes pour les connexions graphiques uniquement, en ignorant l’exigence lorsque vous vous connectez à partir de l’invite de texte. Cela signifie que vous pouvez facilement basculer vers un terminal virtuel, vous y connecter et annuler vos modifications afin que Gogole Authenciator ne soit pas nécessaire si vous rencontrez un problème.

Bien sûr, cela ouvre un trou dans votre système d’authentification, mais un attaquant ayant un accès physique à votre système peut déjà l’exploiter de toute façon. C’est pourquoi l’authentification à deux facteurs est particulièrement efficace pour les connexions à distance via SSH.

Voici comment procéder pour Ubuntu, qui utilise le gestionnaire de connexion LightDM. Ouvrez le fichier LightDM pour le modifier avec une commande comme la suivante:

sudo gedit /etc/pam.d/lightdm

(N’oubliez pas que ces étapes spécifiques ne fonctionneront que si votre distribution Linux et votre bureau utilisent le gestionnaire de connexion LightDM.)

Ajoutez la ligne suivante à la fin du fichier, puis enregistrez-le:

auth requise pam_google_authenticator.so nullok

Le bit «nullok» à la fin indique au système de laisser un utilisateur se connecter même s’il n’a pas exécuté la commande google-authentication pour configurer l’authentification à deux facteurs. S’ils l’ont configuré, ils devront entrer un code time-baesd – sinon ils ne le feront pas. Supprimez le « nullok » et les comptes d’utilisateurs qui n’ont pas configuré de code Google Authenticator ne pourront tout simplement pas se connecter graphiquement.

La prochaine fois qu’un utilisateur se connectera graphiquement, il lui sera demandé son mot de passe, puis le code de vérification actuel affiché sur son téléphone lui sera demandé. S’ils n’entrent pas le code de vérification, ils ne seront pas autorisés à se connecter.

Le processus devrait être assez similaire pour les autres distributions et postes de travail Linux, car la plupart des gestionnaires de session de bureau Linux courants utilisent PAM. Vous devrez probablement simplement modifier un fichier différent avec quelque chose de similaire pour activer le module PAM approprié.

Si vous utilisez le cryptage du répertoire de base

Les anciennes versions d’Ubuntu offraient une option simple de «chiffrement du dossier personnel» qui chiffrait tout votre répertoire personnel jusqu’à ce que vous saisissiez votre mot de passe. Plus précisément, cela utilise ecryptfs. Cependant, comme le logiciel PAM dépend d’un fichier Google Authenticator stocké par défaut dans votre répertoire personnel, le cryptage interfère avec le PAM qui lit le fichier, sauf si vous vous assurez qu’il est disponible sous forme non cryptée sur le système avant de vous connecter. le README pour plus d’informations sur la manière d’éviter ce problème si vous utilisez toujours les options de chiffrement du répertoire personnel obsolètes.

Les versions modernes d’Ubuntu offrent à la place un cryptage complet du disque, qui fonctionnera bien avec les options ci-dessus. Tu n’as rien à faire de spécial

Aide, il a cassé!

Étant donné que nous venons de l’activer pour les connexions graphiques, il devrait être facile à désactiver si cela pose un problème. Appuyez sur une combinaison de touches comme Ctrl + Alt + F2 pour accéder à un terminal virtuel et connectez-vous avec votre nom d’utilisateur et votre mot de passe. Vous pouvez ensuite utiliser une commande telle que sudo nano /etc/pam.d/lightdm pour ouvrir le fichier pour le modifier dans un éditeur de texte de terminal. Utilisez notre guide Nano pour supprimer la ligne et enregistrer le fichier, et vous pourrez vous reconnecter normalement.

Vous pouvez également forcer Google Authenticator à être requis pour d’autres types de connexions – potentiellement même toutes les connexions système – en ajoutant la ligne «auth required pam_google_authenticator.so» aux autres fichiers de configuration PAM. Soyez prudent si vous faites cela. Et rappelez-vous, vous voudrez peut-être ajouter «nullok» pour que les utilisateurs qui n’ont pas suivi le processus de configuration puissent toujours se connecter.

Vous trouverez de plus amples informations sur l’utilisation et la configuration de ce module PAM dans le fichier README du logiciel sur GitHub.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Modifier Outlook 2007 pour afficher la ligne d'objet au-dessus de l'expéditeur

Modifier Outlook 2007 pour afficher la ligne d’objet au-dessus de l’expéditeur

Qu’est-ce que c’est et comment est-ce que ça marche?