Question Comment puis-je sécuriser davantage mon système en utilisant l'authentification à 2 facteurs?


Le titre le dit à peu près. J'ai entendu davantage parler de l'authentification à 2 facteurs, des mots de passe à usage unique, des tokens et d'autres fonctions de sécurité améliorées. Avec la sécurité décroissante de l'utilisation d'un mot de passe, je veux savoir comment améliorer ma sécurité sur Ubuntu. J'utilise 14.04 LTS avec Unity.


16
2018-01-29 05:20


origine




Réponses:


Vous pouvez utiliser le module d’authentification enfichable (PAM) open-source créé par Google, connu sous le nom de Google Authenticator. Ce module est disponible dans les référentiels standard, ainsi que dans GitHub afin que vous puissiez créer à partir des sources. Associé à l'application Android, iOS ou Blackberry du même nom, il crée des codes temporels et sensibles au temps pour l'authentification, ainsi que votre mot de passe. Comme il s’agit d’un module PAM, il peut être déposé dans à peu près partout. Commençons!

Installation

Pour commencer, vous pouvez installer le PAM avec les éléments suivants:

sudo apt-get install libpam-google-authenticator

Simple!

La mettre en place:

Une fois installé, vous souhaiterez également installer l'application mobile correspondante pour Android, iOS ou Blackberry (en fonction de votre plate-forme mobile). Chacun est inutile sans l'autre. Une fois l'application dont vous avez besoin pour votre appareil mobile, exécutez les opérations suivantes dans un terminal:

google-authenticator

Cela commencera en vous posant quelques questions. La première est la seule à laquelle vous devez répondre "Oui", et elle demande si vous souhaitez que les codes soient basés sur le temps. Après cela, lisez chaque question et faites le choix qui vous convient le mieux.

À la fin de la configuration initiale, vous verrez un très grand code QR dans votre terminal, ainsi que d'autres informations. La ligne indiquant "Votre nouvelle clé secrète est:" est une ligne indispensable si vous ne souhaitez pas utiliser le code QR pour appairer votre appareil, ne fermez donc pas cette fenêtre tant que vous n'êtes pas configuré! Les "codes de travail" que cela vous donne sont également importants, car ils sont ce que vous utiliserez pour vous connecter si vous perdez votre appareil mobile. Ecrivez-les et rangez-les dans un endroit sûr.

Maintenant, sur votre appareil mobile, ouvrez votre application Google Authenticator et sélectionnez "Configurer un compte". Vous pouvez soit scanner le code QR généré, soit sélectionner "Utiliser la clé fournie". Si vous numérisez le code QR, tout sera automatiquement enregistré sous un compte nommé "votre_utilisateur @ votre_hôte". Cependant, si vous sélectionnez "Utiliser la clé fournie", vous devrez entrer un nom, une clé et un type de jeton manuellement. Le nom peut être tout ce que vous souhaitez. La clé serait la clé secrète précédemment générée. Le type serait la base de temps par défaut. Après l'avoir configuré, vous verrez le compte sur le volet principal de l'application Google Authenticator, ainsi que sur un chronomètre en forme de cercle. Ce temporisateur se vide toutes les 30 secondes et un nouveau code est généré.

L'activer

Voici la magie. Comme il s'agit d'un module PAM, il peut être utilisé à divers endroits. Je vais parcourir en ajoutant l'authentification à sudo requêtes, les connexions SSH et la connexion lightdm. Cependant, après avoir lu ce tutoriel, vous pourrez l’activer ailleurs sur la base des mêmes techniques.

SSH

Je le fais d'abord parce qu'il y a une étape supplémentaire. La première chose à faire est de modifier votre fichier de configuration SSH:

gksudo gedit /etc/ssh/sshd_config

Recherchez la ligne qui dit:

ChallengeResponseAuthentication no

et changer le "non" à un "oui".

Maintenant, vous devez éditer le module PAM pour ssh:

gksudo gedit /etc/pam.d/sshd

À la toute fin de ce fichier, ajoutez la ligne suivante:

auth required pam_google_authenticator.so nullok

L'argument "nullok" indique au système de ne pas demander un code de vérification si un utilisateur n'a pas configuré l'authentification à deux facteurs. Après cette modification, continuez et redémarrez votre service ssh:

sudo service ssh restart

sudo Demandes

Editez le fichier PAM pour sudo:

gksudo gedit /etc/pam.d/sudo

Ajoutez la ligne suivante à la toute fin:

auth required pam_google_authenticator.so nullok

Maintenant chaque sudo demande demandera un code de vérification ainsi qu'un mot de passe.

LightDM (connexion à l'interface graphique)

Modifiez le fichier PAM pour LightDM:

gksudo gedit /etc/pam.d/lightdm

Ajoutez la ligne suivante à la toute fin:

auth required pam_google_authenticator.so nullok

C'est tout! Chaque fois que vous vous connectez via l'interface graphique, il vous demandera un code de vérification après votre mot de passe.

Connexion à l'échelle du système et à l'ATS

Même si vous activez les méthodes ci-dessus, vous ne demanderez toujours pas de code de vérification si vous passez à un TTY avec CTRL+ALT+F#. Pour résoudre ce problème, modifiez le common-auth Fichier PAM:

gksudo gedit /etc/pam.d/common-auth

et ajoutez la ligne suivante à la toute fin:

auth required pam_google_authenticator.so nullok

Remarque: Étant donné que ce fichier d'authentification commune est inclus dans tous les autres fichiers de type auth, vous devez supprimer les lignes d'authentification requises des autres fichiers. Sinon, il vous demandera le code de vérification deux fois et ne vous autorisera pas à vous connecter après.

Emballer

Comme vous avez pu le constater, il était assez facile d'ajouter cette authentification. Si vous utilisez un gestionnaire d'affichage autre que LightDM, vous pouvez facilement modifier la ligne lightdm ci-dessus. Étant donné que votre appareil mobile et votre système ont déjà partagé cette clé secrète, ils doivent toujours être synchronisés. Il n'y a pas d'interaction avec les serveurs Google ou toute autre ressource Internet pour cette configuration. Même si les deux appareils étaient complètement déconnectés, les codes de vérification qui apparaissent dans votre application seront corrects. Lorsque vous devez vous connecter via l'une des méthodes que vous avez activées, assurez-vous simplement d'ouvrir votre application mobile et d'obtenir le code de vérification actuel.

S'amuser!!


30
2018-01-29 05:20



Commenter pour des notes ultérieures. Bien écrit! +1 =) - Terrance
+1 - c'est à la fois très cool et bien écrit. - Nathan Osman
Et puis votre téléphone décide qu'il n'a plus de pouvoir et veut s'éteindre. :) +1 - Rinzwind
C'est à quoi servent les codes de travail, @Rinzwind: D
Ajout d'instructions pour l'activation de deux facteurs sur les ATS.


FreeOTP est une alternative open-source à l'application Google Authenticator Android sur Google Play (dont le code actuel n'est pas open source). FreeOTP est disponible sur F-Droid (et jeu de Google).


1
2018-02-04 05:42