Je souhaite copier une clé ssh publique depuis le ~/.ssh/id_rsa.pub
fichier sur ma machine locale au ~/.ssh/authorized_keys
fichier sur un hôte distant distant de deux sauts ssh. En d'autres termes, localhost
n'a qu'un accès ssh à host1
, mais host1
a un accès ssh à host2
. Je veux copier ma clé ssh publique depuis localhost
à host2
.
Pour copier une clé ssh sur un hôte distant en un saut de distance, la documentation ssh donne la commande :
ssh-copy-id -i ~/.ssh/mykey [email protected]
Existe-t-il un moyen de copier la clé sur une machine distante de deux sauts en une seule commande ?
Réponse acceptée :
Vous pouvez passer n'importe quel ssh
option pour ssh-copy-id
avec le -o
option. En utilisant le ProxyJump
option, vous pouvez utiliser ssh-copy-id
pour copier votre clé sur un hôte via jump host.
Voici un exemple où je copie ma clé ssh sur leia.spack.org via l'hôte de saut jump.spack.org :
$ ssh-copy-id -o ProxyJump=jump.spack.org leia.spack.org
[email protected]'s password:
Number of key(s) added: 1
Puis testez-le avec :
$ ssh -J jump.spack.org leia.spack.org
Welcome to Ubuntu 20.04 LTS (GNU/Linux 5.4.0-42-generic x86_64)