Serveur

Comment configurer la connexion SSH sans mot de passe sous Linux

Comment configurer la connexion SSH sans mot de passe sous Linux

Ssécure Chell ou SSH est un protocole réseau open source bien connu. Le protocole est utilisé pour se connecter à d'autres machines à distance. Par conséquent, il serait facile d'exécuter un tas de commandes et de lancer n'importe quelle application sur le périphérique distant en douceur sans avoir besoin d'être à proximité de la machine distante.  De plus, le protocole SSH est très fiable et sécurisé. Les utilisateurs dépendent toujours du protocole SSH pour copier des fichiers entre deux appareils différents.

Généralement, pour établir une connexion SSH avec la machine distante, vous devez entrer le nom d'utilisateur et le mot de passe de la machine distante. Mais que faire si vous avez besoin d'une méthode plus sécurisée que d'utiliser le nom d'utilisateur et le mot de passe dans chaque connexion? Cela pourrait être fait en utilisant une clé SSH générée à partir de la machine cliente puis copiée sur la machine distante. Avec de petites configurations supplémentaires, vous pourrez vous connecter en toute sécurité à la machine distante sans utiliser de nom d'utilisateur et de mot de passe à chaque fois. L'utilisation d'une clé SSH au lieu d'utiliser le nom d'utilisateur et le mot de passe dans chaque connexion est beaucoup plus sécurisée ; seule la machine qui détient la bonne clé SSH peut se connecter rapidement.

Aujourd'hui, nous allons vous montrer comment établir une connexion SSH sans avoir à saisir le mot de passe de la machine distante. En règle générale, l'utilisation d'une connexion sans mot de passe peut être utilisée pour transférer rapidement des fichiers entre différentes machines. Mais avant de commencer notre tutoriel, regardons notre environnement.

Préparation de l'environnement

Ce serait mieux si vous aviez deux machines, le client et les machines distantes. Presque tout le travail sera effectué à partir de la machine cliente qui sera utilisée pour se connecter à l'appareil distant. Les deux appareils sont Ubuntu avec les adresses IP suivantes

Encore une chose avant de commencer, assurez-vous que les deux machines sont à jour à l'aide des commandes suivantes :

mise à jour sudo apt mise à jour sudo apt

Commençons maintenant notre guide.

Configuration de la connexion SSH sans mot de passe

Étape 1. À partir de la machine cliente, assurez-vous qu'une clé SSH est générée avant d'utiliser la commande suivante.

ls -al ~/.ssh/id_*.pub

À partir de la machine cliente, vérifiez les clés SSH existantes

Comme vous pouvez le remarquer, si vous n'avez pas déjà généré de clé SSH, vous obtiendrez le message "Aucun fichier ou répertoire de ce type". Sinon, vous obtiendrez rapidement les clés disponibles si elles existent.

Étape 2. Étant donné que vous n'avez précédemment généré aucune clé SSH, il est temps de générer une nouvelle clé SSH à l'aide de la commande suivante :

ssh-keygen -t rsa -b 4096

À partir de la machine cliente, générer SSH

En règle générale, la commande précédente générera deux nouvelles clés SSH dans deux fichiers différents. Les deux fichiers sont stockés dans un répertoire caché nommé ".ssh" sous le répertoire de base de l'utilisateur actuel. Vous pouvez trouver une clé privée stockée dans un fichier nommé id_dsa et une autre clé publique dans un fichier nommé id_dsa.pub. De plus, il vous sera demandé d'ajouter une phrase secrète qui est utilisée pour protéger les clés générées, et vous pouvez l'utiliser lors de la connexion via SSH. Mais vous pouvez appuyer sur le "Entrer” bouton pour ne pas en utiliser un.

Étape 3. Vous pouvez maintenant lister le contenu du .répertoire ssh pour s'assurer que les deux clés sont créées.

ls -l /home/tuts/.chut/

À partir de la machine cliente, vérifiez que les deux clés sont créées

Étape 4. Vous pouvez également vous assurer que le fichier contient une clé à l'aide de la commande suivante :

ssh-keygen -lv

À partir de l'empreinte digitale d'affichage de la machine cliente

Étape 5. Pour prévisualiser le contenu du fichier de clé publique.

