configuración para usar git a través de ssh en jump host

configuración para usar git a través de ssh en jump host

Con una clave privada que solo está disponible en una computadora portátil (alice), ¿hay alguna manera de usar esa clave para la autenticación con gitlab desde un servidor (bob)? (Creo que la complicación es menor, ya que es un anfitrión de salto entre Alice y Bob).

Alicia --> saltar --> Bob --> gitlab

El ~/.ssh/config en alice es actualmente:

Host *
  PKCS11Provider /usr/lib/ssh-keychain.dylib

Host jump
  HostName jump01.example.org

Host bob
  HostName bob.example.org
  ProxyJump jump

Tengo la clave pública del token de Alice en gitlab y me gustaría usarla con gitcomandos de Bob. Como en...

alice:~ $ ssh bob
Last login: Fri Aug 27 20:33:56 2021
bob:~ $ git clone [email protected]:my/repo.git

donde no tengo ningún par de claves sobre Bob.

Respuesta1

Debe tener cierta confianza de la que bobno se pueda abusar, pero la respuesta simple es ejecutar un agente ssh y utilizar el reenvío de agentes.

Inicie un agente en alice, agregue su PKCS11Provider y ssh-add -Sluego configure el reenvío de agentes en su configuración.

Host bob
  ForwardAgent yes
  HostName bob.example.org
  ProxyJump jump

Consulte las páginas de manual de ssh-agent, ssh-add y ssh_config para obtener detalles sobre los proveedores PKCS11 y el reenvío de agentes.

Creo que la complicación es menor al ser un anfitrión de salto.

Debido a cómo funciona ProxyJump, no es una complicación y, literalmente, no importa en absoluto. Desde la perspectiva del cliente ssh en Alice, actúa exactamente como si hicieras una conexión directa con Bob.

información relacionada