Isso não é exatamente o que você procura, e talvez eu pense em outra coisa além disso, mas isso é algo que você deveria saber.
encaminhamento de porta SSH
Você precisa ter um servidor SSH funcionando no Computador B. Então você pode fazer a partir do comp A
O SSH é como o telnet, mas com mais segurança e com recursos de encaminhamento de porta TCP. Você pode ignorar o aspecto telnet dele
ssh é uma ferramenta com a qual os administradores de sistemas estão familiarizados, mas também técnicos em geral.
Você pode instalar o ssh via cygwin no Windows.
A$ssh user@compB
digamos que você pode fazer isso.
A está por trás de um firewall. B está bem.
A ----------- B
Um pouco atrás de um firewall pode fazer uma conexão de saída
execute isso de A
A$ssh -R 1234:127.0.0.1:5678 -R 2345:127.0.0.1:5642 user@compB
que pode ser feito como um comando ou dividido em dois comandos separados
A$ssh -R 1234:127.0.0.1:5678 user@compB
e
A$ssh -R 2345:127.0.0.1:5642 user@compB
O -R 1234:127.0.0.1:5678
O -R significa porta aberta na composição de destino (compB) e uma conexão pode ser feita para CompB na porta 5678 e ele irá para a CompA e será encaminhado para a porta 1234 (ainda na CompA)
Então você pode querer fazer
-R 80: 127.0.0.1: 8080
O problema é que você quer algo com um ID e não tenho certeza sobre isso
O que posso dizer é que você pode abrir várias portas no CompB
não apenas a porta 80
porta 81, porta 82
e, portanto, a porta 81 na CompB pode encaminhar para a porta 1234 na CompA
a porta 82 na CompB pode encaminhar para a porta 4252 na CompA
e.t.c.
E você pode querer dizer -gR ou -R *: 80 .... 'cos sem o -g, a porta que se abre na CompB só permitirá uma conexão da CompB ou seja, ela só escutará em 127.0.0.1 então use -g no seu caso porque você quer que um cliente de outro computador [o computador 'phone'] se conecte a CompB .. ie o -g é porque você quer que um programa cliente de outro computador se conecte a CompB (e ser encaminhado para CompA), em vez de um programa cliente na CompB para se conectar à CompB (e ser encaminhado para CompA).
Um ponto embora Você conecta o ssh.exe de um comp atrás do firewall (CompA) para compB.
Uma porta é aberta no CompB ... para que uma nova conexão tcp seja contrabandeada. Seu http ou qualquer cliente se conecta a CompB, em seguida, atinge um CompA que você executou ssh.exe de. Você pode então encaminhar para qualquer comp que você quiser
Quando você escreve -R 1234: 127.0.0.1: 5678 Esse 127.0.0.1 pode ser alterado para ser outro computador. Para que o pedido do cliente seja encaminhado para algum outro computador
-R é o oposto de -L, embora você não precise de -L.
SSH -D
A coisa é ... pela aparência das coisas, seu destino final parece ser um servidor da Web.
Como você só quer encaminhar para um site específico, pode usar -R
Mas há também uma opção -D que você deve conhecer, que faz um proxy SOCKS que pode manipular HTTP
O ligeiro obstáculo é -D é local .. ou seja, é um pouco como -L nesse sentido.
Mas o que você poderia fazer é fazer o SOCKS Proxy na CompA,
E de A do ssh -R para compB. Então, qualquer um que se conecte a B será encaminhado para o proxy SOCKS em A e poderá acessar o servidor da web que quiser.
a resposta neste link tenta Túnel de meias reversas SSH , mas (a partir da escrita) , coloca o proxy de meias no computador errado. Esta resposta acerta. link
Mas você não está obtendo servidores da Web diferentes para pessoas diferentes.
Para isso, fique com -R
Combinar -R com -D pode ser desnecessário no seu caso, a menos que você realmente queira acessar outros sites, caso em que você precisa do proxy SOCKS (-D) e do -R
E de qualquer forma, nada disso envolve uma identificação ... mas portas diferentes com a porta determinando qual IP: PORT para encaminhar para uma vez que ele atinja o comp atrás do firewall [o comp] do qual você executou ssh.exe