Pro další se předpokládá, že na vzdáleném serveru, který zajišťuje VPN spojení, běží na portu 1194 OpenVPN daemon v módu server. Adresní rozsah VPN je nastaven na 10.8.0.0/16. Vnitřní IP v domácí LAN je v rozsahu 192.168.x.x/24
Dalším předpokladem jsou nainstalované veškeré balíčky z prvního dílu
Konfigurace OpenVPN a firewallu
Vlastní konfigurace OpenVPN klienta, včetně všech klíčů a certifikátů, je uložena v samostatném souboru ve vlastním adresáři. Takovéto rozdělení navíc umožňuje přehlednější konfiguraci i v případě, kdy je nutno připojit ASUS do několika různých VPN.
Nastavení firewallu - povolit OpenVPN. Jde řešit i editací /etc/config/firewall s patřičným formátem pravidel
nano /etc/firewall.user
Na konec souboru přidat
iptables -t nat -A prerouting_wan -p udp --dport 1194 -j ACCEPT
iptables -A input_wan -p udp --dport 1194 -j ACCEPT
iptables -I INPUT -i tun+ -j ACCEPT
iptables -I FORWARD -i tun+ -j ACCEPT
iptables -I OUTPUT -o tun+ -j ACCEPT
iptables -I FORWARD -o tun+ -j ACCEPT
iptables -A FORWARD -i tun+ -j ACCEPT
iptables -A FORWARD -o tun+ -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.8.0.0/16 -o br-lan -j MASQUERADE
iptables -t nat -A POSTROUTING -s 10.8.0.0/16 -o eth0.0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.x.x/24 -o tun0 -j MASQUERADE // Změnit SUBNET na vlastní, nastavený v 1.díle !!!!!!!!
/etc/init.d/firewall restart
Konfigurace OpenVPN
- Příprava adresářů, vytvoření konfig souboru
cd /etc/openvpn mkdir VPNserverNAME // CHANGE TO YOUR SERVER NAME cd /etc/openvpn/VPNserverNAME nano /etc/openvpn/VPNserverNAME/myconfig.conf client dev tun proto udp remote x.x.x.x 1194 // IP ADRESA VPN SERVERU resolv-retry infinite nobind persist-key persist-tun ca /etc/openvpn/VPNserverNAME/ca.crt cert /etc/openvpn/VPNserverNAME/client.crt key /etc/openvpn/VPNserverNAME/client.key tls-auth /etc/openvpn/VPNserverNAME/ta.key 1 ns-cert-type server cipher BF-CBC cipher AES-128-CBC cipher DES-EDE3-CBC comp-lzo mssfix 1450 explicit-exit-notify 2 keepalive 10 60 verb 3 log /tmp/openvpn.log
- Do adresáře /etc/openvpn/VPNserverNAME dále nahrát (přes SCP) klíče a certifikáty
2 -rw-r--r-- 1 root root 1541 Feb 14 21:54 ca.crt 4 -rw-r--r-- 1 root root 3722 Mar 14 11:35 myconfig.conf 5 -rw-r--r-- 1 root root 4842 Feb 14 22:24 client.crt 2 -rw-r--r-- 1 root root 1675 Feb 14 22:24 client.key 1 -rw-r--r-- 1 root root 636 Feb 14 21:57 ta.key
- Upravit defaultní config OpenVPN tak, aby respektoval konfiguraci v myconfig.conf.
nano /etc/config/openvpn config 'openvpn' 'custom_config' option 'enable' '1' option 'config' '/etc/openvpn/VPNserverNAME/myconfig.conf'
- Upravit init script - před startem služby nastavit systémové datum na ASUSu na začátek platnosti certifikátu !!! Viz článek blogu OpenVPN klient na ASUS WL-500gP V2 - Chyba certifikátu
- Povolit automatické spuštění OpenVPN po restartu, spustit, otestovat
/etc/init.d/openvpn enable /etc/init.d/openvpn start ping 10.8.0.1
- Pokud je vše v pořádku zrušit logování, v opačném případě kouknout do logu, opravit překlepy, UTFG, ...
nano /etc/openvpn/VPNserverNAME/myconfig.conf ... verb 0 #log /tmp/openvpn.log ... /etc/init.d/openvpn restart
Odkazy:
OpenVPN je funkční. V tuto chvíli je již možno se připojovat na jednotlivé PC v rámci vzdálených LAN. Rovněž je možný, po nakonfigurováni SNMP, monitoring domácího ASUSU pře Nagios apod.