Encaminhamento de porta para o cliente VPN

2

Eu encontrei um problema que parece que não consigo resolver. Eu tenho um servidor VPN em um VPS. Eu posso conectar com meu PC cliente (lan em casa). Funciona como deveria. Eu recebo o endereço IP do VPS no PC cliente.

No entanto, eu gostaria de poder conectar-me através da VPN ao PC cliente usando uma porta específica. Eu tenho um servidor MineCraft e gostaria de poder me conectar ao servidor MC através da VPN.

Eu habilitei o encaminhamento de IP:

sysctl -w net.ipv4.ip_forward=1

Tentou encaminhar a porta específica:

iptables -t nat -A PREROUTING -d 50.x.x.x -p tcp --dport 25565 -j DNAT --to-dest 10.98.0.2:25565

50.x.x.x é o meu endereço IP público de VPN. 10.98.0.2 é o endereço IP local (tun0) do cliente.

Por alguma razão, não está funcionando. tcpdump port 25565 mostra isso no servidor VPN quando tento me conectar ao cliente:

20:49:58.345498 IP MyInternetPublicIP.62336 > VPNPublicIP.25565: Flags [S], seq 2320085851, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
20:50:01.344059 IP MyInternetPublicIP.62336 > VPNPublicIP.25565: Flags [S], seq 2320085851, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
20:50:07.342439 IP MyInternetPublicIP.62336 > VPNPublicIP.25565: Flags [S], seq 2320085851, win 8192, options [mss 1460,nop,nop,sackOK], length 0

No lado do cliente, nada aparece. Tenho certeza que estou sentindo falta de algo, só não sei o quê.

    
por Doctor Who 19.03.2018 / 21:59

1 resposta

1

Você precisa permitir o encaminhamento na tabela de filtros (na cadeia FORWARD ou em uma cadeia chamada de lá) com algo assim:

iptables -I FORWARD 1 -d 10.98.0.2 -p tcp --dport 25565 -j ACCEPT

Sem configuração especial no lado do cliente, que garante que os pacotes de resposta sejam enviados através da VPN, você também precisa configurar o SNAT:

iptables -t nat -A POSTROUTING -m conntrack --ctstate DNAT -d 10.98.0.2 -p tcp --dport 25565 -j SNAT --to-source 10.98.0.1

Assumindo que 10.98.0.1 é o endereço VPN do VPS.

    
por 19.03.2018 / 22:53