Переадресация портов OpenVPN-туннеля в локальную сеть с помощью IPtables на Debian

Переадресация портов OpenVPN-туннеля в локальную сеть с помощью IPtables на Debian

Я подключаю две машины Debian 9 x64 с помощью 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

Поэтому я хочувпередSamba и веб-серверкклиент LAN-IP192.168.162.157чтобы другие клиенты локальной сети в сети 192.168.162.x могли получить доступ к этим службам.

Я попытался определить правила NAT с помощью iptables на клиенте, используя всю информацию, которую нашел в интернете, но у меня ничего не получилось:

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

И веб-сервер, и Samba доступны, если я подключаюсь к 10.8.0.1 напрямую на клиенте, но не в локальной сети через 192.168.162.157.

Может ли кто-нибудь помочь мне с iptables? :)

решение1

Ваша проблема, вероятно, в обратном пути.

Знает ли сервер, что нужно направлять пакеты в вашу клиентскую подсеть через VPN-клиент? Если нет, вам также понадобится SNAT/маскарадинг (или соответствующая запись маршрутизации на сервере).

Тогда для вашего сервера пакеты будут исходить от вашего VPN-клиента и находить свой путь обратно.

Связанный контент