Raspberry Pi als VPN Router

By | 30. Juli 2017

Wenn Sie auf Videoquellen oder auch TV Live Übertragungen aus dem Ausland oder im Ausland zugreifen möchten, stoßen Sie immer wieder auf Sperren. Mit einem Raspberry Pi VPN Router können Sie diese Sperren einfach umgehen. Natürlich schützt VPN dazu auch noch Ihre Privatsphäre. VPN bedeutet, dass eine private also gesicherte Verbindung zwischen zwei Geräten über das Internet erstellt. Konkret wird dabei zwischen Geräten (PC, Router, Smartphone usw.) und einem VPN-Server eines Anbieters eine verschlüsselte Datenverbindung erstellt, sämtliche Daten die darüber geführt werden sind für Dritte nicht mehr einsehbar. Zusätzlich bekommen Sie vom VPN-Server eine neue IP-Adresse zugewiesen und neuen anonymen Identität. Idee war mit Raspberry Pi ein VPN Router mit WLAN Access Point zu realisieren. Wenn Sie Geräte mit 5 GHz WLAN (FireTV, Apple TV, etc.) benutzen dann ist vielleicht WLAN Raspberry Stick mit 5 GHz eine bessere Wahl, weil in diesem Bereich ist weniger Kollisionen zu erwarten.
Was alles wird gebraucht.?

  • Raspberry Pi 2 oder 3
  • Netzteil
  • USB WLAN Stick 2,4 oder 5 GHz – Geeignete Hardware liste finden Sie hier

Als Betriebsystem ist Raspbian Jessie Lite installiert. Eine entsprechende Anleitung findet man hier. Als WLAN-USB-Adapter nutze ich den  TL-WN823N. Der Chipsatz wird von Raspbian Jessie automatisch erkannt. Es sind keine zusätzlichen Treiber erforderlich.

Installation von Zusatzpaketen:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install hostapd udhcpd bind9 openvpn

Die Ethernet Schnittstelle bzw. LAN Port wird automatisch als eth0 erkannt. So kann LAN Port eine IP-Adresse vom lokalen Router per DHCP beziehen. Der USB WLAN Stick wird als wlan0 erkannt. Um eine statische IP-Adresse zu vergeben ergänzen wir folgendes:

sudo nano /etc/network/interfaces
↓**** tragen wir ein: ****↓
auto wlan0
iface wlan0 inet static
address 172.31.1.1
netmask 255.255.255.0

Jetzt müssen wir DHCP Server einrichten:

sudo nano /etc/udhcpd.conf
↓**** tragen wir ein: ****↓
start 172.31.1.2
end 172.31.1.254
interface wlan0
remaining yes
opt dns 172.31.1.1
option subnet 255.255.255.0
opt router 172.31.1.1
option lease 604800 # 7 Tage

DHCP Daemon noch einschalten:

sudo nano /etc/default/udhcpd
↓**** tragen wir ein: ****↓
DHCPD_ENABLED=“yes“

WLAN Access Point einrichten:

sudo nano /etc/hostapd/hostapd.conf
↓**** tragen wir ein: ****↓
interface=wlan0
ssid=Acces Point Name
hw_mode=g
channel=8
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=Acces Point Password
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

Danach wird Access Point erzeugt mit:

sudo nano /etc/default/hostapd
↓**** tragen wir ein: ****↓
DAEMON_CONF=“/etc/hostapd/hostapd.conf“

Jetzt müssen wir die Dienste neu starten und automatisieren dass auch nach einem Neustart von Raspberry Pi automatisch starten.

sudo service hostapd start
sudo service udhcpd start
sudo update-rc.d hostapd enable
sudo update-rc.d udhcpd enable

Domain Name Server DNS einrichten:

sudo nano /etc/bind/named.conf.options
↓**** tragen wir ein: ****↓
forwarders {
208.67.222.222;
208.67.220.220;
};

Starten wir den Dienst neu und richten den automatischen Start nach dem Reboot ein.

sudo service bind9 restart
sudo update-rc.d bind9 enable

NAT und VPN Router aktivieren:

sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
sudo nano /etc/sysctl.conf
↓**** tragen wir ein: ****↓
net.ipv4.ip_forward=1

Für die Einrichtung des VPN Dienstes muss ein Provider gefunden werden, zum Beispiel IpVanish.
IpVanish am Raspberry Pi einrichten:

cd /etc/openvpn
sudo wget http://www.ipvanish.com/software/configs/ca.ipvanish.com.crt

Hier finden Sie IpVanisch Serverliste.
Per Rechtsklick kopieren Sie Adresse des gewünschten Server (Konfiguration Datei).

sudo wget oben genannte Adresse einfügen

Login Datei erzeugen „login.txt“ und Username und Password eintragen, genau so wie unten beschrieben.
username
password

sudo nano /etc/openvpn/login.txt

Jetzt starten wir IpVanish

sudo openvpn --config /etc/openvpn/name_des_ausgewählten_server.ovpn --auth-user-pass /etc/openvpn/login.txt

Am Ende erzeugen wir Start Script für IpVanish:

sudo nano /etc/rc.local
↓**** tragen wir ein vor exit 0: ****↓
sleep 5
cd /etc/openvpn
sudo openvpn --config /etc/openvpn/name_des_ausgewählten_server.ovpn --auth-user-pass /etc/openvpn/login.txt

Ist etwas schief gelaufen, hier finden Sie englische Anleitung für IpVanish.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.