ZAN Roadwarrior Konfiguration

Aus Ethersex_Wiki
Wechseln zu: Navigation, Suche

Einsatzgebiet

Auf Laptops/PDA/Einzelrechnern bietet sich die Konfiguration von OpenVPN als ZAN Roadwarrior an.

Hier hat sich folgende Konfiguration als Ausgangsbasis bewährt:

Hinweis: neben dem openvpn-Paket muss auch noch resolvconf installiert sein, sonst funktioniert das automatische Update der resolv.conf nicht!

proto udp
remote 176.9.120.149 4444
resolv-retry infinite
nobind
dev tap
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/vpn-travelling-stesie.crt
key /etc/openvpn/keys/vpn-travelling-stesie.nopass.key
port 4444
comp-lzo
persist-tun
persist-key
verb 3
float
tun-mtu 1500
fragment 1300
mssfix
keepalive 10 120
redirect-gateway

# statische ip konfiguration:
ifconfig 192.168.99.2 255.255.0.0
#Die folgende Zeile bitte nur entkommentieren wenn der ganze Traffic durch das ZAN soll!
#route-gateway 192.168.97.1

#automatisches resolv.conf update
script-security 2
dhcp-option DNS 192.168.97.1
dhcp-option DOMAIN zo
up /etc/openvpn/update-resolv-conf # Achtung, auf n900 mit Jochens Spezial-Script: up /etc/openvpn/maemo-update-resolv-conf
down /etc/openvpn/update-resolv-conf # Achtung, auf n900 mit Jochens Spezial-Script: down /etc/openvpn/maemo-update-resolv-conf
#Alles weitere hier: https://www.zerties.org/index.php/Voip_over_zan
 
# das fuer openvpn 2.1 aktivieren:
tls-client

# das fuer openvpn 2.0 verwenden:
#tls-remote spielplatz.metafnord.de 

... obiges konfiguriert eine statische IP-Adresse. Alternativ kann der IP/Routing-Part auch weg gelassen werden und via DHCP eine IP bezogen werden. Das hat aber den Nachteil, dass man sich um's Routing selbst kuemmern muss.

Gestartet wird das Ganze dann als root mit dem Befehl

openvpn --config /etc/openvpn/$configfile

Automatischer Start

Falls nicht anders konfiguriert startet das script /etc/init.d/openvpn beim Systemstart alle Tunnels, die durch filenamen mit der Endung .conf in /etc/openvpn hinterlegt sind.

Ausnahmen definieren

Sollen Pakete in ein anderes lokales Subnetz und nicht über den openvpn-Tunnel, so legt man im Script /etc/openvpn/update-resolv-conf noch jeweils am Ende von des up)- und down)-Zweiges folgende Zeilen an:

up)
        for optionname in ${!foreign_option_*} ; do
                option="${!optionname}"
              
                [...]

        echo -n "$R" | /sbin/resolvconf -a "${dev}.inet"
        #for openvpn-WLAN via Fritzbox- do not route packets for 192.168.87.0/24 via ZAN
        /bin/ip r a 192.168.87.0/24 via 192.168.1.254
        ;;

Das /bin/ip r a 192.168.87.0/24 via 192.168.1.254 bewirkt hier im Beispiel, dass alle Pakete für das 87er-Subnetz nicht über das ZAN sondern über das lokale Gateway (hier eine Fritzbox) laufen.

down)
        /sbin/resolvconf -d "${dev}.inet"
        #remove route for 192.168.87.0/24-packets
        /bin/ip r d 192.168.87.0/24 via 192.168.1.254
        ;;
esac

Der Ordnung halber nehmen wir die Route beim Abbau des Tunnels wieder heraus (:wink:)