OpenVPN mit Kamikaze

Aus Freifunk Hannover

Diese Schritt-für-Schritt Anleitung beschreibt, wie man einen La Fonera Router per OpenVPN mit dem Freifunk Hannover verbinden kann kann.

Inhaltsverzeichnis

Vorbereitungen

Um mit uns Verbindung aufzunehmen brauchst Du 3 Dateien. Dein Routerzertifikat, die Zertifikatswiederrufsliste und deine Konfigurationsdatei. Diese kannst Du bei einem Freifunk Treffen bekommen oder verschlüsselt per Mail.

Installation

Wir installieren mit Hilfe von IPKG zunächst die Pakete openvpn und ntpclient. Der Rest wird automatisch nachinstalliert.

Konfiguration

Besonder wichtig ist hier der Zeitabgleich. Zunächst muß die Zeitzone mit

echo "CET-1CEST-2,M3.5.0/02:00:00,M10.5.0/03:00:00" > /etc/TZ

gesetzt werden. Danach sollte man für einen Zeitabgleich mit hilfe von

ntpclient -h time.fu-berlin.de -s

sorgen. Zur Kontrolle "date" eingeben.

Jetzt müssen dei Zertifikate auf den Router kopiert werden. Da wir nur einen SSH Zugang haben geht das am besten mit scp oder wenn ihr Windows benutzt mit dem Programm WinSCP http://sourceforge.net/projects/winscp/ Wir legen uns ein Konfigurationsverzeichnis mit

mkdir /etc/openvpn

an und kopieren dort hinein alle Zertifikate die wir bei der Zertifikatsanforderung bekommen haben.

Nun erstellen wir eine Konfigurationsdatei mit

vi /etc/openvpn/freifunk.conf

mit folgendem Inhalt:

remote vpn.freifunk-hannover.de
tls-client
dev tap
proto udp
port 1194
ca /etc/openvpn/ca.crt
cert /etc/openvpn/<Node-XYZ>.crt
key /etc/openvpn/<Node-XYZ>.key
ns-cert-type server
tun-mtu 1500
mssfix
nobind      
pull

(Drücke :wq zum Speichern und beenden.)

Firewall anpassen

Damit eine Kommunikation durch den Tunnel möglich ist, muss die Firewall der Freifunk Firmware erweitert werden.

vi /etc/firewall.user

Folgendes muss man hinten dazufügen:

# VPN Regeln
TAPDEV=tap0
# Allow all traffic through the tunnel
iptables -I OUTPUT -o $TAPDEV -j ACCEPT
iptables -I INPUT -i $TAPDEV -j ACCEPT
iptables -I FORWARD -o $TAPDEV -j ACCEPT
iptables -I FORWARD -i $TAPDEV -j ACCEPT

# Masquerade LAN traffic through the tunnel
iptables -t nat -A POSTROUTING -o $TAPDEV -s 10.2.0.0/16 -j MASQUERADE
iptables -I FORWARD -i ATH0 -o $TAPDEV -j ACCEPT
iptables -I FORWARD -i $TAPDEV -o ATH0 -j ACCEPT

Test

Auf der Shell

openvpn --config /etc/openvpn/freifunk.conf

ausführen und die Ausgabe beobachten. Ist die Verbindung hergestellt eine zweite Shell aufmachen und mit ifconfig kontrollieren ob ein tap interface mit einer IP Adresse 10.2.255.x erzeugt wurde. Danach das VPN Gatway 10.2.255.1 anpingen.

Startscripte

Mit

vi /etc/rc.d/S65openvpn

erzeugen wir ein Startscript in das wir folgendes eintragen:

#!/bin/sh
openvpn --config /etc/openvpn/freifunk.conf

abspeichern mit escape :wq Ausführbar machen mit

chmod +x S65openvpn

Fehlersuche

...