Outils pour utilisateurs

Outils du site


sysadmin:ssh:gestion-cles

SSH: Gestion des clés d'authentification

La commande de gestion des clés SSH ssh-keygen s'appuie sur OpenSSL. Quelques notes à propos de la gestion des clés d'authentification.

RSA ou DSA

Ces deux algorithmes de chiffrements asymétriques sont utilisables. Historiquement DSA a été développé alors que RSA préexistant n’était pas exploitable pour des raisons de brevet.

Quel que soit l'algorithme, ne pas générer de clé de taille inférieure à 2048 bits.

Générer un paire de clés

ssh-keygen -t rsa -b 4096 -C username@domain.tld -f output_file

L'argument -C permet de définir un commentaire, en général désignant l'utilisateur. La commande produit deux fichiers dans le répertoire ~/.ssh/ de l'utilisateur.

Modifier la passphrase

En cas de compromission de la clé privée, la modification de la passphrase ne sera d'aucune aide. Régénérer et utiliser une nouvelle clé.

Pour modifier la passphrase:

$ ssh-keygen -p -f ~/.ssh/id_rsa

Ajouter ou modifier le commentaire

Il est possible d'ajouter un commentaire ou un descriptif à une paire de clés préexistante. Ça peut devenir plus confortable quand on utilise plusieurs clés.

# On ajoute le commentaire "My user name" sur la clé pré-existante user_id
ssh-keygen -c -C "My user name" -f ~/.ssh/user_id

Régénérer la clé publique

La clé publique a normalement été copiée sur les machines distantes dans le fichier ~/.ssh/authorized_keys. On peut regénérer la clé publique grâce à la clé privée et à la commande ssh-keygen:

ssh-keygen -y -f private_dsa.key > key.pub

Copier la clé publique sur le serveur distant

$ ssh-copy-id -i /chemin/man_cle/id_dsa.pub user@ip_machine 

Pour que la commande puisse s’exécuter correctement:

  • Le serveur doit écouter sur le port 22
  • Le serveur doit accepter l'authentification par mot de passe.

Dans le cas contraire, il faudra communiquer la clé publique à l'administrateur du serveur distant.

sysadmin/ssh/gestion-cles.txt · Dernière modification : 2022/12/09 08:50 de yoann