Ищу несколько ответов;)
Я запускаю Zentyal на шлюзе. Шлюз также является клиентом OpenVPN для сервера, который у меня запущен из другой страны. Таким образом, интерфейсы:
Внешний: eth1 (dhcp от модема 192.168.1.2) Внутренний: eth0 (статический 10.1.1.1) OpenVPN: tun0 (с сервера OpenVPN 10.7.0.6)
Я подключил VPN, и он работает. Я могу пинговать сервер через
# ping 10.7.0.1
От шлюзовой машины.
Это правила, которые у меня есть на сервере, пока они работают нормально
iptables -t nat -A POSTROUTING -i tun0 -o eth0 -j SNAT --to-source # Generated by iptables-save v1.4.8 on Sat Mar 23 04:41:56 2013
*mangle
:PREROUTING ACCEPT [2036011512:705237252333]
:INPUT ACCEPT [332186284:78285843071]
:FORWARD ACCEPT [1703824348:626951360931]
:OUTPUT ACCEPT [405392399:436227187419]
:POSTROUTING ACCEPT [2109216747:1063178548350]
COMMIT
# Completed on Sat Mar 23 04:41:56 2013
# Generated by iptables-save v1.4.8 on Sat Mar 23 04:41:56 2013
*filter
:INPUT ACCEPT [332186284:78285843071]
:FORWARD ACCEPT [1019886723:183138161264]
:OUTPUT ACCEPT [405392397:436227186606]
-A FORWARD -i tun0 -o eth0 -j ACCEPT
-A FORWARD -i eth0 -o tun0 -j ACCEPT
COMMIT
# Completed on Sat Mar 23 04:41:56 2013
# Generated by iptables-save v1.4.8 on Sat Mar 23 04:41:56 2013
*nat
:PREROUTING ACCEPT [12528325:854813836]
:POSTROUTING ACCEPT [2920518:161107345]
:OUTPUT ACCEPT [882245:53661537]
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
# Completed on Sat Mar 23 04:41:56 2013
Я не верю, что проблема связана с сервером, так как он работал раньше по тем же правилам. Кроме того, если я подключаюсь напрямую к одному компьютеру, кажется, что он отлично работает через NetworkManager.
Вот конфиг моего клиента OpenVPN:
client
dev tun
proto udp
remote <server IP> 1194
resolv-retry infinite
redirect-gateway def1
nobind
user nobody
group nogroup
persist-key
persist-tun
ca /etc/openvpn/ca.crt
cert /etc/openvpn/client_home.crt
key /etc/openvpn/client_home.key
script-security 3
ns-cert-type server
comp-lzo
verb 3
mute 20
cipher AES-256-CBC
keysize 256
Итак, теперь я хочу направить всю локальную сеть (с eth0 10.1.1.1/32) через tun0 (openvpn 10.7.0.6). Я не могу заставить tun0 отображаться в Zenyal, поэтому я не могу установить его как шлюз по умолчанию и т. Д.
Может ли кто-нибудь помочь мне написать набор правил iptables для шлюза, чтобы все данные передавались через соединение OpenVPN?
Спасибо, я надеюсь, что смогу разобраться. Знаете, вся эта проблема конфиденциальности начинает нас всех немного пугать;)