ssh

Comment activer l'authentification à deux facteurs pour SSH dans Fedora Linux

Comment activer l'authentification à deux facteurs pour SSH dans Fedora Linux

Dans le monde des technologies de l'information, la sécurité est une préoccupation majeure de nos jours. Chaque jour, de nouvelles attaques sophistiquées sont lancées contre des organisations. Les administrateurs système utilisent différentes méthodes pour renforcer la sécurité de leurs serveurs. L'un des moyens courants d'interagir avec un serveur consiste à utiliser SSH (ou Ssécure SHell) qui est largement utilisé pour la connexion à distance à un serveur. Outre les connexions shell à distance, il est également utilisé pour copier des fichiers entre deux ordinateurs. Contrairement à d'autres méthodes comme telnet, rcp, ftp, etc., Le protocole SSH utilise un mécanisme de cryptage pour sécuriser la communication entre deux hôtes.

La sécurité fournie par le protocole SSH peut être encore améliorée en utilisant l'authentification à deux facteurs. Cela mettra en outre un mur solide entre votre ordinateur hôte et les attaquants. Pour vous connecter à votre serveur distant en SSH, vous aurez besoin d'un mot de passe ainsi que d'un code de vérification (ou OTP) d'une application d'authentification s'exécutant sur votre appareil mobile. C'est vraiment utile si un attaquant vole votre mot de passe, il ne pourra pas se connecter à votre serveur sans le code de vérification.

Il existe de nombreuses applications d'authentification disponibles pour les appareils mobiles fonctionnant sous Android ou Apple IOS. Ce guide a utilisé l'application Google Authenticator pour le serveur Fedora et l'appareil mobile.

Ce que nous couvrirons

Ce guide va voir comment nous pouvons utiliser l'authentification à deux facteurs avec le protocole SSH pour empêcher l'accès non autorisé à notre poste de travail Fedora 30. Nous allons essayer de nous connecter à notre serveur Fedora à partir de la machine cliente Xubuntu pour voir si la configuration fonctionne comme prévu. Commençons à configurer SSH avec une authentification à deux facteurs.

Conditions préalables

  1. Un système d'exploitation Fedora 30 installé sur le serveur distant avec un compte utilisateur 'sudo'.
  2. Une machine Xubuntu pour accéder au serveur ci-dessus.
  3. Un appareil mobile avec une application Google-Authenticator installée dessus.

Présentation de la configuration

  1. Machine Fedora 30 avec IP : 192.168.43.92
  2. Machine Xubuntu avec IP : 192.168.43.71
  3. Appareil mobile avec application Google-Authenticator.

Étape 1. Installez Google-Authenticator sur le serveur Fedora 30 à l'aide de la commande :

$ sudo dnf install -y google-authenticator

Étape 2. Exécutez la commande ci-dessous pour démarrer Google-Authenticator sur votre serveur :

$ google-authentificateur

Il posera quelques questions pour configurer le serveur pour qu'il fonctionne avec votre appareil mobile :

Voulez-vous que les jetons d'authentification soient basés sur le temps (y/n) y [Entrez 'Y' ici]

Il affichera un code QR sur la fenêtre du terminal ; garder cette fenêtre de terminal ouverte pour le moment.

Étape 3. Installez l'application Google-Authenticator sur votre appareil mobile et ouvrez-la. Cliquez maintenant sur l'option 'Scanner un code QR.' Concentrez maintenant votre appareil photo mobile sur la numérisation du code QR sur la fenêtre du terminal de votre serveur.

Étape 4. Après avoir scanné le code QR, votre appareil mobile ajoutera un compte pour votre serveur et générera un code aléatoire qui continuera à changer avec une minuterie rotative, comme le montre l'image ci-dessous :

Étape 5. Retournez maintenant à la fenêtre de votre terminal serveur et entrez ici le code de vérification de votre appareil mobile. Une fois le code confirmé, il générera un ensemble de codes à gratter. Ces codes à gratter peuvent être utilisés pour vous connecter à votre serveur au cas où vous perdriez votre appareil mobile. Alors, enregistrez-les dans un endroit sûr.

