Mise en situation
Si vous tentez de vous connecter automatiquement entre un ordinateur A vers l’ordianteur B, soit pour avoir accès a un terminal ou vous voulez automatiser une tâche.
Comment procéder
- Identifier vous sur l’ordinateur A (client) pour créé une pair de clef d’authentification (ne pas spécifier de “passphrase”)
utilisateur@ordinateurA:~> ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/utilisateur/.ssh/id_rsa): Created directory '/home/utilisateur/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/utilisateur/.ssh/id_rsa. Your public key has been saved in /home/utilisateur/.ssh/id_rsa.pub. The key fingerprint is: 3e:4f:05:79:3a:9f:96:7c:3b:ad:e9:58:37:bc:37:e4 utilisateur@ordinateurA
- Maintenant utiliser ssh ou autre logiciel de console pour créé le répertoire ~/.ssh pour l’utilisateur que vous voulez sur l’ordinateur B. (Prenez note que le répertoire peut déjà exister):
utilisateur@ordinateurA:~> ssh utilisateur@ordinateurB mkdir -p .ssh utilisateur@ordianteurB's password:
- Finalement, ajouter la clef public, créé auparavant, dans le fichier ~/.ssh/authorized_keys dans l’ordinateur B et entrer le mot de passe une dernière fois:
utilisateur@ordinateurA:~> cat .ssh/id_rsa.pub | ssh utilisateur@ordinateurB 'cat >> .ssh/authorized_keys' utilisateur@ordinateurB's password:
- Maintenant, vous pouvez vous connecter sur l’ordinateur B depuis l’ordinateur A sans spécifier de mot de passe:
utilisateur@ordinateurA:~> ssh utilisateur@ordinateurB utilisateur@ordinateurB:~>
Prendre note que dépendamment de votre version de SSH vous aurez peut-être besoin des changements suivant :
- Insérer la clef public dans le fichier .ssh/authorized_keys2
- Changer les permissions du répertoire .ssh pour 600