Tenho 3 máquinas conectadas em cadeia, A, B, C.
A-->B-->C
A é minha máquina, B é o servidor e C é outra máquina com alguns serviços e servidor web. Devido a alguns problemas, preciso acessar de A ao servidor web em C (porta 80), posso usar ssh para fazer login de A para B e depois de B para C, mas o console neste momento é muito menor. Preciso de um navegador da web e usar a opção ssh com -X
não funcionou (alguns problemas com o dbus no início do Firefox).
Eu faço o encaminhamento de porta em B usando o comando clássico para encaminhar a porta 22 para ssh:
ssh -L 2222:localhostB:22 user@ipC
mas usar o mesmo para encaminhar a porta 80 não funcionou:
ssh -L 8888:localhostB:80 user@ipC
Sei que existe algum outro encaminhamento para fazer funcionar, mas não entendi como e o quê.
Eu preciso de algo assim:
A --> B (frd from B:8888 to C:80) --> C (port 80 web server)
então como efeito quando eu digitar ipB:8888 serei encaminhado para C:80.
Qualquer ajuda como explicar o que deve ser feito ou scripts com comando será apreciada. Percebi em um blog que deve ser feito duas vezes ssh -L
o encaminhamento feito, mas não entendi o porquê.
Responder1
Você está no caminho certo.
Com um:
ssh -L 8888:ipC:80 user@ipB -N
Tornará o servidor web em C acessível via localhost:8888 em A
Um pouco mais de detalhes a pedido dos OPs:
Presumi pela sua pergunta que você deseja acessar o servidor web de C em A (suponho que você tenha um ambiente GUI em A, com um navegador web).
Você não pode acessar C diretamente (por qualquer motivo), mas pode acessar B, que por sua vez pode acessar C. Portanto, criamos um túnel entre A e B, pedindo a B para anexar sua extremidade do túnel ao servidor web em C.