(Nota: Jakuje respondeu enquanto eu estava escrevendo minha resposta. É mais elaborado desde o começo, então estou postando mesmo assim.)
Se eu acertar você, tudo que você precisa é encaminhar uma porta local através do SSH. Eu suponho que você tenha acesso SSH a B .
Comando Linux para executar em A :
ssh -NL 2345:127.0.0.1:80 B
Agora, você pode se conectar à porta 2345 on A e deve ser equivalente à conexão com a 80 port em B do B em si.
Algumas observações:
-
-Nfaz com quesshnão execute um comando no lado remoto (B); perfeito para encaminhamento de porta. - O número
2345é arbitrariamente escolhido; pode ser qualquer número de1024a65535(a ligação a uma porta menor que1024requer acesso root normalmente). Se acontecer de você acertar a porta já ocupada, tente outro número. - O endereço
127.0.0.1que eu usei exige que o seu servidor web emBescute na interfaceloopback. Se ele escuta apenas em outros endereços, use-o. Esse endereço deve ser um endereço válido de seu servidor, conforme visto no sistemaB. Não importa o que este endereço significa paraAnem se significa algo em primeiro lugar. - Se você precisar que o computador
Cse conecte à porta2345encaminhada emA, convém familiarizar-se com a opçãossh -g. Leiaman ssh.