Como combinar encaminhamento e encapsulamento de agente ssh?

0

Estou tentando criar um projeto para simplificar a configuração de dependência para meus usuários. Uma das dependências é um túnel SSH, da porta A no host B à porta C, usando a -Lopção ssh .

Posso usar com êxito o comando de encapsulamento ssh -L <A>:<B>:<C>no meu computador host e gostaria de poder fazer isso em uma VM do Vagrant.

Eu já configurei com sucesso o Vagrant para encaminhar ssh agent, a fim de usar as chaves ssh do host para autenticar em repositórios privados do git. Mas aqui cheguei ao fim do meu conhecimento de ssh e Vagrant quando se trata de agente encaminhando o túnel. Tal coisa é possível?

apennebaker
fonte
o vagabundo é realmente relevante? você não pode tentar fazer isso sem nenhuma máquina virtual? isso é solução básica de problemas. E mostre o comando e o erro que você está recebendo. Se forem endereços IP privados, como 192.168 ou 10.1.2.3 ou 172.16, etc., você poderá postar isso sem nenhum risco. Ou altere o IP privado para outro IP privado, se você estiver realmente preocupado. E altere a porta para outra quando você postar ... se estiver preocupado com isso. Mas bom para mostrar o comando efectivo e erro
barlop
Posso fazer o túnel com êxito do ssh diretamente da minha máquina host, mas quero poder fazer isso a partir de uma VM, usando as credenciais do meu host. Sim, o Vagrant é relevante.
apennebaker

Respostas:

1

Acontece que as chaves estavam sendo encaminhadas, mas o ssh estava usando o vagrantnome de usuário em vez do nome de usuário do host. Quando corrigi o nome de usuário, o tunelamento ssh começou a funcionar no Vagrant.

apennebaker
fonte
0

Você não diz se o túnel deve ser feito de host para convidado ou o contrário, e onde está B, e por que você não pode acessá-lo diretamente ...

Se você quiser criar um túnel de algumas das interfaces do host para o convidado, poderá usar o encaminhamento de porta interno do Vagrant . Ou apenas adicione um endereço de rede privado à VM.

Se você deseja obter um túnel do convidado através do host, use em ssh -Rvez do ssh -Lhost. Mas na maioria dos casos, você pode simplesmente se conectar ao destino diretamente da VM.

tmatilai
fonte