chat .ssh/id_rsa.pub

À partir de la machine cliente Afficher le contenu du fichier de clé SSH

Étape 6. Maintenant, à partir de la machine distante, assurez-vous que SSH est installé. S'il n'est pas installé, vous pouvez utiliser la commande suivante.

sudo apt installer ssh

Depuis la machine distante Installer le package SSH

Étape 7. Revenez à la machine cliente, connectez-vous à la machine distante et créez un nouveau répertoire nommé .ssh.

sudo ssh remote_machine_username@remote_machine_IP mkdir -p .ssh

Assurez-vous de remplacer le remote_machine_username par le vrai nom d'utilisateur et le remote_machine_IP par l'IP distante.

À partir de la machine cliente, créez un répertoire sur la machine distante

Étape 8. Ensuite, copions depuis la machine cliente la clé SSH publique générée précédemment sur la machine distante. Cela aiderait si vous colliez la clé publique dans un fichier nommé "authorized_keys". Il est fortement recommandé de ne pas changer le nom du fichier car lorsque vous allez établir une connexion SSH, le premier fichier que le système d'exploitation vérifiera est le "authorized_keys" déposer. Si le système n'a pas trouvé le fichier, il vous sera alors demandé d'entrer un nom d'utilisateur et un mot de passe pour pouvoir vous connecter à la machine distante.

chat sudo .ssh/id_rsa.pub | ssh remote_machine_username@remote_machine_IP 'cat >> .ssh/authorized_keys'

À partir de la machine cliente, copiez la clé SSH vers la machine distante

Étape 9. À partir de la machine distante, assurez-vous que la clé publique a été copiée avec succès avec le nomauthorized_keys.

ls .ssh/ chat .ssh/authorized_keys

À partir de la machine distante, vérifiez le fichier de clé SSH copié avec succès

Étape 10. Maintenant, à partir de la machine cliente, essayons d'établir une connexion SSH sans nom d'utilisateur et mot de passe.

ssh remote_machine_username@remote_machine_IP

Depuis la machine cliente Se connecter à la machine distante

Comme vous pouvez le constater, il ne vous sera pas demandé de saisir un nom d'utilisateur ni un mot de passe.

Désactiver l'authentification par mot de passe

Pour désactiver l'authentification par mot de passe à l'aide de la clé publique, vous devez d'abord modifier le fichier de configuration SSH à partir de la machine distante et désactiver l'option d'authentification par mot de passe. Voici les étapes pour le faire.

Étape 1. Depuis la machine distante, ouvrez le fichier de configuration ssh à l'aide de votre éditeur préféré.

vi /etc/ssh/sshd_config

À partir de la machine distante, ouvrez le fichier de configuration SSH

Étape 2. Faites défiler jusqu'à la fin du fichier de configuration SSH et ajoutez les quelques lignes suivantes pour désactiver l'authentification par mot de passe :

RSAAuthentication oui PubkeyAuthentication oui PasswordAuthentication non UsePAM non ChallengeResponseAuthentication non

À partir de la machine distante, modifiez le fichier de configuration SSH

Étape 3. Enregistrez et quittez votre fichier.

Étape 4. Enfin, redémarrez le service SSH et essayez à nouveau d'établir une nouvelle connexion de la machine cliente à la machine distante.

À partir du service SSH de redémarrage de la machine distante

C'est ça! Vous venez d'apprendre à établir une connexion SSH sans mot de passe. j'espère que ça vous a plu.

WinMouse vous permet de personnaliser et d'améliorer le mouvement du pointeur de la souris sur un PC Windows
Si vous souhaitez améliorer les fonctions par défaut de votre pointeur de souris, utilisez un logiciel gratuit WinMouse. Il ajoute plus de fonctionnal...
Le bouton de clic gauche de la souris ne fonctionne pas sous Windows 10
Si vous utilisez une souris dédiée avec votre ordinateur portable ou de bureau mais que le le clic gauche de la souris ne fonctionne pas sur Windows 1...
Le curseur saute ou se déplace de manière aléatoire lors de la saisie dans Windows 10
Si vous constatez que le curseur de votre souris saute ou se déplace tout seul, automatiquement, au hasard lors de la saisie sur un ordinateur portabl...