Étape 6. Dans les étapes suivantes, il posera quelques questions pour terminer la configuration. Nous avons donné ci-dessous l'ensemble des questions et leurs réponses pour configurer l'installation. Vous pouvez modifier ces réponses selon vos besoins :

Voulez-vous que je mette à jour votre "/home/linuxhint/.fichier google_authenticator"? (o/n) y   [Entrez 'y' ici]
Voulez-vous interdire plusieurs utilisations du même jeton d'authentification? Cela vous limite à une connexion toutes les 30 s environ, mais cela augmente vos chances de remarquer ou même d'empêcher les attaques de type man-in-the-middle (y/n) y   [Entrez 'y' ici]
Par défaut, un nouveau token est généré toutes les 30 secondes par l'application mobile.Pour compenser un éventuel décalage temporel entre le client et le serveur, nous autorisons un jeton supplémentaire avant et après l'heure actuelle. Cela permet un décalage temporel allant jusqu'à 30 secondes entre le serveur d'authentification et le client. Si vous rencontrez des problèmes avec une mauvaise synchronisation de l'heure, vous pouvez augmenter la fenêtre de sa taille par défaut de 3 codes autorisés (un code précédent, le code actuel, le code suivant) à 17 codes autorisés (les 8 codes précédents, le code actuel et les 8 codes suivants). Cela permettra un décalage temporel allant jusqu'à 4 minutes entre le client et le serveur. Voulez-vous le faire? (o/n) y   [Entrez 'y' ici]
Si l'ordinateur auquel vous vous connectez n'est pas protégé contre les tentatives de connexion par force brute, vous pouvez activer la limitation du débit pour le module d'authentification. Par défaut, cela limite les attaquants à pas plus de 3 tentatives de connexion toutes les 30 secondes. Voulez-vous activer la limitation de débit? (o/n) y   [Entrez 'y' ici]

Étape 7. Ouvrez maintenant le fichier sshd_config avec n'importe quel éditeur

$ sudo vi /etc/ssh/sshd_config

et procédez comme suit :

  1. Décommentez et définissez le Authentification par mot de passe à oui.
  2. Décommentez et définissez le ChallengeRéponseAuthentification à oui.
  3. Décommentez et définissez le Utiliser PAM à oui.

Enregistrez et fermez le fichier.

Étape 8. Ensuite, ouvrez le fichier /etc/pam.fichier d/sshd

$ sudo vi /etc/pam.d/sshd

et ajoutez les lignes suivantes sous la ligne 'authentification de mot de passe de sous-pile auth:

authentification requise pam_google_authenticator.donc

Étape 9. Démarrez et activez le service SSH sur le serveur Fedora avec la commande :

$ sudo systemctl démarrer sshd
$ sudo systemctl activer sshd

Toutes les étapes de configuration du serveur sont maintenant effectuées. Nous allons maintenant passer à notre machine cliente, je.e., Xubuntu, dans notre cas.

Étape 10. Essayez maintenant de vous connecter avec SSH depuis la machine Xubuntu vers le serveur Fedora 30 :

$ ssh [email protégé]

Comme vous pouvez le voir, le SSH demande d'abord le mot de passe du serveur, puis un code de vérification de votre appareil mobile. Une fois que vous avez entré le code de vérification correctement, vous pouvez vous connecter au serveur Fedora distant.

Conclusion

Félicitations, nous avons configuré avec succès l'accès SSH avec authentification à deux facteurs sur Fedora 30 OS. Vous pouvez également configurer SSH pour utiliser uniquement un code de vérification pour vous connecter sans le mot de passe du serveur distant.

Comment installer League Of Legends sur Ubuntu 14.04
Si vous êtes fan de League of Legends, alors c'est l'occasion pour vous de tester League of Legends. Notez que LOL est pris en charge sur PlayOnLinux ...
Installez le dernier jeu de stratégie OpenRA sur Ubuntu Linux
OpenRA est un moteur de jeu de stratégie en temps réel libre/gratuit qui recrée les premiers jeux Westwood comme le classique Command & Conquer: Red A...
Installez le dernier émulateur Dolphin pour Gamecube et Wii sur Linux
L'émulateur Dolphin vous permet de jouer aux jeux Gamecube et Wii de votre choix sur des ordinateurs personnels Linux (PC). Étant un émulateur de jeu...