accueil > Gestion réseau > ssh-copy-id

ssh-copy-id : Copier la clé publique SSH

La commande ssh-copy-id est un utilitaire qui permet d'ajouter facilement et en toute sécurité la clé publique SSH d'un système local au fichier authorized_keys d'un serveur distant. Cela permet d'établir des connexions SSH sans mot de passe et réduit les erreurs potentielles lors de la copie manuelle des clés.

Aperçu

ssh-copy-id automatise le processus de configuration de l'authentification par clé publique SSH, aidant ainsi les utilisateurs à se connecter en toute sécurité aux serveurs distants sans mot de passe. Cette commande utilise par défaut des fichiers de clé publique tels que ~/.ssh/id_rsa.pub ou ~/.ssh/id_dsa.pub, mais vous pouvez également spécifier un fichier de clé particulier.

Fonctionnalités principales

  • Copie la clé publique SSH sur le serveur distant
  • Configure automatiquement les permissions du fichier authorized_keys
  • Prend en charge la mise en place d'un environnement de connexion SSH sans mot de passe
  • Empêche l'ajout de clés en double lors d'exécutions multiples (idempotence)

Options principales

La commande ssh-copy-id offre plusieurs options utiles pour contrôler finement le processus de copie des clés.

Configuration de la clé et de la connexion

Modes d'exécution

Commande générée :

Essayez de combiner les commandes.

Description:

`ssh-copy-id` Exécute la commande.

Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.

Exemples d'utilisation

Divers scénarios pour copier une clé publique SSH sur un serveur distant à l'aide de ssh-copy-id.

Utilisation de base

ssh-copy-id user@remote_host

Copie la clé publique par défaut (par exemple, ~/.ssh/id_rsa.pub) pour l'utilisateur 'user' sur 'remote_host'. Il vous sera demandé d'entrer le mot de passe.

Spécifier un fichier de clé particulier

ssh-copy-id -i ~/.ssh/my_custom_key.pub user@remote_host

Copie la clé en utilisant le fichier de clé publique spécifié (par exemple, ~/.ssh/my_custom_key.pub).

Utiliser un port SSH non standard

ssh-copy-id -p 2222 user@remote_host

Utilisé lorsque le serveur distant exécute le service SSH sur un port différent du port par défaut (22), par exemple le port 2222.

Combinaison de plusieurs options

ssh-copy-id -i ~/.ssh/another_key.pub -p 2222 user@remote_host

Exemple de copie de clé vers un port non standard en utilisant un fichier de clé spécifique.

Conseils et précautions

Conseils utiles et points à considérer lors de l'utilisation de ssh-copy-id.

Préparation

Avant d'utiliser ssh-copy-id, assurez-vous des points suivants.

  • Génération de la clé publique: Si vous n'avez pas encore de paire de clés SSH, vous devez d'abord la générer avec la commande `ssh-keygen`.
  • Accès au serveur distant: Vous devez disposer d'un mot de passe ou d'un autre moyen d'authentification pour accéder au serveur distant via SSH. ssh-copy-id demande le mot de passe pour cette authentification initiale.

Problèmes de permissions

ssh-copy-id configure automatiquement les permissions correctes pour le répertoire `~/.ssh` et le fichier `~/.ssh/authorized_keys` sur le serveur distant. Si vous avez copié la clé manuellement, vous devez définir les permissions correctement avec les commandes `chmod 700 ~/.ssh` et `chmod 600 ~/.ssh/authorized_keys`.

Idempotence

ssh-copy-id n'ajoute pas une clé déjà copiée. Par conséquent, même si vous l'exécutez plusieurs fois, aucune clé en double ne sera ajoutée au fichier authorized_keys. C'est une caractéristique très pratique pour une utilisation dans les scripts.


Commandes de la même catégorie