Minha situação :
Eu (host local) -> Servidor A (ip: 100.100.100.100) => (servidor B (ip: 192.168.25.100), servidor ....)
Eu sou capaz de SSH no servidor, uma vez que tem um ip verdadeiro, se eu quiser conectar ao servidor b, eu ssh servidor b com ele é ip (192.168.25.100)
exemplo:
do meu pc:
ssh [email protected]
em 100.100.100.100,
ssh [email protected]
isso me levaria ao servidor B com ssh
e se eu quiser conectar-me ao servidor b diretamente? Como eu posso fazer isso?
exemplo:
do meu oc:
[email protected]
Eu tentei o seguinte:
ssh -L 22:localhost:22 [email protected]
sem sucesso
fonte
me% ssh [email protected]
; nós já não cobrimos isso? ou você quer dizer "e se eu quiser uma VPN completa para A?", caso em que minha resposta permanece.Você não precisa usar o encaminhamento de porta ssh para ssh em um computador interno por meio de um proxy. Você pode usar o recurso ssh de executar um comando no primeiro servidor ao qual você se conecta, a fim de ssh em um terceiro computador.
A
-t
opção força o ssh a alocar um pseudo-tty para que você possa executar um comando interativo.Isso também pode funcionar com as teclas ssh. Se você tiver sua chave pública e privada na máquina A e sua chave pública nos arquivos de chaves autorizadas nas máquinas B e C, poderá usar a
-A
opção para encaminhar a conexão do agente de autenticação.fonte
Eu usei uma solução diferente. Eu usei uma
ProxyCommand
opção (aqui em~/.ssh/config
):Isso não configura nenhum túnel de porta a porta; em vez disso, encapsula o ssh usando stdin / out padrão. Esse método tem uma desvantagem de que na verdade existem três conexões ssh para autenticar. Mas para se conectar ao host interno, basta digitar:
... para que você não precise se preocupar em escolher nenhum IP para esse túnel.
fonte
corkscrew
ounc
(netcat
), mas nenhum funciona tão perfeitamente quanto isso.de acordo com a página de manual do ssh, ProxyCommand é o método correto
a sintaxe é:
fonte
-W
opção existia quando esta pergunta foi respondida. Mas com as versões mais recentes do cliente ssh, concordo que a combinação deProxyCommand
e-W
é o método preferido. Talvez adicione algum contexto mostrando como ele pode ser usado na linha de comando, bem como um exemplo de uma seção para.ssh/config
.-W
comando e quais não? Um pouco de googling não deu respostas rapidamente para mim ...-W
foi introduzido com o OpenSSH 5.4, lançado em 2010. Portanto, a resposta é sim @kasperdA partir do OpenSSH 7.3 (final de 2016), a maneira mais fácil é a configuração do ProxyJump . No seu
~/.ssh/config
:Ou na linha de comando,,
-J B
.fonte