Eu tenho duas máquinas A e B que estão em sub-redes diferentes, ambas atrás de firewalls separados. A máquina A pode ver B, mas B não pode ver A. Eu tenho uma conta de usuário (não root) em ambas as máquinas, posso SSH B de A e gostaria de poder SSH A de B , mas isso não pode ser feito diretamente.
Eu usei o tunelamento para passar por servidores intermediários com SSH, mas o que estou pedindo é diferente aqui e não sei como seria chamado. Existe uma maneira de abrir uma conexão de A para B, que por sua vez poderia ser usada "ao contrário" da máquina B para executar comandos em A?
A resposta curta é sim, você pode, o como é:
Então
B
você podessh
comA
:Isso diz o seguinte:
Ao
A
criar um túnel no lado remoto (-R
), de modo que qualquer tráfego que vá para localhost (127.0.0.1
) na porta2222
retorne pelo túnel e seja enviado para127.0.0.1
a porta localhost (agora no lado local)22
O
B
comando simplesmente diz,ssh
para a porta localhost,2222
que é a entrada do túnel.