Cygwin et SSH avec clé publique

Suite à ce tuto: https://www.it-connect.fr/synchronisation-rsync-entre-windows-et-linux/ je me suis retrouvé bloqué, Cygwin ne voulait pas utiliser ma clé privée pour se connecter au SSH de mon serveur. Toute tentative de connexion me renvoyait cette erreur:

a14i3e20@mababasse ~
$ ssh a14i3e20@ipServeur
a14i3e20@ipServeur: Permission denied (publickey).

Bref, c’était la merde. Après avoir galéré avec cette histoire de clé publique sur le serveur (OpenMediaVault en l’occurrence), nouvelle galère, sur le client cette fois…

La solution est relativement simple. Cygwin ne savait tout simplement pas quelle clé il devait utiliser pour se connecter au serveur, d’où l’erreur. La commande pour lui indiquer la bonne clé:

ssh-add ~/.ssh/myKey

Il faut indiquer ici la clé privée (qui correspond à la clé publique envoyée sur le serveur bien entendu).

Cette commande (ssh-add) peut toutefois renvoyer une erreur, surtout sur Cygwin:

a14i3e20@mababasse ~
$ ssh-add ~/.ssh/myKey
Could not open a connection to your authentication agent.

C’est parce qu’avec Cygwin le « authentication agent » a besoin d’un fichier de configuration supplémentaire dans le dossier « ~/.ssh ». Ajouter ce fichier avec la commande suivante:

echo "ForwardAgent yes" > ~/.ssh/config

Cette commande crée un fichier nommé « config » dans le dossier « .ssh » de l’utilisateur et y enregistre « ForwardAgent yes ».

Ensuite lancer ssh-agent:

eval `ssh-agent`

Ensuite ajouter indiquer la clé avec la commande « ssh-add », et normalement tout baigne!

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.