Comment se connecter par ssh sans mot de passe (Utilisation de votre key ssh)
Bonjour,
Une petite note rapide vous permettant de vous connecter a vos serveur SSH sans taper de mot de passe
Pour cela il y a une solution simple et sécurisé :
-Créer une clé privée et une clé publique cryptées
-Ajouter votre clé publique à la liste des clés autorisées du serveur distant afin de permettre l’authentification.
Nous allons donc commencer par générer les clés :
-Sous Mac/Linux :
ssh-keygen -t rsa -b 2048
les clés seront enregistrées dans ‘.shh’ du répertoire de départ de l’utilisateur (ici sur Mac : /Users/VotreUser/.ssh/).
Je vous conseille donc à la première question de laisser le répertoire par défaut
A la question de la paraphrase, n’entrez rien (sauf si vous voulez taper un mot de passe à chaque fois)
Vos deux key (public et privé) ont maintenant été créés (dans le dossier ‘~/.ssh/’) :
- ‘id_rsa’ (ou ‘id_dsa’ dans le cas d’une clé DSA) : contient la clé privée et ne doit pas être dévoilé ou mis à disposition
- ‘id_rsa.pub’ (ou ‘id_dsa.pub’ dans le cas d’une clé DSA) : contient la clé publique, c’est elle qui sera mise sur le serveur dont l’accès est voulu.
Il faut ensuite déposer la clé publique sur le serveur distant que vous souhaitez joindre en ssh :
- Depuis un Mac (ssh-copy-id n’est pas disponible sur OS X)
cat ~/.ssh/id_rsa.pub | ssh user@serveur.fr "cat >> ~/.ssh/authorized_keys"
- Sous Linux :
ssh-copy-id -i ~/.ssh/id_dsa.pub user@serveur.fr
Et voilà, c’est normalement la dernière fois que l’on vous demandera votre mot de passe !!
Quel est l’intérêt de définir une ‘passphrase’ ?
Si quelqu’un récupère votre clé privé, il peut alors se connecter à toutes les machines où la clef publique a été déposée.
Si vous ne voulez pas retapez votre ‘passphrase’ à chaque connection, le mieux, au lieu de ne pas en utiliser est d’utiliser le cache ssh-agent.
Sur Mac, vous pouvez ajouter la clé privée à votre Trousseau, comme cela pas besoin de systématiquement retaper votre phrase magique :
ssh-agent ssh-add -K
Et si un jour vous avez besoin de modifier votre ‘passphrase’ :
ssh-keygen -p
Et voilà, vous pouvez formater votre cerveau de tous vos mot de passes !!!
Des soucis, des erreurs ? N’hésitez pas à m’en parler.