SSH ou Protocole Secure Shell est un protocole de réseau cryptographique utilisé pour accéder en toute sécurité à une machine distante à partir d'un autre ordinateur sur un réseau non sécurisé via la ligne de commande. Avec SSH, vous pouvez exécuter des commandes sur des systèmes et serveurs Linux distants, envoyer/transférer des fichiers et gérer normalement tout ce que vous faites à partir d'un seul endroit.
Lorsque vous travaillez avec plusieurs serveurs Linux à divers endroits, ou si vous essayez simplement de gagner un temps idéal pour accéder à ces serveurs, vous voudrez utiliser une paire de clés publique et privée SSH pour vous faciliter la vie en vous connectant à des machines distantes et exécuter des commandes sans saisir de mots de passe. De plus, les paires de clés SSH sont plus sécurisées car elles ne sont pas vulnérables aux attaques courantes de piratage de mots de passe par force brute.
[ Vous pourriez également aimer :Comment restreindre l'accès SSH à certains utilisateurs sous Linux ]
Dans cet article, vous apprendrez le processus de création des clés SSH et de configuration de vos serveurs Linux pour un accès facile à distance sans mot de passe avec lesdites clés.
Étape 1 - Création de la paire de clés SSH
La première étape consiste à vous connecter à votre machine Linux locale et à créer une paire de clés SSH à l'aide de la commande suivante dans votre ligne de commande locale :
$ ssh-keygen -t rsa
Ce qui affichera ce qui suit :
Generating public/private rsa key pair. Enter file in which to save the key (/home/ravi/.ssh/id_rsa):
Ici, vous pouvez appuyer sur ENTER pour conserver les fichiers à l'emplacement par défaut dans le .ssh
annuaire. Alternativement, vous pouvez choisir un nom de fichier ou un emplacement différent en le tapant après l'invite et en appuyant sur ENTER .
Ensuite, le système vous demandera d'entrer une phrase de passe :
Enter passphrase (empty for no passphrase):
Bien qu'une phrase secrète ne soit pas requise, c'est à vous de décider si vous souhaitez utiliser une phrase secrète ou non. Si vous souhaitez l'utiliser, vous devez mentionner une phrase secrète pour protéger la clé contre toute utilisation non autorisée. Lorsque vous mentionnez une phrase secrète, vous devez entrer la phrase secrète pour vous connecter au système.
Entrez à nouveau pour procéder à la génération d'une clé privée sans phrase de passe :
Enter the same passphrase again:
Vous devriez maintenant avoir une paire de clés publique et privée de type RSA dans votre /home/ravi/.ssh
répertoire :
$ ls -l .ssh/
Étape 2 - Copier la clé publique SSH sur votre serveur
Une fois la paire de clés SSH créée, il est temps de copier la clé publique (id_rsa.pub)
sur le serveur auquel vous allez accéder sous le fichier authorized_keys du serveur avec la commande ssh-copy-id comme indiqué. Assurez-vous de changer le nom d'utilisateur et l'adresse IP de votre serveur :
$ ssh-copy-id [email protected]
Une fois la clé copiée, vous pourrez vous connecter au serveur sans être invité à entrer un mot de passe. Cependant, si vous définissez une phrase secrète lors de la création de votre clé SSH, il vous sera demandé de fournir la phrase secrète à ce moment-là.
Étape 3 - Se connecter au serveur sans mot de passe SSH
Essayez maintenant de vous connecter au serveur distant, il vous placera sur la ligne de commande dans votre répertoire personnel sans vous demander de mot de passe ou de phrase secrète :
$ ssh [email protected]
Assurez-vous de vérifier que les autorisations suivantes sont appliquées sur le .ssh/
répertoire et .ssh/authorized_keys
fichier.
$ chmod 700 .ssh/ $ chmod 600 .ssh/authorized_keys
Dans cet article, vous avez appris comment nous avons créé une paire de clés SSH, copié notre clé publique sur un serveur et accédé au serveur sans mot de passe.