Encaminhando portas do túnel OpenVPN para LAN com IPtables no Debian

Encaminhando portas do túnel OpenVPN para LAN com IPtables no Debian

Estou conectando duas máquinas Debian 9 x64 com OpenVPN:

Server
(ens3 public-ip x.x.x.222)
tun0 10.8.0.1
-> Services:
   * Samba - udp137, udp138, tcp139, tcp445
   * Webserver - tcp80

Client
ens33 192.168.162.157
tun0 10.8.0.6

Então eu queroavançarSamba e servidor webparao cliente LAN-IP192.168.162.157que outros clientes LAN em 192.168.162.x possam acessar esses serviços.

Tentei definir regras NAT com iptables no cliente com todas as informações que encontrei na internet, mas não tive sucesso:

sysctl -w net.ipv4.ip_forward=1

iptables -t nat -A PREROUTING -i ens33 -p udp --dport 137 -j DNAT --to 10.8.0.1:137
iptables -t nat -A PREROUTING -i ens33 -p udp --dport 138 -j DNAT --to 10.8.0.1:138
iptables -t nat -A PREROUTING -i ens33 -p tcp --dport 139 -j DNAT --to 10.8.0.1:139
iptables -t nat -A PREROUTING -i ens33 -p tcp --dport 445 -j DNAT --to 10.8.0.1:445

iptables -A FORWARD -i ens33 -p udp --dport 137 -d 10.8.0.1 -j ACCEPT
iptables -A FORWARD -i ens33 -p udp --dport 138 -d 10.8.0.1 -j ACCEPT
iptables -A FORWARD -i ens33 -p tcp --dport 139 -d 10.8.0.1 -j ACCEPT
iptables -A FORWARD -i ens33 -p tcp --dport 445 -d 10.8.0.1 -j ACCEPT

iptables -t nat -A PREROUTING -i ens33 -p tcp --dport 80 -j DNAT --to 10.8.0.1:80
iptables -A FORWARD -i ens33 -p udp --dport 80 -d 10.8.0.1 -j ACCEPT

Ambos, Webserver e Samba são acessíveis se eu conectar em 10.8.0.1 diretamente no cliente, mas não na LAN através de 192.168.162.157.

Alguém pode me ajudar com o iptables? :)

Responder1

Seu problema provavelmente é o caminho de volta.

O servidor sabe como rotear pacotes para a sub-rede do cliente por meio do cliente VPN? Caso contrário, você também precisará de SNAT/mascaramento (ou de uma entrada de roteamento correspondente no servidor).

Então, para o seu servidor, os pacotes se originariam do seu cliente VPN e encontrariam o caminho de volta.

informação relacionada