Я ломаю голову над следующим, и я надеюсь, что вы, ребята, можете мне помочь.
Я пытаюсь настроить сервер OpenVPN в дистрибутиве Raspbian. Поскольку я также использую этот сервер в качестве DNS-сервера в нескольких vLAN, я создал несколько vNIC с тегами VLAN и т. д. Какое-то время все работает нормально.
Но теперь мне нужен дополнительный vLAN только для моего трафика OpenVPN. Итак, вот что я сделал:
- Я добавил дополнительный vNIC (eth0.110) и дал ему IP (скажем, 10.0.110.10)
- разрешить OpenVPN прослушивать этот адрес
- сделал FULLNAT на моем брандмауэре; этот локальный IP из источника; IP интерфейса межсетевого экрана (10.0.110.254)
- Примечание: брандмауэр действует как шлюз для каждой vLAN.
Я так далеко, что мой VPN-клиент может подключаться к серверу OpenVPN через Интернет и может пинговать устройства в .110 vLAN.
Проблема в том, что я не могу найти способ получить доступ к внутренним службам в других vLAN, кроме 110.
- Я пробовал много правил iptables, также с политикой по умолчанию ACCEPT.
- Я попробовал несколько статических маршрутов на сервере OpenVPN.
- Я проталкиваю маршруты через конфиг сервера OpenVPN, которые создаются на клиенте Windows
- Я пробовал разные подсети пула IP для VPN-клиентов (в настоящее время 10.0.24.0/24).
Текущие статические маршруты:
default 10.0.10.1 0.0.0.0 UG 0 0 0 eth0
10.0.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0.1
10.0.10.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
10.0.15.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0.15
10.0.24.0 10.0.24.2 255.255.255.0 UG 0 0 0 tun0
10.0.24.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
10.0.110.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0.110
Текущие iptables:
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destination
1 4199 627K ACCEPT all -- eth0.110 * 0.0.0.0/0 0.0.0.0/0 state NEW,RELATED,ESTABLISHED
2 834 50184 ACCEPT all -- tun+ * 0.0.0.0/0 0.0.0.0/0 state NEW,RELATED,ESTABLISHED
3 0 0 ACCEPT all -- tun+ * 0.0.0.0/0 0.0.0.0/0
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destination
1 1906 136K ACCEPT all -- tun+ * 0.0.0.0/0 0.0.0.0/0
2 0 0 ACCEPT all -- tun+ eth0.110 0.0.0.0/0 0.0.0.0/0 state NEW,RELATED,ESTABLISHED
3 3 180 ACCEPT all -- eth0.110 tun+ 0.0.0.0/0 0.0.0.0/0 state NEW,RELATED,ESTABLISHED
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
None
Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes)
None
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
None
Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
1 60 MASQUERADE all -- any eth0.110 10.0.24.0/24 anywhere
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
None
Короче говоря. Я хотел бы направить свой VPN-трафик через vNIC, предназначенный для VPN-трафика (VLAN 110) (похоже, теперь это работает). Затем я хочу, чтобы мой брандмауэр обрабатывал маршрутизацию между подсетями. Я создал правила как для пула IP-адресов VPN, так и для .110 vLAN, но что-то работает неправильно, так как я все еще не могу получить доступ к этим службам. Возможно ли то, что я пытаюсь сделать, или мне нужно выполнить маршрутизацию с помощью iptables на сервере OpenVPN?
Я надеюсь, что любой из вас может подтолкнуть меня в правильном направлении, заранее спасибо! 🙂
Изменить: также я сделал возможной переадресацию IPv4, чтобы установить значение «1».
Трендхоппер
