Me gustaría copiar una clave ssh pública de ~/.ssh/id_rsa.pub
archivo en mi máquina local a ~/.ssh/authorized_keys
archivo en un host remoto que está a dos saltos ssh de distancia. En otras palabras, localhost
solo tiene acceso ssh a host1
, pero host1
tiene acceso ssh a host2
. Quiero copiar mi clave ssh pública de localhost
a host2
.
Para copiar una clave ssh a un host remoto a un salto de distancia, la documentación de ssh da el comando:
ssh-copy-id -i ~/.ssh/mykey [email protected]
¿Hay alguna forma de copiar la clave a una máquina que está a dos saltos de distancia con un solo comando?
Respuesta aceptada:
Puede pasar cualquier ssh
opción para ssh-copy-id
con el -o
opción. Usando el ProxyJump
opción puede usar ssh-copy-id
para copiar su clave a un host a través de jump host.
Aquí hay un ejemplo en el que copio mi clave ssh a leia.spack.org a través del host de salto jump.spack.org:
$ ssh-copy-id -o ProxyJump=jump.spack.org leia.spack.org
[email protected]'s password:
Number of key(s) added: 1
Y luego pruébalo con:
$ ssh -J jump.spack.org leia.spack.org
Welcome to Ubuntu 20.04 LTS (GNU/Linux 5.4.0-42-generic x86_64)