ip forwarding para conectar-se remotamente a um soquete ouvindo apenas o host local?

2

Devo transferir dados do PC1 para o PC2 usando uma porta específica, mas o soquete aberto no PC2 apenas escuta o host local. Existe uma maneira de "enganar" o soquete para aceitar a conexão do PC1?

    
por Andrew Mpy 19.09.2014 / 22:51

2 respostas

1

Você pode usar ssh com o encaminhamento de porta.

Por exemplo,

ssh <remotehost> -L 1234:<target>:5678

este comando conecta você ao remotehost e conecta sua porta local 1234 à porta remota 5678 no servidor chamado <target> .

No seu caso, <target> seria localhost à medida que você se conecta diretamente ao host de destino.

    
por 19.09.2014 / 23:03
0

Se o seu aplicativo se vincular ao host local, a única maneira de encaminhar essa porta é para o NAT suas solicitações para sua interface de loopback. Portanto, você é capaz de conseguir isso fazendo o seguinte:

Adicione o iptables roule:

iptables -t nat -A PREROUTING -p tcp --dport 1234 -j DNAT --to 127.0.0.1:5678

Agora, todas as solicitações feitas na porta 1234 na máquina de destino serão encaminhadas para 127.0.0.1:5678.

Então não esqueça de fazer o seguinte:

Ativar encaminhamento de IP:

echo 1 /proc/sys/net/ipv4/ip_forward

Ativar localnet de rota:

echo 1 /proc/sys/net/ipv4/conf/eth0/route_localnet
    
por 17.01.2017 / 13:18

Tags