Je dispose de deux serveurs sur lesquels je me connecte à l'aide de l'authentification par clé publique SSH, avec des clés différentes. La configuration ressemble à ceci:
Host server1
IdentityFile /path/to/key
IdentitiesOnly yes
Host server2
IdentityFile /path/to/other/key
IdentitiesOnly yes
J'ajoute les deux clés à l'agent et vérifie via ssh-add -l
que les deux sont présentes. Pourtant, l’un fonctionne mais l’autre ne fonctionne pas:
$ssh -v server1
...
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /path/to/key
debug1: Server accepts key: ...
debug1: Authentication succeeded (publickey).
$ssh -v server2
...
debug1: Next authentication method: publickey
debug1: Trying private key: /path/to/other/key
debug1: key_parse_private2: missing begin marker
debug1: key_parse_private_pem: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
Enter passphrase for key '/path/to/other/key':
Le système d'exploitation est Ubuntu 14.04, la sortie de ssh -V
is OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.3, OpenSSL 1.0.1f 6 Jan 2014
.
ssh-add -l
que les deux sont présentes.
RSA
au format openssh ou un peu pem
? Il doit y avoir une différence.
-----BEGIN RSA PRIVATE KEY-----
, certaines propriétés, un grand bloc de données de base64, -----END RSA PRIVATE KEY-----
.