J'ai un server dev.example.com
et dans son file authorized_keys j'ai ma key ~/.ssh/id_rsa.pub
. J'ai aussi une key ~/.ssh/my_test.pub
.
Mon ~/.ssh/config
spécifie que pour dev.example.com
il devrait utiliser id_rsa
comme on le souhaiterait normalement.
Cependant, j'essaie de tester pour s'assurer que my_test
ne permettra que l'access que je veux. J'ai donc essayé de transmettre le file d'identité:
$ ssh -v -i /Users/wwerner/.ssh/my_test example . . . debug1: Offering RSA public key: /Users/wwerner/.ssh/id_rsa
Et il se connecte. Crap.
Ok, donc peut-être que c'est un problème avec moi en utilisant l' example
au lieu du FQDN:
$ ssh -v -i /Users/wwerner/.ssh/my_test dev.example.com debug1: Offering RSA public key: /Users/wwerner/.ssh/id_rsa
Et il se connecte. Peut-être que j'ai besoin de mon nom d'user?
$ ssh -v -i /Users/wwerner/.ssh/my_test [email protected] debug1: Offering RSA public key: /Users/wwerner/.ssh/id_rsa
D'accord … alors maintenant, je jette encore plus loin mon filet. Peut-être que le file de configuration est à l'origine de ce problème:
$ ssh -v -F /dev/null -i /Users/wwerner/.ssh/my_test [email protected] debug1: Reading configuration data /dev/null debug1: Offering RSA public key: /Users/wwerner/.ssh/id_rsa
Argh! Alors peut-être si j'utilise -o aussi?
$ ssh -v -F /dev/null -o IdentityFile=/dev/null -i /Users/wwerner/.ssh/my_test [email protected] debug1: Offering RSA public key: /Users/wwerner/.ssh/id_rsa
Qu'est-ce que je fais mal? Quel paramètre dois-je spécifier pour que ssh n'offre pas mon id_rsa
?
Vous pouvez utiliser la directive IdentitiesOnly
conjointement avec la directive IdentityFile
.
Sur la command line, vous pouvez utiliser:
ssh -v -o "IdentitiesOnly=yes" -i /Users/wwerner/.ssh/my_test dev.example.com
Comme alternative, vous pouvez définir la directive dans votre file .ssh/config
dans la section de votre hôte.
Voir man ssh_config
pour plus de détails