Comment utiliser la commande ssh-copy-id

Comment utiliser la commande ssh-copy-id

La commande SSH-Copy-ID est un outil simple qui vous permet d'installer une clé SSH sur les clés autorisées d'un serveur distant. Cette commande facilite la connexion de la clé SSH, qui supprime la nécessité d'un mot de passe pour chaque connexion, assurant ainsi un processus de connexion automatique sans mot de passe. La commande SSH-Copy-ID fait partie d'OpenSSH, un outil pour effectuer des administrations système distantes à l'aide de connexions SSH cryptées.

Cet article vous montre comment utiliser l'outil SSH-Copy-ID pour rendre vos connexions SSH plus transparentes et sécurisées.

Comment installer la commande ssh-copy-id

L'outil SSH-Copy-ID, qui fait partie du package OpenSSH, est disponible dans tous les principaux référentiels de distribution Linux, et vous pouvez utiliser votre gestionnaire de packages pour installer cette commande.

Pour installer l'outil SSH-Copy-ID sur Debian, utilisez la commande suivante:

Sudo Apt-Get Update && sudo apt-get install openSSH-Client

Une fois que vous avez installé OpenSSH, vous pouvez utiliser l'outil SSH-Copy-ID dans la ligne de commande.

$ ssh-copy-id
Utilisation: / usr / bin / ssh-copy-id [-H |-?| -f | -n] [-i [identité_file]] [-p port] [[-o ]…] [User @] HostName -F: Mode Force - Copiez les touches sans essayer de vérifier si elles sont déjà installées -n: Dry Run - Aucune touche n'est réellement copiée -H |-?: Imprimez cette aide

L'utilisation de SSH-Copy-ID est simple car le script facilite le processus d'authentification de la clé publique et plus efficace. Avant de plonger dans la façon d'utiliser l'outil, nous discuterons d'abord du fonctionnement de l'authentification de la clé publique SSH.

NOTE: Si vous savez déjà comment fonctionne l'authentification de la clé publique SSH, n'hésitez pas à sauter cette partie et à approfondir la façon d'utiliser la commande ssh-copy-id immédiatement.

Authentification de clé publique SSH

L'authentification publique des clés SSH est une méthode d'authentification SSH qui permet aux utilisateurs d'utiliser des clés générées cryptographiquement pour se connecter aux serveurs distants.

Les clés SSH sont plus sécurisées que les mots de passe bruts et fournissent un moyen beaucoup plus efficace de se connecter à SSH. Les clés SSH sont automatisées et une fois autorisées, ne nécessitent pas de mot de passe à chaque connexion.

Pour utiliser une clé SSH, nous commencerons par générer une clé.

Comment générer une clé SSH

Pour générer une clé SSH, utilisez l'outil SSH-Keygen qui fait partie d'OpenSSH. Cet outil génère des fichiers de clés publics et privés stockés dans le ~ /.Répertoire SSH, comme indiqué ci-dessous.

$ ssh-keygen
Génération de paires de clés RSA publiques / privées.
Entrez le fichier dans lequel enregistrer la clé (/ root /.ssh / id_rsa):
Répertoire créé '/ root /.ssh '.
Entrez en phrase de passe (vide pour aucune phrase de passe):
Entrez à nouveau la même phrase de passe:
Votre identification a été enregistrée dans / root /.ssh / id_rsa.
Votre clé publique a été enregistrée dans / root /.ssh / id_rsa.pub.
L'empreinte clés est:
Sha256: ddvoqhs6cgt8vnertz9aisnvoukmspprz + gi24dptsa root @ utilisateur L'image aléato de la clé est:
+---[RSA 2048]----+
| O = O |
| o. O |
|… + .+.|
| . + + o .O |
| S +… |
|. O… O O + .|
|.E o +. +. + + |
| o. = o.o+ .o.+… |
|.o… oo = + o = o.+|
+----[SHA256]-----+

Comment copier la clé SSH à l'aide de SSH-Copy-ID

Une fois que nous avons généré une touche SSH, nous pouvons ajouter manuellement la clé SSH au fichier à distance Machine Autorized_keys ou utiliser la commande ssh-copy-id.

Nous utiliserons la commande ssh-copy-id pour faciliter ce processus. Appelez simplement la commande ssh-copy-id et passez le chemin à la clé publique, comme suit:

$ ssh-copy-id -i ~ /.ssh / id_rsa.Utilisateur de pub @ 77.134.54.101 -p 6576

Après avoir saisi la commande ci-dessus, vous devez obtenir la sortie suivante:

/ usr / bin / ssh-copy-id: info: source de clés à installer: "/ root /.ssh / id_rsa.pub"
/ usr / bin / ssh-copy-id: info: Tenter de se connecter avec la ou les nouvelles clés, pour filtrer celle qui est déjà installée
/ USR / bin / ssh-copy-id: info: 1 clé (s) Reste à installer - Si vous êtes invité maintenant, il s'agit d'installer l'utilisateur des nouvelles clés à 77.134.54.Le mot de passe du 101:
Nombre de clés ajoutés: 1 Essayez maintenant de vous connecter à la machine, avec: "Ssh -P '6576" User @ 77.134.54.101 '"et vérifiez pour vous assurer que seules les touches que vous vouliez ont été ajoutées.

NOTE: Ne copiez jamais votre clé privée dans une autre machine.

Une fois la commande exécutée avec succès, essayez de vous connecter au serveur à l'aide de la clé que vous avez téléchargée, comme suit:

$ ssh -p 6576 linkfy @ 77.134.54.101

La commande ci-dessus vous obligera à saisir la phrase secrète pour votre clé publique, comme indiqué dans la sortie ci-dessous:

Entrez la phrase de passe pour la clé '/ root /.ssh / id_rsa ':
Dernière connexion: ven 5 mars 14:06:16 2021 de 173.208.98.186

La commande ci-dessus devrait vous permettre de vous connecter à l'hôte distant sans demander le mot de passe de l'utilisateur. Le système peut vous inviter à saisir la phrase secrète de la clé que vous avez configurée plus tôt.

Options de commande SSH-Copy-ID

Vous pouvez modifier comment fonctionne la commande SSH-Copy-ID en utilisant les arguments fournis. Pour afficher la page d'aide, utilisez la commande ssh-copy-id -h ou utilisez la commande ssh-copy-id sans arguments.

  1. -Je plaide: Cet argument spécifie le fichier d'identité à utiliser, je.e., copié à l'hôte distant spécifié. Si vous ne spécifiez pas l'argument -i, tous les fichiers du ~ /.Répertoire SSH avec le modèle de correspondance *.Pub sera ajouté.
  2. -drapeau F: Cet drapeau permet un mode forcé, qui ne vérifie pas si la clé est préconfigurée dans Autorized_keys sur le serveur. L'indicateur -f ajoute une clé, résultant souvent en plusieurs copies de la même clé installées sur le serveur.
  3. -drapeau p: Cet drapeau spécifie le port SSH pour se connecter à l'hôte distant. Cet drapeau est utilisé lorsque le port SSH par défaut n'est pas utilisé.
  4. -n drapeau: Ce drapeau effectue une course à sec qui imprime les touches destinées à l'installation sans les installer sur l'hôte distant.

Conclusion

Ce guide vous a montré comment utiliser la commande SSH-Copy-ID pour installer des touches SSH sur les hôtes distants. Bien que cela puisse être une méthode simple et efficace pour installer des clés, les clés mal configurées peuvent entraîner des problèmes de sécurité ou être verrouillés du système. Par conséquent, soyez extrêmement prudent lorsque vous expérimentez ce processus.