Мне трудно установить правильный iptable для маршрутизации трафика OpenVPN на мой внутренний клиент OpenVPN.
Моя сеть похожа на эту
+ --------- ---------------- + (публичный IP) | | {ИНТЕРНЕТ} ============ {Маршрутизатор eth1 | | | | eth2 | + ------------ + ------------ + | (192.168.0.254) | | + ----------------------- + | | | | | OpenVPN | eth0: 192.168.0.1/24 + -------------- {eth0 server | tun0: 10.8.0.1/24 | | | | | {tun0} | | + ----------------------- + | + -------- + ----------- + | | | Другие клиенты LAN | | | | 192.168.0.0/24 | | (внутренняя сеть) | + -------------------- +
По сути, я хочу принимать порт и пересылать трафик VPN от маршрутизатора к внутреннему устройству OpenVPN. Затем я хочу, чтобы коробка OpenVPN принимала трафик с порта eth и отправляла его в tun.
Вот что я пробовал:
iptable на маршрутизаторе:
$ iptables -A INPUT -i tun + -j ACCEPT $ iptables -A FORWARD -i tun + -j ACCEPT
# Разрешить udp 1194 # iptables -A INPUT -p udp --dport 1194 -j ACCEPT
# Разрешить трафик, инициированный из VPN, для доступа к LAN iptables -I FORWARD -i tun0 -o eth2 \ -s 10.8.0.0/24 -d 192.168.0.0/24 \ -m conntrack --ctstate НОВОЕ -j ACCEPT
iptables -I FORWARD -m conntrack --ctstate RELATED,ESTABLISHED \
-j ACCEPT
iptables -t nat -I POSTROUTING -o eth0 \
-s 10.8.0.0/24 -j MASQUERADE
iptable на OpenVPN
Кто-нибудь может дать мне указатель, как я могу решить эту проблему?
Если мое предположение верно, вы пытаетесь использовать диапазон 10./8
своего VPN из-за пределов общедоступной сети. Это не сработает, поскольку вы можете направлять трафик только через свой общедоступный IP-адрес извне и только в диапазоне 192.168./16
внутри вашей сети.
Один ключевой элемент: ваш VPN сервер - это обычное приложение внутри вашей сети, доступное через сетевой интерфейс 192.168.0.1/24
. Клиенты, которые хотят подключиться к вашей VPN извне, должны сделать это через общедоступный IP-адрес и через порт, который перенаправляется с вашего маршрутизатора на ваше приложение VPN.
Ваш маршрутизатор не знает о туннеле
и диапазон адресов VPN 10./8
. Оба они обрабатываются в поле OpenVPN. Зашифрованный трафик инкапсулируется внутри IP-пакетов с использованием частной сети 192.168./16
, получая NAT на маршрутизаторе.