Copie el archivo de registro remoto en sesiones SSH de 2 saltos, sin necesidad de ingresar contraseñas

Copie el archivo de registro remoto en sesiones SSH de 2 saltos, sin necesidad de ingresar contraseñas

Deseo obtener un archivo de registro desde una PC remota a través de un servidor de puerta de enlace a mi PC local sin ingresar contraseñas. El servidor de puerta de enlace utilizó acctA@gatewayServer. La PC remota usó acctB@remotePC.

He configurado las claves públicas/privadas de SSH tanto en la puerta de enlace como en el control remoto.

Desde mi PC local, podía acceder mediante SSH a una PC remota directamente mediante 2 saltos sin necesidad de ingresar las contraseñas de las 2 cuentas, usando: ssh acctA@gatewayServer -t ssh acctB@remotePC

Pero cuando uso SCP con ProxyCommand, me pide la contraseña de acctB. ¿Por qué?

scp -Cp -o "ProxyCommand ssh -q acctA@gateway -W remotePC:22" acctB@remotePC:/opt/logpath/log1.tgz log01.tgz

Gracias y reconocimiento anticipados a cualquiera que pueda aconsejar.

Respuesta1

Lo más sencillo es introducir estas líneas en tu.ssh/configarchivo:

  Host remotePC
  User          acctB
  HostName      remotePC
  ProxyCommand  ssh AcctA@gatewayServer nc %h %p 2> /dev/null

que luego puedes usar para conectar o copiar archivos simplemente mediante:

  ssh remotePC
  scp acctB@remotePC:/home/AcctB/somefile .

Para que esto funcione, necesitas el netcat (Carolina del Norte) comando instalado en el gatewayServer.

Si realmente insistes en una sola frase (pero nunca puedo recordar todo esto), aquí tienes:

ssh -o "ProxyCommand ssh acctA@gatewayServer nc -w 1 %h 22" acctB@remotePC

y lo mismo para scp.

información relacionada