Lorsqu’on est amené à gérer une dizaine de serveurs sous Linux (Debian), cela devient vite rébarbatif de devoir inscrire son login et son mot de passe pour ouvrir une session SSH, d’autant plus qu’on devra également s’authentifier pour utiliser sudo si nous le devons, autant le faire une fois de moins.
Les outils dont on a besoin
- PuTTY : client SSH sous Windows
- PuTTYgen pour la génération du certificat (normalement livré avec l’installeur PuTTY)
- Pageant , un agent d’authentification sous Windows qui utilisera le certificat – sauvegarder l’exécutable dans un répertoire PATH (d:\temp par exemple)
- ssh-keygen côté serveur du package openssh-client de Debian (apt-get install openssh-client)
Procédure d’activation de l’auto-login
Générer une clé publique et privée avec PuTTYgen en 3 étapes : Generate, bouger la souris pour générer une séquence aléatoire, puis mettre un mot de passe (Key passphrase) puis sauvegarder les 2 clés (mykey.pub et mykey.priv par exemple).
Copier le fichier mykey.priv.ppk dans le répertoire de Pageant (dans le PATH d’installation, d:\temp dans notre cas).
PuTTYgen
PuTTYgen
PuTTYgen
La clé publique (fichier mykey.pub) servira au serveur SSH, la clé privée (fichier mykey.priv.ppk) à l’agent pageant.
Sur le serveur sur lequel vous vous connectez en SSH :
- créer sur le répertoire de travail du compte SSH utilisé un répertoire .ssh (par exemple, je me connecte avec le compte od, alors il existe /home/od/.ssh)
- télécharger le fichier de la clé publique (mykey.pub) dans le répertoire créé précédemment (~/.ssh).
- exécuter :
$ ssh-keygen -i -f ~/.ssh/mykey.pub > ~/.ssh/mykey2.pub
$ cat mykey2.pub >> authorized_keys2
- sous windows, créer un fichier agentautologin.cmd avec comme contenu:
“d:\temp\pageant.exe” “d:\temp\mykey.priv.ppk”
- puis exécuter le, l’agent se met en tâche de fond (icône dans la barre de tâche windows) – vous devrez entrer le mot de passe fixé lors de la génération des clés.
- sous PuTTY, créer et configurer le serveur sur lequel vous souhaitez accéder, ainsi que le login d’accès (od dans notre cas), le serveur SSH mappera automatiquement sur le login et déclenchera l’authentification et l’ouverture de session, ceci à l’aide des 2 clés publique (ssh) et privée (pageant)
PuTTY
PuTTY
Logon
Il reste plus qu’à vous logguer sur le serveur, il s’authentifiera automatiquement.
Connexion SSH
Un sudo -s pour effectuer vos opérations de maintenance, et c’est parti.