Alanis Morissette, Not As We
http://www.youtube.com/watch?v=1pOjcAiMZO4 Reborn and shivering Settled on new terrain Unsure, unkind, insane It's faint and shaken Day one, day one Start over again Step one, step one I'm barely making sense...
Home Page
Dokument opisuje uruchomienie kanału VPN na routerze z oprogramowaniem OpenWRT.
Oryginał tego dokumentu znajduje się pod adresem
http://www.cieplucha.net/openvpn.html
1. Instalacja po stronie serwera
Zaczynamy od zainstalowania pakietu openvpn na routerze
ipkg install openvpn
Następnie tworzymy katalog oraz generujemy nasz klucz
mkdir /etc/openvpn openvpn --genkey --secret /etc/openvpn/shared.key
Ładujemy odpowiedni moduł oraz ustawiamy automatyczne ładowanie tego modułu podczas startu routera
insmod tun echo "tun" » /etc/modules
Plik konfiguracyjny openvpn na routerze
/etc/openvpn/server.vpn
dev tun0 ifconfig 192.168.1.2 192.168.1.3 secret /etc/openvpn/shared.key port 1194 ping 15 ping-restart 45 ping-timer-rem persist-key persist-tun verb 3
Tworzymy skrypt startowy oraz nadajemy mu odpowienie prawa.
/etc/init.d/S50openvpn
#!/bin/sh openvpn --daemon --config /etc/openvpn/server.vpn #koniec chmod a+x /etc/init.d/S50openvpn
Dopisujemy odpowiednią regułę do firewalla
/etc/firewall.user
iptables -A FORWARD -i tun0 -o vlan0 -j ACCEPT
2. Intalacja po stronie klienta
Kopiujemy z serwera plik shared.key do katalogu /etc/openvpn
Plik konfiguracyjny po stronie klienta
/etc/openvpn/client.vpn
dev tun remote 192.168.1.1 1194 ifconfig 192.168.1.3 192.168.1.2 secret /etc/openvpn/shared.key port 1194 route-gateway 192.168.1.2 route 0.0.0.0 0.0.0.0 redirect-gateway ping 15 ping-restart 45 ping-timer-rem persist-tun persist-key verb 3
Ładujemy odpowiedni moduł
modprobe tun
Kanał VPN uruchamiamy poleceniem:
openvpn --daemon --config /etc/openvpn/client.vpn
Po chwili powinien zostać zestawiony kanał vpn. Możemy sprawdzić to poleceniem ifconfig po stronie routera oraz klienta.
Router
tap0 Link encap:Ethernet HWaddr 00:FF:FE:44:33:22 UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:31742 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:192.168.1.2 P-t-P:192.168.1.3 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1 RX packets:393913 errors:0 dropped:0 overruns:0 frame:0 TX packets:603489 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:25233071 (1.0 MiB) TX bytes:825852835 (787.5 MiB)
Klient
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:192.168.1.3 P-t-P:192.168.1.2 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1 RX packets:8608 errors:0 dropped:0 overruns:0 frame:0 TX packets:7275 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:9336688 (1.0 Mb) TX bytes:872214 (851.7 Kb)
Tablica routingu
route -n
Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.1.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo 0.0.0.0 192.168.1.2 0.0.0.0 UG 0 0 0 tun0
Jak widać zmieniła się domyślna brama. Obecnie domyślna bramą jest adres naszego kanału vpn.