Raspberry Pi: OpenVPN VPN-Server installieren
Wenn man in einem öffentlichen W-LAN in z.B. einem Café oder in der Uni ist, so kann der Datenverkehr über dieses mit geschnitten werden und somit auch persönliche Daten und Zugangsdaten ausgelesen werden. Um dies zu verhindern, kann man eine verschlüsselte Verbindung legen, einen sogenannten VPN-Tunnel. Dieser leitet den kompletten Datenverkehr verschlüsselt an einen Server, der wiederum die eigentlich gewünschten Abfragen ausführt und die Antworten wieder verschlüsselt zurück an dich sendet. Den Raspberry Pi kann man als solchen Server an seinem eigenen Internet angebunden nutzen, mittels des VPN-Servers OpenVPN. Alternativ kann man auch PPTP nutzen (inzwischen unsicher). Die Vor- und Nachteile beider Systeme werde ich an diesem Punkt nicht erläutern. Wie man OpenVPN auf dem Raspberry Pi installiert erkläre in folgendem Tutorial.
Voraussetzung: Raspbian oder vergleichbare Distribution installiert
Zunächst aktualisieren wir die Quellen des Paketmanagers, damit wir später die aktuellen Programmversionen installieren können.
sudo apt-get update
Nun installieren wir OpenVPN und OpenSSL. Der Installation muss mittels Y zugestimmt werden.
sudo apt-get install openvpn openssl
Wir wechseln nun in das Verzeichnis von OpenVPN in dem wir einen Ordner kopieren, den wir gleich benötigen werden.
cd /etc/openvpn
sudo cp -r /usr/share/doc/openvpn/examples/easy-rsa/2.0 ./easy-rsa
Jetzt ersetzten wir mittels eines Editors in der Datei easy-rsa/vars die erste durch die zweite folgende Code-Passage. Im Editor nano speichert man mittels STRG + X und darauffolgend ein Y wie auch Enter.
sudo nano easy-rsa/vars
export EASY_RSA="`pwd`"
ersetzen durch
export EASY_RSA="/etc/openvpn/easy-rsa"
Nun wechseln wir das Verzeichnis, loggen uns in den Root-User ein und führen folgende Kommandos (Konfigurationen) aus.
cd easy-rsa
sudo su
source vars
./clean-all
./pkitool --initca
ln -s openssl-1.0.0.cnf openssl.cnf
Wir können nun die Komponenten für die Verschlüsselung des OpenVPN Zugangs generieren. Nach der Eingabe des ersten Kommandos wird man nach dem Land als Abkürzung gefragt (DE = Deutschland; AT = Österreich; CH = Schweiz). Alle weiteren Angaben können einfach bestätigt werden, da sie für OpenVPN nicht relevant sind. Das Selbe gilt bei dem zweiten und dritten Kommando, wobei wir dort am Ende mit Y zwei mal bestätigen müssen.
./build-ca OpenVPN
./build-key-server server
./build-key client1
Jetzt müssen wir noch die letzten Komponenten errechnen lassen. Dies kann ein paar Minuten dauern. Daraufhin melden wir uns mittels exit vom Root-User wieder ab.
./build-dh
exit
Wir müssen nun wieder das Verzeichnis wechseln, die Datei openvpn.conf erstellen und in diese den Code-Block einfügen. Falls gewünscht können in diesem die DNS-Server ausgetauscht werden.
cd ..
sudo touch openvpn.conf
sudo nano openvpn.conf
dev tun proto udp port 1194 ca /etc/openvpn/easy-rsa/keys/ca.crt cert /etc/openvpn/easy-rsa/keys/server.crt key /etc/openvpn/easy-rsa/keys/server.key dh /etc/openvpn/easy-rsa/keys/dh1024.pem user nobody group nogroup server 10.8.0.0 255.255.255.0 persist-key persist-tun status /var/log/openvpn-status.log verb 3 client-to-client push "redirect-gateway def1 bypass-dhcp" #set the dns servers push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 8.8.4.4" log-append /var/log/openvpn comp-lzo duplicate-cn keepalive 10 120
Nun richten wir die Internetweiterleitung ein, damit später der durch OpenVPN verbundene Computer auch Internetzugriff erhält. Sofern du nicht die Ethernetbuchse deines Raspberry Pis nutzt (z.B. W-LAN) musst du eth0 im folgenden Kommando durch den Namen deines Netzwerkadapters ersetzen. Wie dieser heißt, findest du mittels ifconfig
heraus.
sudo sh -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'
sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
Zu guter Letzt entfernen wir in der Datei sysctl.conf im übergeordneten Ordner vor der Zeile net.ipv4.ip_forward=1 die Raute.
cd ..
sudo nano sysctl.conf
Ein Teil der oben eingerichteten Einstellungen müssen noch als Crontab eingetragen werden damit sie dauerhaft funktionieren. Dafür fügen wir folgende Zeilen am Ende der der Crontab in eine neue Zeile ein (wieder im Bedarfsfall eth0 ersetzen).
crontab -e
@reboot sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
Wir wechseln nun erneut in den Root-User und mit diesem in das Verzeichnis /etc/openvpn/easy-rsa/keys in dem wir die Datei raspberrypi.ovpn erstellen und mit dem zweiten Absatz befüllen. Dabei musst du RASPBERRY-PI-IP durch die IP-Adresse deines Raspberry Pis ersetzten, bzw., wenn du einen DynDNS Dienst, nutzt durch deine DynDNS Domain.
sudo su
cd /etc/openvpn/easy-rsa/keys
nano raspberrypi.ovpn
dev tun client proto udp remote RASPBERRY-PI-IP 1194 resolv-retry infinite nobind persist-key persist-tun ca ca.crt cert client1.crt key client1.key comp-lzo verb 3
Jetzt erstellen wir noch ein Paket mit allen benötigten Dateien für den Client, welches wir in /home/pi ablegen und geben dem Benutzer pi die Rechte an der Datei. Daraufhin melden wir uns vom Benutzer root ab.
tar czf openvpn-keys.tgz ca.crt client1.crt client1.key raspberrypi.ovpn
mv openvpn-keys.tgz /home/pi
chown pi:pi /home/pi/openvpn-keys.tgz
exit
Zuletzt starten wir den OpenVPN Server neu.
sudo /etc/init.d/openvpn restart
Weitere Clients hinzufügen
Weitere Zertifikate für weitere Clients zu erstellen geht im Grund ebenso wie das erstellen des Ersten. Dazu melden wir mittels sudo su als Root-User an. Im Folgenden Befehl muss clientX durch eine vorlaufende Nummer des Clients ersetzt werden – oder einen Namen. Die gestellten Fragen beantworten wir wie in Step 6.
cd /etc/openvpn/easy-rsa/
sudo su
source vars
./build-key clientX
Nun legen wir, wie in Step 12, die Datei raspberrypi.ovpn an, wobei wir alle Vorkommen von client1 durch den Ersatz von clientX ersetzen.
Zuletzt packen wir wieder ein .tgz Archiv und melden uns von dem Root-User ab. Auch hier müssen wir clientX ersetzen.
cd /etc/openvpn/easy-rsa/keys
tar czf openvpn-keys-clientX.tgz ca.crt clientX.crt clientX.key raspberrypi.ovpn
mv openvpn-keys-clientX.tgz /home/pi
chown pi:pi /home/pi/openvpn-keys-clientX.tgz
exit
Zertifikat zurückziehen
Es kann dazu kommen, dass man einem Nutzer den Zugang wieder entziehen möchte oder im Falle eines entwendeten Zertifikates, entziehen muss. Dieser Vorgang nennt sich revoke. Mit folgendem Kommando kann man das Zertifikat für einen Client entwerten. Dabei ist clientX durch den jeweiligen Client Namen zu ersetzen.
sudo su
cd /etc/openvpn/easy-rsa
source vars
openssl ca -config openssl.cnf -revoke keys/clientX.crt -keyfile keys/ca.key -cert keys/ca.crt
openssl crl -in keys/crl.pem -text
Abschließend müssen wir eine Prüfung auf abgelaufene Keys einfügen und OpenVPN neustarten.
nano /etc/openvpn/openvpn.conf
Am Ende der Datei einfügen
crl-verify keys/crl.pem
/etc/init.d/openvpn restart
exit
Fertig! Nun können wir z.B. mittels WinSCP die openvpn-keys.tgz Datei auf unseren Computer herunterladen. Den Inhalt dieser Datei entpacken wir nun in den entsprechend Ordner unseres OpenVPN Clients auf unserem Rechner und können uns dann mit unserem OpenVPN Server auf dem Raspbery Pi verbinden. Einen OpenVPN Client für Windows gibts bei OpenVPN.net; für Mac gibts die App Tunnelblick und für Linux-User mittels des Paketes openvpn.
Für Benutzer des Telekom Routers Speedport W 921V oder verwandten Modellen, die Probleme beim Verbindungsaufbau haben, hat Marcus in den Kommentaren einen Lösungsansatz beschrieben.
Zugriff außerhalb des eigenen Netzwerks
Portfreigabe im Router
Soll der soeben installierte Dienst auch außerhalb des eigenen Netzwerkes verfügbar sein, so müssen folgende Ports im Router freigegeben werden. Wie man freigibt, beschrieb ich in dem Artikel Portforwarding bei Fritz!Box und Speedport.
352 Kommentare. Hinterlasse eine Antwort
Hallo, ich bekomme bei Dem Step 13 für die folgende Kommandozeile „client1.key raspberrypi.ovpn“ eine Fehlermeldung: „bsh: client1.key: command not found“
Können Sie da weiter helfen?
MfG
Kevin
Die Kommandozeile lautet
tar czf openvpn-keys.tgz ca.crt ca.key client1.crt client1.csr client1.key raspberrypi.ovpn
– vollständig funktioniert es 😉Die Kommandozeile tar czf openvpn-keys.tgz ca.crt client1.crt client1.csr client1.key raspberrypi.ovpn
gibt auch bei mir folgendes aus:
root@raspbmc:/etc/openvpn/easy-rsa/keys# tar czf openvpn-keys.tgz ca.crt client1.crt client1.csr client1.key raspberrypi.ovpn
tar: client1.crt: Kann stat nicht ausführen: Datei oder Verzeichnis nicht gefunden
tar: client1.csr: Kann stat nicht ausführen: Datei oder Verzeichnis nicht gefunden
tar: client1.key: Kann stat nicht ausführen: Datei oder Verzeichnis nicht gefunden
tar: Beende mit Fehlerstatus aufgrund vorheriger Fehler
root@raspbmc:/etc/openvpn/easy-rsa/keys#
Wie der Fehler schon in Worten zeigt existieren ein paar Dateien nicht. Konkret sind das die Schlüsselpaare mit denen man sich später anmelden können sollte. Ich nehme an, dass du in Step 5 oder Step 6 einen Fehler gemacht hast. Einfach noch mal probieren 😉
Hallo Jan,
ich habe mir die Frage gestellt ist das erstellte VPN ein Peer to Peer oder Ein bridged?
Bei mir hat alle auf dem Raspberry Pi geklappt. Nur dass mein Linux einfach nicht in der Lage ist, meinen Pi als Server zu nutzen. Es wird NUR die interne Lösung akzeptiert. (Microsoft lässt grüßen) Also habe ich meinen voll funktionierenden Mediaserver umsonst geopfert. Wenn nicht einmal Linux in der Lage ist, einen OpenVPN-Server zu nutzen, kann ich gleich alles ausmachen. Mein Betriebssystem: Linux Mint (Petra)
Man sollte die Passage [remote RASPBERRY-PI-IP 1194] unter Step 12 auch wörtlich nehmen, und die entsprechende IP eintragen. Großer Jubel (meinerseits) – es funktioniert tadellos. Eine Einschränkung beim Up- & Download konnte ich nicht feststellen, obwohl mein Raspberry Pi nicht übertaktet wurde. Ein dickes Lob und ein großes Dankeschön an den Verfasser. (y)
Ich weiß zwar nicht was Microsoft mit OpenVPN zu tun hat, aber bist du dir sicher, dass du die nötigen Port geöffnet hast damit es funktionieren kann? Btw: Man kann ein Image Backup erstellen 😉
Wie ist denn die Performance?
Ich hab nur DSL 6.000 (daher nicht so hohe Durchsatzraten) und davon kommen ca. 80% der Geschwindigkeit durch.
Ich schätze die 80% stammen eher vom Upload deiner DSL Leitung und der ist wahrscheinlich bei 1 Mbit/s.
Vom Download ausgegangen (netzwerkintern gemessen).
Ich habe gebastelt und gebastelt, nachdem ich einige Zeit schon mit OpenVPN herumprobiert habe. Das ist jetzt dabei herausgekommen; http://raspi.bplaced.net/
Super! So etwas in die Richtung steht auch noch auf meiner Todo-Liste zum darüber bloggen 😉
Ich würde mich sehr freuen, wenn du dich daran ausprobieren würdest und später vielleicht einmal mit verweis darüber bloggen würdest 😉
Hi nach einigem Testen und einstellungen an der fritzbox mit dnsdynamic hab ich mit hilfe dieses tollen tutorials eine grünes icon im client. sieht alles also super aus. leider geht da internet nicht mehr wenn die verbindung zum raspberry hergestellt ist. woran kann das liegen? woran kann das liegen. kannst du ggf nochmal auf das hier eingehen. ich hatte das 1zu1 übernommen. muss hier was ausgetauscht werden?
#set the dns servers
push „dhcp-option DNS 8.8.8.8“
push „dhcp-option DNS 8.8.4.4“
log-append /var/log/openvpn
comp-lzo
Hab gerade den ganzen VPN für dich bei mir noch einmal aufgesetzt. Läuft mit den Angaben aus dem Tutorial bei mir rund. Kann es sein, dass du den Raspberry Pi nicht via Ethernet sondern z.B. via WLAN im Netz hängen hast. Falls ja, musst du, siehe auch Tutorial,
eth0
durch deine andere Netzwerkkarte ersetzen.ich verwendee ethernet und hab das dementsprechend auch auf eth0 gelassen. Hast du Erfahrung wie sich das an eine fritzbox verhält?
ich hab mal nslookup mit aktiviertem vpn getestet:
C:\Windows\system32>nslookup
DNS request timed out.
timeout was 2 seconds.
Standardserver: UnKnown
Address: 8.8.8.8
Klingt so, als sei der DNS Server 8.8.8.8 nicht erreichbar (ist aber online; sprich nur von deinem Raspberry Pi aus nicht erreichbar). Bei der Fritz!Box muss man, aus meiner eigenen Erfahrung heraus, nichts besonderes einstellen.
Vielleicht einfach noch mal versuchen zu installieren, da evl. ein Tippfehler während der Installation passierte.
Ich wollte hier eine kleine DNS-Ergänzung für gehostete Raspis machen (meiner steht in Holland): ich hab da die Server von meinem Hoster genommen, wegen der schnelleren Antwort. Die von Google gehen natürlich auch, aber wenn man richtig zackige im gleichen Rechenzentrum hat ist das schon schicker…
An sonsten ist das die beste openVPN-Anleitung, die ich im Netz gefunden habe! Klasse gemacht!
Erstmal super Anleitung hat alles geklappt mit den Einrichten.
Wie komme ich allerdings zu dieser Datei „openvpn-keys.tar.gz „?
Wie kann ich mich mit meinem Handy, in diesen Fall iPhone, in den vpn einloggen?
Danke
Die Datei kann du dir mittels eines SFTP-Clients (z.B. Cyberdruck oder WinSCP) herunterladen und entpacken. Die entpackten Dateien musst du dann an die richtige Stelle Packen, sodass der Client sich einloggen kann. Wie das bei jeden Gerät einzeln geht, kann man ja ganz leicht googeln 😉
Okay, die Datei habe ich schonmal danke 😉
und im eigenen Netzwerk klappt das schon 😀
Naja erstmal danke dafür 😉
Falls du noch was wüsstes wäre das gut aber suche mal selbst nach einer Antwort ^^
Super Anleitung!
Funktioniert sofort. Was muss ich tun, wenn ich mit mehreren Clients den VPN Zugang nutzen möchte? Wenn ich identischen Schlüssel auf mehreren Geräten installiere, funktioniert keine Verbindung mehr richtig. Oder liegt es an der Leistung des Raspberry?
Mit dem selben Schlüssel sollte es eigentlich funktionieren. Ich nehme an, es liegt an der Leistung des Raspberry Pis. Falls noch nicht gemacht, kannst ja ja mal versuchen zu übertakten.
Danke, teste ich in 14 Tagen
Schließe mich der Aussage über die Qualität der Anleitung an !
Und die übersichtliche Gestaltung gefällt auch 🙂 !
Hallo ich habe mal eine kurze Frage ich habe nach dieser Anleitung Den OpenVPN Server Auf meinem Raspberry Pi Eingerichtet unter Windows Funktioniert es auch ohne Probleme.
Nur unter Xununtu Bekomme ich einfach keine Verbindung hin weder über OpenVPN Client Direkt Noch über Gnome Network Manager Mit OpenVPN plagin Beziehungsweise Ergänzung Mit Gnome Network Manager plus Plagin Funktioniert zwar das VPN Aber sobald das VPN verbunden ist Kein Internetzugriff mehr.
Es kann sein, dass vereinzelte Konfigurationen im Forwarding bei routerspezifisch ist. Ich verwende eine Fritz!Box 7390. In dem Kontext einfach mal mit deinem Routernamen googeln.
ich verwende eine vodafone Easybox 803 was genau muss ich denn da einrichten. der Standartport von Openvpn ist schon Freigegeben und weitergeleitet.
denn sonst würde es ja über Windows von außen gar nicht gehen.
was ich schon von einem andern Internetanschluss aus getestet habe.
unter Windows alles Kein ding nur Linux macht doof.
habe im Netz folgenden Hinweis gefunden.
http://www.computerbase.de/forum/showthread.php?t=1219541
kann aber leider nichts damit anfangen da ich in diesen Dingen absoluter Anfänger bin.
habe schon zwei ganze Tag mit Tante Google verbracht aber es hat nicht gebracht. im ubuntuuser Forum habe ich auch gefragt aber da kam ich auch nicht weiter mit. ich hoffe du kannst mir da helfen sonnst weiß ich mir keinen Rat mehr
Hey. Vielen Dank für den walkthrough, funktioniert tadellos!
3 kleine Anmerkungen / Verbesserungsvorschläge hätte ich noch:
1. Der IPv6-Support könnte gleich mit aktiviert werden – sollte man mittelfristig ja eh drauf umsteigen
2. Das CA-Key-File ist mit im Package, das runtergeladen wird – ein Hinweis darauf, daß man das sicher verwaren sollte wäre gut – sonst ist das ganze zieeemlich riskant!
3. Wenn man die sudo su befehle sinnvoll verschiebt geht das ganze noch ne ecke Schneller. Da kommt ein paar mal sudo dies, sudo das, dann werde root vor. 🙂
Trotzdem top und vielen Dank!
Gruß aus Köln
mene
Hi,
vielen dank für die Anleitung. Hat prima funktioniert. Ist es auch möglich über das VPN auf das eigene Heimnetz zuzugreifen. Bei mir ist das 192.168.1.xx
Vielen dank schon mal …
Daniel
Möglich sollte es schon sein. Da das jedoch nicht das Thema des Beitrages ist, lass ich dich mal googeln (Stichwort: openvpn zugriff auf netzwerk). Ist in 10 min. gefunden 😉
Hi,
vielen Dank für die Anleitung. Verwende den OpenVPN Client auf iOS und solange ich mich im Netzwerk des Mobilfunkproviders (Vodafone) befinde funktioniert das VPN einwandfrei.
Sobald ich aber an einem WLAN angemeldet bin bekomme ich keine Verbindung mehr zu meinem VPN Server. Hast Du vielleicht eine Idee, woran das liegen könnte?
Tobias
Vielleicht ist eine Firewall in deinem Route, die die Verbindung bockt?
Dann würde es aber auch nicht aus dem Mobilfunknetzwerk funktionieren, oder?
Wenn dein Router (WLAN) die Verbindung blockiert und du nicht im WLAN sondern im Mobilfunknetz bist, wird die Verbindung ja nicht blockiert.
Ah, verstehe. Du meinst der Roter auf Clientseite blockiert die Verbindung. Das kann ich aber ausschließen, habe ihn selbst konfiguriert. Weitere Ideen?
Versuch doch mal – um das Problem wirklich ausschließen zu können – als OpenVPN Socket-Port 443 anzugeben. Ausgehende SSL Verbindungen werden normalerweise immer vom router akzeptiert.
Ansonsten prüfe im wlan mal wo der Traffic hängen bleibt. – Das geht normalerweise mit wireshark.
Hallo Tobias,
hast du evtl. einen Telekom Speedport Router?
@Sebastian: Ja, es ist ein Speedport W723V. Gibt es damit ein bekanntes Problem?
Dann gibts schlechte Nachrichten, siehe Telekom Hilft Foum
Hallo zusammen Ich habe noch mal eine kurze Frage zu Openvpn.
Und zwar Habe ich Festgestellt Wenn sie Zwei Clients Gleichzeitig anmelden dass sie dann die Selbes VPN ip Erhalten.
Und dies müsste normalerweise Zu Problemen führen.
Jetzt wollte ich wissen wie man es einrichten kann Das zwei Clients Auch zwei IpAdressen bekommen.
Wieso sollte das zum Problem führen? Wenn du mit zwei Geräten in deinem Netzwerk bist haben auch beide die selbe externe IP-Adresse. Verschiedene IP-Adressen sind nicht möglich, da Privatanschlüsse immer nur eine IP-Adresse zugewiesen bekommen.
Super Anleitung!
Wenn ich parallel 2 Geräte per VPN betreiben will, benötige ich doch 2 verschiedene Keys, oder? Ich habe testweise 2 Geräte gleichzeitig mit den gleichen Keys betrieben und festgestellt, dass die VPN Verbindung bei Verwendung von 2 Geräten gleichzeitig hin und wieder abreißt. Benutze ich nur ein Gerät läuft alles.
Wenn ich es richtig verstehe reicht es doch ab Schritt 12 alles nochmal für den 2. Key (mit Änderung …2 statt …1, also client2 statt client1 etc.) zu machen. Passt das so oder übersehe ich da was?, Kann die Pi in der Konfig überhaupt 2 versch. Geräte bedienen?
An der Leistung liegt es glaube ich nicht, da die CPU Last bei einem verb. Client unter 20 % ist.
data
Es sollt auch mit nur einem Key funktionieren. Man kann jedoch, wie du richtig annimmst, mit den abgeänderten Befehlen ab Step 6 ein zweites Zertifikat/Key anlegen (in Step 6 nur
./build-key client1
).muss das dann nicht ./build-key client2 heißen?
Ja klar, client2, jedoch meinte ich aus Step 6 nur dieses Kommando erneut anwenden – und nicht die Anderen.
läuft soweit gut. Kannst Du das noch bei Step 6 hinzufügen als Option für die, die mehrere Zertifikate benötigen?
Werde ich noch hinzufügen, sobald Zeit dafür ist.
Nein ich meinte nicht die Internet ip Adresse Sondern die VPN Ip Adresse Also was ich meine Ist.
Wenn zwei Geräte Gleichzeitig mit dem VPN Verbindung Erhalten beide die ip Adresse 10.8.0.6 Aber wie kann Dann der Server Die Geräte auseinanderhalten Wenn Sie beide dieselbe Ip Haben
Ich denke dass die lokale Adresse des Clients im OpenVPN-Netzwerk für die Kommunikation nicht so eine große Rolle spielt. Ein VPN sollte wohl flexibel genug sein um für solche Fälle gerüstet zu sein, und OpenVPN ist ja nicht die schlechtes Software.
Hallo zusammen ich muss leider noch mal nerven Bezüglich des Open VPN Server Und zwar habe ich das Problem dass sowohl Arbeits Laptop als auch privat Laptop als auch iPhone Dieselbe VPN ip Erhalten
Und sich gegenseitig Rauswerfen
Habe schon gegoogelt wie ein blöder Aber keine Lösung gefunden die funktioniert Ich hoffe ihr könnt mir helfen
Hallo,
eine tolle Anleitung.
Nur warum steckst du die ca.key mit in das tarball und legst es auf die Clients ab? Wer im Besitz der ca.crt und ca.key ist kann damit nach belieben neue Clintzertifikate ausstellen. ca.key gehört in den Tresor und nicht rumverteilt!
Danke, habs verbessert.
hallo wenn ich ./build-key client2 ausführe erhalte ich folgende meldung
Please edit the vars script to reflect your configuration,
then source it with „source ./vars“.
Next, to start with a fresh PKI configuration and to delete any
previous certificates and keys, run „./clean-all“.
Finally, you can run this tool (pkitool) to build certificates/keys.
hat jemand einen tipp?
Schau in die Schritte darüber in Verbindung mit der Fehlerausgabe. Dann findest du die Lösung 😉
Hallo Jan,
ersteinmal: super Anleitung!
Ich bekomme eine Fehlermeldung am Ende von Step 9:
pi@raspberrypi /etc/openvpn $ eth0 -j MASQUERADE
-bash: eth0: Kommando nicht gefunden.
Was mache ich falsch? Raspi wurde vorher komplett neu installiert
Gruß
Kalle
Das Kommando heißt, siehe Anleitung, nicht
eth0 -j MASQUERADE
, sondern wie folgt:sudo iptables -t nat -A POSTROUTING -s 10.0.0.0/8 ! -d 10.0.0.0/8 -o eth0 -j MASQUERADE
Hallo Jan,
danke, bin Newbie…
Damit habe ich kein Problem. Anfangs tat ich mir im Linux-Bereich auch hart…
Hallo Jan,
ich mache zu 99% einen dummen Fehler. Vielleicht kannst du mir sagen, wo dieser liegt. Habe deine Tutorial m.E. richtig abgearbeitet, leider bekomme ich via iOS OpenVPN Client keine erfolgreiche Verbindung zustande. Es scheint, als wird die Sitzung gleich nach dem Handshake terminiert. Wirst du aus dem Client Log schlauer und kannst mir helfen?
2013-09-06 23:11:19 —– OpenVPN Start —–
2013-09-06 23:11:19 LZO-ASYM init swap=0 asym=0
2013-09-06 23:11:19 EVENT: RESOLVE
2013-09-06 23:11:22 Contacting 87.173.49.???:1194 via UDP
2013-09-06 23:11:22 EVENT: WAIT
2013-09-06 23:11:22 Connecting to blageheim.dyndns.org:1194
(87.173.49.???) via UDPv4
2013-09-06 23:11:23 EVENT: CONNECTING
2013-09-06 23:11:23 Tunnel Options:V4,dev-type tun,link-mtu
1542,tun-mtu 1500,proto UDPv4,comp-lzo,cipher BF-CBC,auth SHA1,keysize
128,key-method 2,tls-client
2013-09-06 23:11:23 Peer Info:
IV_VER=1.0
IV_PLAT=ios
IV_NCP=1
IV_LZO=1
2013-09-06 23:11:25 VERIFY OK: depth=0
cert. version : 3
serial number : 01
issuer name : C=DE, ST=CA, L=SanFrancisco, O=Fort-Funston,
OU=changeme, CN=changeme, 0x29=changeme, [email protected]
subject name : C=DE, ST=CA, L=SanFrancisco, O=Fort-Funston,
OU=changeme, CN=server, 0x29=changeme, [email protected]
issued on : 2013-09-06 19:46:00
expires on : 2023-09-04 19:46:00
signed using : RSA+SHA1
RSA key size : 1024 bits
2013-09-06 23:11:25 VERIFY OK: depth=1
cert. version : 3
serial number : CC:46:B1:07:C5:6E:4B:CC
issuer name : C=DE, ST=CA, L=SanFrancisco, O=Fort-Funston,
OU=changeme, CN=changeme, 0x29=changeme, [email protected]
subject name : C=DE, ST=CA, L=SanFrancisco, O=Fort-Funston,
OU=changeme, CN=changeme, 0x29=changeme, [email protected]
issued on : 2013-09-06 19:41:58
expires on : 2023-09-04 19:41:58
signed using : RSA+SHA1
RSA key size : 1024 bits
2013-09-06 23:12:06 Session invalidated
2013-09-06 23:12:06 Client terminated, restarting in 2…
2013-09-06 23:12:06 EVENT: DISCONNECTED
2013-09-06 23:12:06 Raw stats on disconnect:
BYTES_IN : 3185
BYTES_OUT : 30074
PACKETS_IN : 31
PACKETS_OUT : 71
KEEPALIVE_TIMEOUT : 1
2013-09-06 23:12:06 Performance stats on disconnect:
CPU usage (microseconds): 96874
Network bytes per CPU second: 343322
Tunnel bytes per CPU second: 0
2013-09-06 23:12:06 —– OpenVPN Stop —–
Danke und Grüße
Mic
Klingt nach diesem Problem. Im dritten Post ist ein Lösungsvorschlag: https://forums.openvpn.net/topic12195.html
Nee ich fliege schon vorher raus. In deinem Lösungsvorschlag bekommt der Client zumindest einen SSL Handshake, an dieser Stelle habe ich den Connection Timeout. Mit Tunnelblick am Mac übrigens dasselbe Verhalten.
Fahre ich den ovpn Server runter, bekomme ich keinen Connect am ovpn Client. Der Server ist also erreichbar, lässt mich aber nicht rein. Eine FW-Regel kanns doch dann eigentlich auch nicht sein, welche hier stört?
Wären die PKI Certs defekt oder falsch erstellt, wäre das Fehlerverhalten doch sicher ein anderes?
Sollte ich vielleicht nochmal alle Certs löschen, den ovpn Server löschen und das Tutorial von Vorn beginnen?
Grüße und Danke!
mic
Der einfachste und vermutlich auch schnellste Weg wird das neu probieren sein…
Kurzes Feedback: Da der Fehler beim TSL Handshake passiert, habe ich nur sämtliche Cert und Keys neu generiert – nun funzt es!
Super Sache, danke dir. Finde klasse, dass selbst die Namensauflösung sauber über das VPN funktioniert.
Grüße
mic
Super, freut mich zu lesen.
Hallo Jan,
zuerst einmal ein großes Dankeschön für dieses tolle Tutorial.
Leider hab ich anscheinend einen Fehler bei der Konfiguration gemacht, den ich ohne fremde Hilfe nicht wieder ausbessern kann.
Und zwar bekomme ich beim starten des OpenVPN Server folgende Fehlermeldung
„[FAIL] Starting virtual private network daemon: openvpn failed!“
Vielleicht kannst du mir einen Tipp geben, was ich falsch gemacht haben könnte!
Danke
Was sagen denn die Logfiles (/var/log/openvpn-status.log)?
openvpn-status.log enthält folgenden Inhalt
penVPN CLIENT LIST
Updated,Mon Sep 9 18:29:18 2013
Common Name,Real Address,Bytes Received,Bytes Sent,Connected Since
ROUTING TABLE
Virtual Address,Common Name,Real Address,Last Ref
GLOBAL STATS
Max bcast/mcast queue length,0
END
Nicht gerade ergiebig… schon mal neu installieren versuchst? Denn da sollte während der Installation was schief gelaufen sein.
Hab ich mir auch gedacht. Neuinstallation hab ich schon versucht, allerdings ohne vorher etwas zurückzusetzen, kannst du mir vielleicht erklären wie ich die oben genannten Steps wieder rückgängig machen kann. Oder sollte ich gleich Raspbian neu installieren?
Danke
sudo apt-get remove openvpn openssl
rm -r /etc/openvpn
rm /home/pi/openvpn-keys-clientX.tgz
Damit solltest du zumindest OpenVPN deinstallieren können. Alle manuell angepassten Parameter im System müssen rückgebildet werden. Oder eben, wie du schon selbst vorgeschlagen hast, Raspbian neu installieren.
Danke Jan,
mit deiner Deinstallationsanleitung und anschließender Neuinstallation hats nun doch geklappt!
Moin, Moin,
ich bekomme bei Schritt 12 (sudo iptables -t nat -A POSTROUTING -s 10.0.0.0/8 ! -d 10.0.0.0/8 -o eth0 -j MASQUERADE) einen Fehler.
ERROR: could not insert ‚ip_tables‘: Exec format error
iptables v1.4.14: can’t initialize iptables table `nat‘: Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.
hat sich etwas am Tutorial geändert?
Das hast du wohl was bei iptables zerschossen. Entweder du setzte das System neu auf oder du suchst anhand der Fehlermeldung (in Google) nach Lösungsansätzen. Helfen kann ich leider nicht, da sich hinter der Fehlermeldung mehrerlei verbergen kann, was du merken wirst, wenn du nach Lösungen suchst.
hast du eine lösung gefunden? meiner macht das auch… :/
Hast du dein Betriebssystem direkt davor neuinstalliert oder schon einiges rumgespielt?
Die Loesung ist eigentlich ganz einfach: Das ip_tables module passt nicht zum aktuellen Kernel. Also: REBOOTEN
Kan ich zwar nicht nachvollziehen, aber wenn es euer Problem löst ist es super 🙂
Funktioniert bei mir auch auch perfekt 🙂
Einfach rebooten!
Hallo jan erstmal Danke für die Tolle Anleitung läuft alles super.
Ich kann sogar auf die pcs zu hause zugreifen.
aber ich habe da ein kleines Problem ich wollte das VPN gerne so einrichten das jeder VPN Client eine feste IP bekommt Grund dafür ist das meine Große Schwester viel Beruflich unterwegs ist.
und ich ihr öfter mal helfen muss und ich dachte das ich dann per VPN auf ihr Laptop kann.
ich habe es nach den unterschiedlichsten Anleitungen versucht.
entweder hatte ich kein Internet mehr über die VPN oder keinen Zugriff mehr auf die PCS zu Haus
oder das Internet lief nicht mehr über die Leitung von zu Haus.
ich hoffe du hast einen Tipp für mich weis echt nicht was ich noch versuchen soll.
VLG Michael
Meinst du eine feste interne oder eine feste externe IP-Adresse? Falls du letzteres meinst: Das geht nicht, da dir dein Provider im Schnitt alle 24 Stunden eine neue zuteilt. Jedoch kannst du das Problem mit lösen, indem du eine DynDNS einrichtest, wie ich bereits in meinem Blog beschrieben habe.
hallo Jan nein ich meine nicht die externe IPAdressen sondern die VPN IP Adresse das zum Beispiel der Client immer die
10. 8.0.2bekommt. so dass ich dann über die VPN IP auf das Laptop meiner Schwester zugreifen kann egal wo Sie gerade ist.
das mit der externen IP habe ich schon nach deiner Anleitung eingerichtet.
wie gesagt ich frage dich nicht ohne Grund ich habe es nach den unterschiedlichsten Anleitungen versucht jedes Mal mit dem Ergebnis das irgendetwas nicht mehr funktioniert hat. entweder war gar keine Internet Verbindung mehr möglich oder sie lief nicht mehr über die Leitung von zu Hause oder ich hatte keinen Zugriff mehr auf die PCs die zuhause stehen ich hoffe du hast eine Idee wie man es zum laufen bringen kann und ich hoffe ich konnte jetzt besser erklären wo mein Problem liegt wenn Du noch Fragen haben solltest frag einfach ich wäre dir echt sehr dankbar wenn du mir helfen könntest
lieben Gruß michael
Die Einleitung kann ich so nicht stehen lassen Was du hier anbietest ist reine Scheinsicherheit. Den einzigen Vorteil gegenüber einer normalen Verbindung ins Internet besteht darin, dass ein Angriff von jemandem, der im „gleichen Cafe sitzt“ scheitert. Passwörter unverschlüsselt im Internet zu verwenden ist grundsätzlich keine gute Idee. Daran ändert auch dein VPN nichts. Denn die Passwörter gehen dann halt erst ab deinem VPN Server unverschlüssel ins Internet. Insofern stellst du dem Laien hier eine Falle, er nimmt an, er wäre nun sicher. Das ist er aber nicht. Punkt.
Ich würde an deiner Stelle noch einmal die ersten zwei Sätze des Beitrages durchlesen und die Wirkung eines Demonstrativpronomens nachschlagen. Dann wirst erkennen was durch einen VPN-Server gesichert werden soll und gesichert wird.
Anmerkung zu Step 15 (Weitere Clients):
Sind die Schritte
./clean-all
./pkitool –initca
in diesem Fall nicht unnötig (wenn nicht gar kontraproduktiv), da dadurch doch das ./keys Verzeichnis gelöscht wird (und damit diverse Dateien, die initial für den ersten Client erstellt wurden, z.B. dh1024.pem)?
Ich hatte auf jeden Fall Erfolg für einen client2, ohne o.g. Schritte, sondern gleich mit ./build-key client2
Unbeachtet davon: sehr gutes Tutorial!
Danke für eine Anmerkung. Wenn ich mich recht erinnere gab es, als ich das Tutorial um dieses Step erweiterte, unter bestimmten Umständen ohne diese Kommandos ein Problem. Da du jedoch meintest es gänge bei dir auch ohne und es, wie ebenfalls von dir benannt, ja einen Nebeneffekt gibt, habe ich die zwei Kommandos mal gestrichen.
Vielen Dank für das Tutorial. Nur habe ich ein Frage.
Wie extrahiere ich die Dateien und welche brauche ich genau um mit meinem Windows Client auf das VPN zuzugreifen?
Du brauchst alle in dem Packet enthaltenen Dateien. Entpacken kannst du die Datei z.B. mittels WinRAR oder 7ZIP.
Wow das ging schnell. Danke sehr
Ich habe jetzt alles korrekt eingerichtet (so weit ich weiß) allerdings fragt mich der client nach benutzername und passwort. name ist vermutlich der clientname aber passwort?
Sicher, dass du den OpenVPN Client verwendest? Denn der fragt nicht nach Benutzername und Passwort… ich nehme eher an du verwendest einen Client für PPTP VPN-Server.
http://openvpn.net/index.php/access-server/download-openvpn-as-sw/357.html das ist der client
Das ist der OpenVPN.net bzw. Privatetunnel.com Client – nicht der offene OpenVPN Client für eigene Server (am Ende des Artikels verlinkt).
Vielen dank für dieses Tutorial, es war gut verständlich, ich habe aber dennoch ein Problem.. Die Anleitung habe ich genau befolgt (habe auch die richtige IP adresse verwendet), wenn ich jedoch den Server starten will ist das einzige was passiert folgende Nachricht: „[FAIL] Starting virtual private network daemon: openvpn failed!“
kann dieser Fehler irgendwie ausdrücken, was ich falsch gemacht habe?
Der Fehler sagt leider nicht viel aus. Ich tippe darauf, dass du in den Konfigurationen einen Fehler gemacht hast. Die Ausgabe folgenden Kommandos sollte mehr Aufschluss bieten.
cat /var/log/syslog | grep VPN
Könnte sein das das Tunnel Modul nicht gelanden wird.
Trage doch mal in die Datei /etc/modules folgendes ein:
tun
Danach starte den Raspberry neu!
lg
cat /var/log/syslog: http://pastebin.com/Qv1jq4nb
grep VPN: keine reaktion
Gibt beides leider reichlich wenig Aufschluss, sodass ich nicht weiß wie ich dir helfen könnte. Vielleicht einfach Raspbian noch mal aufsetzten und die Installation erneut versuchen.
Habs schon drei mal versucht..
Ich werde es noch ein drittes mal machen, mal sehen ob es diesmal klappt. Trotzdem Danke für den Versuch mir zu helfen.
Es hat funktioniert… Der Fehler war in Schritt 6.
Schön zu hören, dass es nun funktioniert 🙂
Beim Aufbau einer Verbindung von einem Androiden mit „OpenVPN“ sehe ich in dessen Log-Datei folgendes:
P:WARNING: No server certificate verification method has been enabled. See http://openvpn.net/howto.html#mitm for more info.
Der genannte Link nennt als Abhilfe folgende Zeile der Client-Konfiguration hinzuzufügen:
remote-cert-tls server
Hat da jemand Erfahrung mit? (Ich hab’s noch nicht ausprobiert).
Habe mal gerade etwas gegoogelt. Scheint eine empfohlene Sicherheitseinstellung sein, die aber nicht zwingend notwenig ist. Aber nachdem du mich darauf hingewiesen hast habe ich den Parameter dem Tutorial mal hinzugefügt. Danke!
OK,
ich sehe in Step m12 die Zeile „ns-cert-type server“ inder Client-Konfiguration. Man muß wohl hier unterscheiden, mit welcher OpenVPN Version man es zu tun hat. Bis OpenVPN 2.0 stimmt die angegebene Zeile, ab 2.1 sollte diese jedoch „remote-cert-tls server“ lauten (so habe ich es in der Zwischenzeit auch mit 2.2.1 getestet), siehe hierzu: http://bitcube.co.uk/content/openvpn-howto
Dann fliegt sie wieder raus, damit es überall funktioniert – in der Hoffnung, dass Interessierte deine Lösung in den Kommentaren finden 😉
Hallo Jan, sehr schöne Anleitung, vielen Dank dafür!
Kannst du mir vielleicht auch sagen wie ich erziele das nicht der gesamte Internettraffic des Client PCs über das VPN läuft? Ich habe zu Hause wenig Upload, das macht das surfen auf dem Client zur Qual.
Ich möchte das VPN lediglich dazu nutzen meine internen Devices vom Client aus erreichen.
Gruss
Stefan
Gute Frage. Das weiß ich ehrlich gesagt auf die Schnelle auch nicht, da das Tutorial explizit beschreibt wie man eben den Internetverkehr tunnelt. Dein Hintergedanken kann ich aber gut nachvollziehen.
Schade das Du mir da nicht helfen kannst, hast du denn eine Idee wie ich eine VPN IP einem Client fest zuweisen kann?
Ich denke du meinst damit die IP Adresse die man nach außen hat, wenn man sich über den OpenVPN Server verbunden hat. Diese wird ca. alle 24 Stunden von deinem Internet Provider neu zugewiesen, sodass du diese nicht fest zuweisen kannst.
Du musst in der Server konfig die zeile:
push „redirect-gateway def1“
durch
push „route 192.168.1.0 255.255.255.0“ (natürlich mit deinem internen Netz) ersetzen
Somit wird nur mehr Traffic nach 192.168.1.0 in den Tunnel geschickt.
lg Matthias
Hallo Matthias, vielen Dank für deine Hilfe!
Dein Tipp hat schonmal geklappt.
Was aber wenn ich einen User nicht weiterleiten will, einen anderen schon.
Läasst sich das auch realisieren?
Gruss
Stefan
Ich denke dies steht nicht im Möglichen von OpenVPN, da es kein ausführliches User Management besitzt.
[…] https://jankarres.de/2013/05/raspberry-pi-openvpn-vpn-server-installieren/ […]
Hallo, habe ein Problem.
Habe nach dieser Anleitung den VPN installiert.
Leider startet der open nich:
Active: active (exited)
Im Syslog steht
Nov 20 22:50:44 raspberrypi systemd[1]: Starting OpenVPN connection to openvpn…
Nov 20 22:50:44 raspberrypi systemd[1]: [email protected]: control process exited, code=exited status=1
Nov 20 22:50:44 raspberrypi systemd[1]: Failed to start OpenVPN connection to openvpn.
Nov 20 22:50:44 raspberrypi systemd[1]: Unit [email protected] entered failed state.
Wenn ich VPN mit der Config starte bekomme ich folgende INfos, womit die Ursache auch klar ist:
pi@raspberrypi /etc/openvpn $ openvpn –config /etc/openvpn/openvpn.conf
Fri Nov 20 22:53:36 2015 Warning: Error redirecting stdout/stderr to –log file: /var/log/openvpn: Permission denied (errno=13)
Options error: –dh fails with ‚/etc/openvpn/easy-rsa/keys/dh20481.pem‘: Permission denied
Options error: –ca fails with ‚/etc/openvpn/easy-rsa/keys/ca.crt‘: Permission denied
Options error: –cert fails with ‚/etc/openvpn/easy-rsa/keys/server.crt‘: Permission denied
Options error: –key fails with ‚/etc/openvpn/easy-rsa/keys/server.key‘: Permission denied
Options error: –status fails with ‚/var/log/openvpn-status.log‘: Permission denied
Options error: Please correct these errors.
Nicht so klar ist mir wie ich das beheben kann.
Gruß
Marius
Hallo
Danke erstmal für die super Anleitung.
Ich habe die Anleitung fehlerfrei abgearbeitet und OVPN auf meinem Raspberry installiert. In die Datei „raspberrypi.ovpn“ habe ich
„remote werbinich.dyndns.org 1098“
eingegeben.
Die erstellten Dateien habe ich auf mein Android-Gerät kopiert und dort die App entsprechend eingerichtet. Außerdem habe ich in meinen Speedport-Router noch den Port 1098 weitergeleitet.
Ich bekome aber immer die folgende Fehlermeldung: No route tu host.
Auch per TCP kommt diese Meldung.
Was mach ich da noch falsch?
MfG
Andreas
Hallo, hab ach folgendes Problem, mein Openvpn will einfach nicht starten. Hab jetzt schon 2 mal die installation durchgeführt!
[FAIL] Starting virtual private network daemon: openvpn failed!
hier in der syslog kommt immer der fehler vor:
Mar 13 07:46:34 raspberrypi ovpn-openvpn[5540]: Options error: Bad protocol: ‚upd‘. Allowed protocols with –proto option: [proto-uninitialized] [udp] [tcp-server] [tcp-client] [tcp] [udp6] [tcp6-server] [tcp6-client] [tcp6]
Mar 13 07:46:34 raspberrypi ovpn-openvpn[5540]: Use –help for more information.
Mar 13 07:46:36 raspberrypi kernel: [46170.587578] w1_master_driver w1_bus_master1: Family 0 for 00.9dc000000000.58 is not registered.
Danke vorerst
Hallo,
wenn die Fehlermeldung tatsächlich “ Bad protocol: ‚upd‘.“ lautet dann ist der Fehler klar:
Das Protokoll lautet UDP – nicht UPD.
…einfach nochmal die Zeile PROTP UDP kontrollieren bzw. anpassen – dann sollte es funktionieren…
Viele Grüße
Michael
Hey, 😀 ich hab schon alles versucht ABER 😀 ich bekomme keine richtige verbindung hin.
ich hab jetzt locker schon über 20 Arbeitsstunden hineingesteckt..
denke es liegt daran das irgendetwas nicht mehr akutell ist.. alles was aus den kommentaren in frage kommt hab ich jetzt auch schon durch. :/
kann jemand mal durch checken und helfen?!
Moin,
diese Anleitung sollte wirklich mal aktualisiert werden…
Aber check mal ob du im keys-Ordner die Datei dh1024.pem hast. Wenn nicht vermutlich eine dh2048.pem, diese musst du dann in der Datei openvpn.conf angeben.
LG simanuel
allo Zusammen,
habe gestern mal meinen Raspi 1. Generation mit Noobs befüllt und dort dann das Raspbian (recommend) installiert. danach mit Rootrechten das Update und das Uprade gemacht dann bin ich nach folgender Anleitung mal vorgegangen:
https://jankarres.de/2013/05/raspber…-installieren/
Hier bleib ich aber schon am Step 3 hängen…vorher habe ich das opnenvpn installiert wie in der Anleitung vorgegeben….dann bei Step 3 kann ich mit den Befehlen in den Ordner wechseln (cd /etc/openvpn) aber mit dem Befehl (sudo cp -r /usr/share/doc/openvpn/examples/easy-rsa/2.0 ./easy-rsa) gehts nicht weiter. Die Konsole meldet mir das es keinen easy-rsa gibt????
Woran liegt das? Gibt es neuere Abhängikeiten bei openvpn??
1. Gibt es eine einfachere Lösung?
2. Will mit Handy (iphone und andoid) und PC auf den Raspi später per VPN zugreifen
3. Bei Step 4 in der Anleitung wird gesagt das man das mittels Editor erledigen soll…wo finde ich den Edior? und wie öffne ich diesen?
Über Tipps danke ich euch.
Kussel
Hi
Super Anleitung! Wichtig in der Server konfig war für mich noch
duplicate-cn #Damit zwei Geräte mit dem gleichen Zertifikat funktionieren
keepalive 10 120 #iOS hat einen verbindungsabbruch nach 40sek. Damit wird das umgangen
lg Matthias
Danke, habe ich hinzugefügt.
Muss es in Step 4 nicht
export EASY_RSA=`pwd`
lauten?
Da hast du einen Darstellungsfehler meines Blogs gefunden. Habs verbessert. Danke!
[…] ist, ist PPTP. Daneben gibt es noch OpenVPN, der ebenfalls beliebt ist und zu dem ich bereits eine Installationsanleitung veröffentlicht habe. Auf die Vor- und Nachteile beider VPN-Server möchte ich an dieser Stelle […]
Hi, hat jemand schon einen freien OpenVPN Client gefunden der unter Windows 8.1 funktioniert? Die TAP Treiber lassen sich unter Win8.1 nicht installieren. Die kommerzielle OpenVPN Version hat einen passenden Treiber. Habe auch versucht die Dateien umzubiegen für den freien Client, jedoch ohne Erfolg. Die letzten Änderungen auf der Seite openvpn.se sind auch schon eine ganze Weile her. Das wird wohl nicht mehr supported.
Ich habe auf WhatTheServer.me einen Lösungsansatz gefunden. Da ich Windows 8.1 nicht installiert habe kann es für dich jedoch nicht ausprobieren, sodass du selbst mal sehen musst ob es funktioniert.
Sehr gute Anleitung mit der ich als Linux Newbie mein VPN zum Laufen bekommen habe.
Was ich bisher mit Schlaulesen anderer Anleitungen nicht hinbekommen habe, ist die ZUSÄTZLICHE Abfrage am Client nach Benutzername und Passwort, die auch funktioniert.
Hast Du da was auf Lager?
Wünsche schöne Feiertage und guten Rutsch 🙂
Wenn ich mich nicht täusche kann man bei OpenVPN nur zwischen Key oder Benutzername/Passwort Authentifizierung wählen (nicht beides zugleich). Und da würde ich dir eindeutig zum beschriebenen Key-Verfahren raten, da dieses quasi ein sehr langes und kompliziertes Passwort ist, sodass es sicherer ist als Benutzername/Passwort.
Hallo Herr Karres,
erst einmal ein frohes Neues Jahr….
„Sehr gute Anleitung mit der ich als Linux Newbie mein VPN zum Laufen bekommen habe.“ dem kann ich mir nur anschliessen.
Ich habe nur ein einziges Problem!
Seit dem der restart von openvpn durchgeführt wurde, startet mein wlan0(wpa_supplicant) nicht mehr automatisch.
Nur bei dem Connect über die WPA_GUI startet das Wlan wieder…..
Haben Sie ein Ahnung welches Problem hier auftritt?
Danke
Gruß Guido
Schau doch mal in die /etc/network/interfaces ob dort die Konfigurationen für den WLAN-Stick noch korrekt sind. Weitere Ideen habe ich an dem Punkt leider nicht.
die Einstellungen haben sich nicht verändert, anscheinend macht hier der Reatltek Treiber des Wlan Stick Probleme….
Ich habe jetzt erstmal ein eigenes Startscript geschrieben und nun geht es wieder, wenngleich der Raspi deutlich länger braucht um wieder online zu sein.
Ich werde das die Tage mit einem neuen Edimax Wlan Stick nochmals testen.
LG Guido
Hallo Jan,
update zu dem Wlan Problem, da mir dies keine Ruhe gelassen hat.
Da ich dein Tutorial so abgearbeitet habe wie du es hier geostet hast, hatte ich als erstes ein upgrade durchgeführt, allerdings kein reboot.
Das Upgrade ist ursächlich für das Problem.
Nach dem rpi-update ist wieder alles i.O.
Hier scheint es Treiber Probleme zu geben mit dem Realtek RTL8188CUS Chipsatz.
LG Guido
Aha, dann ist es ja kein Wunder dass es nicht funktioniert hat.
Danke für die Antwort, mit der ich heute wahrlich nicht gerechnet habe 😉
Falls ich eine Lösung finden sollte, werde ich sie hier bekanntgeben…
Alors, ich habe den Raspi via Ethernet (statische IP’s intern) laufen. Der Raspi hat zudem eine DynDNS Adresse, die DNS Auflösung klappt und IP Forwarding ist auch aktiv. Die Schritte habe ich soweit erfolgreich durchgeführt. Die Verbindung allerdings bringt auf Android 4.4. ein Timeout.
Wenn ich dann aber mein Wlan einschalte und aus dem internen Netz eine Verbindung versuchen aufzubauen, klappt alles sofort. Ich bin total ratlos, da der Raspi von aussen erreichbar ist aber vom Smartphone aus keine Daten reinkommen. Vielleicht gibt es hier ein Routing Problem?!
Bei http://ping.eu/port-chk/ kannst Du testen ob der entsprechende Port aus dem Netz erreichbar ist.
Wenn nicht stimmt mit deiner Konfiguration etwas nicht.
Super Anleitung, FETTES DANKE.
Also selbst ich als absoluter Newbie bin klargekommen. Jetzt noch eine Frage, Lachen ist erlaubt. Wie kann ich einstellen das OpenVPN nicht selbst startet nach einem reboot des Raspberry ?
stoppen bekomm ich ja noch eben hin mit killall -9 openvpn.
Mit
kill -9
sollte man sparsam umgehen. Wenn möglich sollte man ein Programm überkill
anstattkill -9
beenden.Sollte mit folgendem Kommando gehen.
sudo update-rc.d -f openvpn remove
Manuell starten können solltest du OpenVPN über folgendes Kommando.
sudo /etc/init.d/openvpn start
Okay. Und wo trag ich das ein um openvpn also beim booten direkt zu beenden? i jobs?
Diese beiden genannten Befehle sind einfach zum Ausführen im Terminal.
Also gibt es keine Möglichkeit den Autostart von openvpn beim starten des Raspberry zu verhindern?
Jan: Damit update-.rc.d openvpn remove funktioniert müsste das zugehörige init Script bereits gelöscht sein (siehe man-page). Ich kenne natürlich die Funktionsweise von ‚-.f‘, denke aber die richtige Vorgehensweise wäre:
sudo update-rc.d openvpn disable
und dann bei Bedarf:
sudo update-rc.d openvpn enable
sudo /etc/init.d/openvpon start
Bessere Alternative ist ggf: in /etc/default/openvpn in der Zeile
AUTOSTART=“none“
das Kommentarzeichen entfernen, damit wird openvpn nicht gestartet und bei Bedarf dann eben manuell starten:
sudo /etc/init.d/openvpn start [openvpn]
@Michael: Ich denke meine Methode funktioniert ebenso, aber deine Variante, insbesondere letztere, ist natürlich galanter 😉
Recht Herzlichen Dank euch.
[…] die Installation möchte ich nun nicht weiter eingehen als auf einen Link zu verweisen, der mir an einer Stelle helfen konnte und das Verfahren in Gänze erklärt. […]
Hallo, super Anleitung.
Habe aber auch eine Frage. Habe bei mir alle Ports am Router geschlossen.
Welch Ports müssen denn alle auf den Pi weitergeleitet werden?
OpenVPN nutzt standardmäßig den Port 1194. Dieser müsste freigegeben werden.
Danke für die schnelle Antwort. Aber noch eine kleine Frage dazu. Wenn ich wie in step8 beschrieben dort nicht port 1194 sonder ein anderes port nehmen würde. z.B. 12030 und dieses im router weiter leite, müsste es doch auch funktionieren oder?
Hatte auch mal irgendwo gelesen das man für eine vpn verbindung noch udp ports benötigt. Brauch man das hier nicht?
Den Port musst du sowohl in Step 8 als auch in der Config des OpenVPN Servers ändern und in dem Router dann freigeben. UDP Port musst du nicht öffnen.
Hallo.
Ich habe die Anleitung genaustens befolgt, nur eth0 in wlan0 geändert, da ich einen Wlan Stick verwende, und bei der Raspberry-IP die DynDNS Adresse eingetragen.
Bei Schritt 14 habe ich den Server dann neu gestartet und ab diesem Zeitpunkt funktionierte garnichtsmehr. Ich konnte nichtmehr per SSH auf meinen Raspberry Pi zugreifen. Auch nicht per VNC. Ich habe überhaupt keine Verbindung mehr zum Raspberry Pi bekommen.
Weiß jemand woran das liegt?
Kann mir nicht wirklich vorstellen, dass das an OpenVPN liegt. Folglich ist helfen auch schwer…
Hallo Daniel,
Hallo Jan,
bin gerade ebenfalls über das Problem gestolpert, dass bei Nutzung von wlan0 anstelle eth0 die Verbindung zum Raspberry Pi abbricht, nachdem bei Punkt 14 der Anleitung der OpenVPN-Service neu gestartet wurde.
Die folgende Änderung in der Datei /etc/default/ifplugd behebt das Problem:
HOTPLUG_INTERFACES=“all“
abändern in
HOTPLUG_INTERFACES=“eth0 wlan0″
Danke für die gute Anleitung!
[…] OpenVPN Installation auf dem Raspberry Pi Zuerst folgt ihr der ausgezeichneten Anleitung von Jan (PDF) um OpenVPN auf dem Raspberry Pi zu […]
Hallo,
Super Anleitung, danke dafür!!
LG
Freut mich zu lesen 🙂
Hallo! Ich schaffe es nicht laut Anleitung den Openvpn zum laufen zu bringen. Habe schon 3x nach Anleitung alles eingegeben und kontrolliert. Nach Step 14 wird das „virtual private network“ gestoppt und mit einem Fehlen NICHT gestartet.
Ich habe keine Idee woran es liegen könnte und bitte um Hilfe!
Danke und schöne Grüße
Christian
Was sagt denn das OpenVPN Logfile im Ordner /var/log?
Danke für das Tutorial. Schön einfach und funktioniert wunderbar. Ich habe noch einen Verbesserungsvorschlag bezüglich der Schritte 9 und 11. Deine Konfiguration erlaubt es VPN-Clients nicht, Geräte im Intranet (serverseitig) zu erreichen, z.B. NAS-Server, den Router, etc.
Deshalb mein Ersatz für Schritt 9:
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT
sudo iptables -A FORWARD -i eth0 -o tun0 -m state –state RELATED,ESTABLISHED -j ACCEPT
Und der Ersatz für Schritt 11 (crontab) entsprechend:
@reboot sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
@reboot sudo iptables -A FORWARD -i eth0 -o tun0 -m state –state RELATED,ESTAB$
@reboot sudo iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT
Funktioniert wunderbar. Lösungsansatz via: http://serverfault.com/questions/418354/
Danke für den Tipp, ich möchte nämlich unbedingt die Server im Heimnetz erreichen. Leider kommt bei der dritten Begehlszeile die Antwort „Bad Argument -state „. Was läuft da falsch ?
Gruß M
Bist du sicher, dass du bei ‚–state RELATED…‘ auch *zwei* Bindestriche angegeben hast?
klar, es ist egal, ob mit „-“ oder „–“
Leider kann ich hier keine Hardcopy einfügen…
Ist das Dollar Zeichen bei Schritt 11 gewollt?
Hallo,
Hat prima geklappt, nur als ich mich das erstemal verbinden wollte kam diese Fehlermeldung zum Schluss:
All TAP-Win32 adapters on this system are currently in use.
Falls das noch wer hat, hier die Lösung:
http://stackoverflow.com/questions/14896590/openvpn-failed-connection-all-tap-win32-adapters-on-this-system-are-currently
Diese Version funktioniert auf meinem Win7 Rechner tadellos, man muss sie aber als Administrator ausführen.
Über dieses Problem bin ich auch schon mal gestolpert. Gute Idee den Link hier zu posten 🙂
Danke für die Anleitung! Funktioniert bestens.
Ich habe gleich sicherheitshalber Port 443 statt 1194 angegeben, damit VPN auch bei irgendwelchen Netzen geht, die reichlich Ports blockieren.
Unter iOS verwende ich die kostenlose App OpenVPN Connect, die aber eine einzelne .ovpn-Datei erwartet. Dazu raspberrypi.ovpn in einem Texteditor öffnen, die Zeilen ca ca.crt, cert, clientX.crt und key clientX.key entfernen und jeweils zwischen den Zeilen (jeweils ergänzen) … , … und … den Inhalt (also auch die anderen Dateien mal in einem Texteditor öffnen) aus den jeweiligen Dateien, die ihr gerade in der ovpn-Datei ausgetragen habt, reinpasten. Dann irgendwie aufs iPhone schicken (ownCloud, btsync, verschlüsselte Mail etc.) und in OpenVPN Connect öffnen.
Hallo Jan
Leider kann ich auch mit der Anleitung keine Verbindung zu dem OpenVPN-Server herstellen. Weder per Android noch Windows Client.
Was genau müsste ich als RASPBERRY-PI-IP eintragen, wenn der RASPBERRY-Pi die lokale IP 192.168.70.5 hat, aber die Fritzbox z.B. die öffentliche IP 217.217.80.88?
Den UDP-Port 1194 habe ich in der Fritzbox auf Rasperry Pi 192.168.70.5 weitergeleitet. Mehr müsste ich da doch nicht machen, oder?
Über Hilfe und Tipps wäre ich sehr dankbar.
Du musst 192.168.70.5 freigeben. Eine UDP Weiterleitung in der Fritz!Box sollte nicht notwendig sein.
Jetzt habe ich es geschafft, aber die Portweiterleitung auf der Fritzbox ist zwingend notwendig, denn sonst kommt die Anfrage nicht am Rasperry Pi an.
Mit dem Android-Phone habe ich eine VPN inkl. Zugriff einrichten können, aber unter Windows 7 habe ich noch Probleme mit den Routen. Die Verbindung wird aufgebaut und beide Monitore zeigen grün, aber die Routen können nicht erstellt werden. Das werde ich in den nächsten Tagen noch weiter prüfen.
Vielen Dank und weiter so 🙂
Hallo Jan,
kannst Du bitte kurz beschreiben, wie man die Zertifikate zurück setzt bzw. erneuert (Stichwort: Heartbleed Bug), da diese ja als angreifbar gelten. Vielen Dank.
Marco
Wie ich sehe, hast du das Thema bereits in deinem Blog bearbeitet 🙂
Ich habe in der openvpn.conf Datei einen Tippfehler gemacht und möchte diesen jetzt ändern aber immer wenn ich das probiere sagt mir nano permission denied, wenn ich probiere das über den explorer und den Standard Editor zu ändern passiert das gleiche es scheint sogar so zu sein das ich im ganzen Ordner Openvpn nicht schreiben kann.
Wie kriege ich die Schreibrechte in diesen Ordner?
Und betrifft mich das mit Heart bleed bug auch wenn ich den Server danach eingerichtet habe?
MfG
Max
Zur ersten Frage: Einfach
sudo
vor den Befehl schreiben.Zu Heartbleed: Kommt darauf an ob deine installierten Pakete zum Zeitpunkt des Einrichten von OpenVPN sicher waren. Aber prinzipiell denke ich, dass ein kleiner Raspberry Pi wohl eher ein sehr seltenes Angriffsziel wäre 😉
Hallo Jan,
danke für die Anleitung, super gemacht.
Ich habe alles so eingestellt wie Du es beschrieben hast.
Ich habe erfolgreich einen Tunnel aufgebaut ( ist grün und mit 10.8.0.6 verbunden).
Ich habe auch ein Ping erfolgreich gesendet.
Ich kann kein Netzwerk hinter dem Raspberry finden, ich kann nicht mit Putty über VPN auf den Raspi zugreifen und winscp bekomme ich auch nicht hin.
Da ich unerfahren bin und erst noch lerne, bitte ich Dich um einen Tipp oder eine Lösung.
Gruß
Stephan
Ich nehme an, dass du meinst, dass du nicht über den VPN-Tunnel auf das Internet zugreifen kannst. Ich würde mal annehmen, dass in Step 9 bis Step 11 was schief lief, denn dort wird genau dieses Problem angegangen. Am besten versuchst dus noch einmal 😉
Hmm, nicht ganz. Ich möchte auf das entfernte Netzwerk in meiner Wohnung zugreifen können, da ich öfters unterwegs bin.
Step 9 bis 11 wurde genau so ausgeführt.
Dazu habe ich noch Deine Anleitung über DYNDNS auf den Pi aufgespielt.
Funktioniert auch alles, nur kann ich den Rechner bzw. das Netzwerk nicht finden.
Mhhh… da habe ich ehrlich gesagt keine konkret Idee. Sorry.
Wozu ist diese Zeile genau gut?
./pkitool –initca
Im offiziellen howto >https://openvpn.net/index.php/open-source/documentation/howto.html#pki< ist davon nichts zu finden.
Es erstellt das CA-Cert und den dazugehörigen Key.
Danke schnon mal für die Antwort!
Ich habe gedacht das wird mit dieser Zeile erledigt.
./build-ca OpenVPN
Was macht dann die?
Ich zitierte aus der Ausgabe des Befehls: „Generating a 1024 bit RSA private key“. Wenn du genaues verstehen möchtest beschäftige dich am besten mal mit den Strukturen des Gesamtkonstrukts OpenVPN.
Super Tutorial. Funktioniert auch, aber nur wenn bei mir iptables aus ist oder der Befehl iptables -F eingeben wurde.
Habe schon sämtliche Regeln versucht. Bin aber langsam mit meinem Latein am Ende =(
iptables -A FORWARD -m state –state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -s 10.8.0.0/24 -j ACCEPT
iptables -A FORWARD -j REJECT
iptables -I FORWARD -i tun0 -o eth0 -j ACCEPT
iptables -I FORWARD -i eth0 -o tun0 -j ACCEPT
iptables -t nat -I POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
/var/log/messages gibt folgende Meldung:
Apr 25 16:58:07 raspbmc kernel: FORWARD-Raus: IN= OUT=eth0 SRC=192.168.127.19 DST=88.198.230.201 LEN=76 TOS=0x00 PREC=0xC0 TTL=64 ID=7113 DF PROTO=UDP SPT=123 DPT=123 LEN=56
FORWARD-Raus:
iptables -A OUTPUT -j LOG -m limit –limit 5/s –log-prefix „FORWARD-Raus: „
Du scheinst Raspbmc zu verwendet. Das Tutorial ist für Raspbian geschrieben und mein Wissen im Bezug auf Raspbmc ist leider nicht gerade groß. Daher kann ich dir leider nicht helfen, soory.
[…] lassen, wie ich mir das vorgestellt habe. Als Grundlage für die OpenVPN Installation habe ich die Anleitung von Jan Karres genutzt. Abweichungen habe ich bei der Konfiguration der […]
[…] Wir können nun die Komponenten für die Verschlüsselung des OpenVPN Zugangs generieren. Nach der Eingabe des ersten Kommandos wird man nach dem Land als Abkürzung gefragt (DE = Deutschland; AT = Österreich; CH = Schweiz). Alle weiteren Angaben können einfach bestätigt werden, da sie für OpenVPN nicht relevant sind. Dasselbe gilt bei dem zweiten und dritten Kommando, wobei wir dort am Ende mit Y zwei mal bestätigen müssen. Quelle: https://jankarres.de/2013/05/raspberry-pi-openvpn-vpn-server-installieren/ […]
Hallo Jan,
super Anleitung, vielen Dank! Ich hab alles nach der Beschreibung gemacht und es funktioniert soweit ich im Mobilfunknetz bin. Wenn ich im Wlan bin bekomme ich zwar eine Verbindung zum Vpn aber das Internet funktioniert (fast) nicht. Fast, weil ich keine Seiten aufrufen kann aber mit Voip einen Anruf absetzen kann, dieser zustande kommt aber keine Sprache übertragen wird. Hast du eine Idee? Schon mal vielen Dank! Router ist Speedport w723v.
Viele Grüße
Michael
Ohje, ein Speedport. Da hat gefühlt jedes zweite Model eine andere Eigenart. Von dem her kann ich dir da konkret nicht weiterhelfen, aber warum möchtest du netzintern überhaupt den VPN nutzen?
Sorry, nicht netzintern. Möchte im wlan eines Telekom hotspot die VPN-Verbindung zum Raspberry Pi aufbauen. Einen DynDns habe icheeingerichtet. Über dem vpn möchte ich gerne telefonoeren. Ich
überlege gerade eine Fritzbox zu kaufen. Die hat aber eine Vpn-Funktion. Dann brauche ich den Raspberry Pi ja nicht mehr oder?
Sollte dann ausreichend sein.
Hab jetzt eine Fritzbox und habe dort eine feste Route eingetragen. OpenVPN läuft über Raspberry Pi und telefonieren funktioniert jetzt einwandfrei über WLAN mit einem SIP Client 🙂 Grund war wohl die fehlende feste IP-Route, die man im Speedport leider nicht eintragen konnte…
Wenn ich weitere Clients anlegen will muss ich dann nicht die raspberrypi.ovpn um die weiteren Clients erweitern?
Weil in Step 16 steht Client1 muss ersetzt werden!?
Nein, in raspberrypi.ovpn sind Client spezifische angaben. Der Server verwertet die Datei nicht.
key-size ändern?
Erstmal vielen Dank für die Anleitung, hat mir sehr geholfen.
Eine Frage hat sich bei mir aber aufgetan: Lässt sich die key-size irgendwie beeinflussen? Wenn man die Standard-key-size in der openssl.conf ändert, hat das offensichtlich keinen Einfluss. Gibt es da einen Parameter?
Eine schöne Darstellung findest du auf der Webseite von OpenVPN. Ich zitiere: „You may want to increase KEY_SIZE to 2048 if you are paranoid and don’t mind slower key processing, but certainly 1024 is fine for testing purposes.“
Hallo Jan,
erst mal vielen Dank für die Anleitung. Die Einrichtung auf dem Pi hat meiner Meinung nach gut geklappt, wenn ich das als Linux-Laie beurteilen kann.
Leider hab ich jetzt das Problem, dass ich mit OpenVPN nicht auf mein Netzwerk komme.
Hier mal die Meldungen von OpenVPN zum Verbindungsversuch:
Sun Jun 08 22:13:29 2014 OpenVPN 2.3.4 x86_64-w64-mingw32 [SSL (OpenSSL)] [LZO] [PKCS11] [IPv6] built on Jun 5 2014
Sun Jun 08 22:13:29 2014 library versions: OpenSSL 1.0.1h 5 Jun 2014, LZO 2.05
Sun Jun 08 22:13:29 2014 MANAGEMENT: TCP Socket listening on [AF_INET]127.0.0.1:25340
Sun Jun 08 22:13:29 2014 Need hold release from management interface, waiting…
Sun Jun 08 22:13:29 2014 MANAGEMENT: Client connected from [AF_INET]127.0.0.1:25340
Sun Jun 08 22:13:29 2014 MANAGEMENT: CMD ’state on‘
Sun Jun 08 22:13:29 2014 MANAGEMENT: CMD ‚log all on‘
Sun Jun 08 22:13:29 2014 MANAGEMENT: CMD ‚hold off‘
Sun Jun 08 22:13:29 2014 MANAGEMENT: CMD ‚hold release‘
Sun Jun 08 22:13:29 2014 WARNING: No server certificate verification method has been enabled. See http://openvpn.net/howto.html#mitm for more info.
Sun Jun 08 22:13:29 2014 Socket Buffers: R=[8192->8192] S=[8192->8192]
Sun Jun 08 22:13:29 2014 MANAGEMENT: >STATE:1402258409,RESOLVE,,,
Sun Jun 08 22:13:29 2014 UDPv4 link local: [undef]
Sun Jun 08 22:13:29 2014 UDPv4 link remote: [AF_INET]84.58.141.66:1194
Sun Jun 08 22:13:29 2014 MANAGEMENT: >STATE:1402258409,WAIT,,,
Kannst Du da was mit anfangen und ggf. sagen, wo es hängt ?
Schon mal Danke…
Klingt für mich spontan danach, als sei beim Erstellen des Zertifikats etwas schief gegangen (siehe Step 4 bis Step 7).
Hi Jan,
komme leider nur bis hier hin…
./build-ca OpenVPN
gibt folgenden fehler aus:
Please edit the vars script to reflect your configuration,
then source it with „source ./vars“.
Next, to start with a fresh PKI configuration and to delete any
previous certificates and keys, run „./clean-all“.
Finally, you can run this tool (pkitool) to build certificates/keys.
hab ich vorher schon etwas falsch gemacht wohl?
Klingt so als hättest du Step 5 nicht oder nicht ganz bearbeitet.
Hallo, einmal eine Frage 🙂
Muss ich bei Schritt 8 bei „server 10.8.0.0 255.255.255.0“ für 10.8.0.0 meine interne IP Range einsetzen, wie z. B. „server 192.168.2.0 255.255.255.0“, oder ist das egal?
Das passt. Stellt das virtuelle Netzwerk der OpenVPN Konfiguration dar.
hallo!
danke für dieses tolle turorial! so ist es auch einem linux-noob wie mir möglich openvpn zu verwenden 🙂
ich greife jetzt sowohl mit android als auch mit ios auf den openvpn server zu.
was mich aber stört:
wenn ich mein handy verliere oder es gestohlen wird, kann jeder ohne passworteingabe die vpn-app öffnen und sich mit meinem server verbinden.
kann ich zusätzlich eine passworteingabe aktivieren?
lg
Bei dem Kommando aus Step 6 solltest du bei den vom System gestellten Fragen auch ein Passwort definieren können. Außerdem kannst du bei einem Verlust/Diebstahl des Keys dieses auch ungültig machen. Dazu einfach mal nach „openvpn key revoke“ googeln 🙂
ich habe die lösung inzwischen gefunden.
falls jemand die gleiche lösung hat, so funktionierts:
in step 6 einfach statt diesem befehl „./build-key client1“ den hier verwenden „./build-key-pass client1“.
so wird bevor die verbindung aufgebaut wird ein passwort abgefragt…
lg
Erstmal vielen Dank für diesen aber auch die anderen Themen. Lese seit einiger Zeit mit und bin von damals bis heute auch in Linux heran gewachsen, gerade wegen deiner Seite. Heute Scheibe ich dann auch mal etwas für die jenigen wie ich, welche massive Probleme mit dem externen Zugriff auf openvpn und einen Telekom Router w921v haben. Es ist tatsächlich so, dass udp 1194 nicht funktioniert. Habe auch alles probiert, naja bis ich auf die Idee kann, direkt in deiner Anleitung statt udp auf tcp umzustellen. Seit dem funktioniert alles und es wäre schön hier für alle entnervten vielleicht noch einen Hinweis in die Anleitung einzubauen.
Mach weiter so, werde bei Problemen immer zu erst nach Lösungen auf deiner Seite suchen.
Danke dir. Habe deinen Kommentar im Artikel mal verlinkt 😉
Hallo, ich habe in folgender config Datei openvpn.conf und raspberrypi.ovpn denn Port auf TCP umgestellt. In den Router Einstellungen habe ich dies auch gemacht.
Ich habe einmal eine Portfreischaltung und dann eine Portweiterleitung Eingerichtet auch jeweils TCP für PORT 1194, aber es hat nicht funktioniert.
Habe ich irgendwas vergessen?!?!
Vielen Dank im Voraus.
[…] Tutorial wie man OpenVPN auf dem Raspberry Pi […]
Hi, danke für das Tutorial!
Bei mir liefs eigentlich ganz gut bis zum Neustart des Dienstes…
Da wirft er immer diese Meldung bei dem Befehl sudo /etc/init.d/openvpn start
[FAIL] Starting virtual private Network daemon: openvpn failed!
Kann mir jemand dabei helfen?
Vielen Dank!
Klassisch wäre wenn du in der openvpn.conf (siehe Step 8) einen Fehler hättest. Die genaue Ausgabe des Fehlers findest du in dem Ordner /var/log/ entweder in einem eigenen Logfile für OpenVPN oder in den Syslogs.
Wie startet Ihr euren Dienst denn immer?
Also ich mache das so : sudo openvpn –config NAMEDATEI.ovpn
Und schon habe ich ne Verbindung.
Ja, so wie oben beschrieben. Aber jetzt hab ich es hinbekommen. Anscheinend gab es einen Parameter der nicht in der Server config gepasst hat. Jetzt hab ich nur noch ein Proll Lehm mit der Firewall. Hab von einem externen rechner versucht zuzugreifen. Kam aber die Meldung dass der tls handshake fehlschlägt.
Hallo,
erstmal tolle Anleitung. Finde gut das auch jeder Schritt erklärt wurde.
Nur leider funktioniert es bei mir noch nicht :/.
Wenn ich den openvpn Server neustarten möchte, also den Befehl „sudo /etc/init.d/openvpn restart“ eingebe, bekomme ich die Meldung
„[ok] Stopping virtual private network daemon:.
[FAIL] Starting virtual private network daemon: openvpn failed!
Hat vlt jmd ne Idee was da falsch gelaufen sein könnte?
Ich tippe drauf, das wäre zumindest eine häufige Fehlerquelle, dass du in der openvpn.conf (siehe Step 8) einen Fehler hast. Eine genauere Fehlerbeschreibung findest du in den Logs, die du im Ordner /var/log findest.
Muss man die client1.csr wirklich ins Archiv mit reinpacken? Werden die Zertifikate nicht vorher bereits signiert?
Ich verstehe nicht genau, warum in der NAT-Tabelle der Befehl
sudo iptables -t nat -A POSTROUTING -s 10.0.0.0/8 ! -d 10.0.0.0/8 -o eth0 -j MASQUERADE
eingesetzt wird. Du hast doch bei der Konfiguration des OpenVPN-Servers die Zeile „server 10.8.0.0 255.255.255.0“ (dies entspricht 10.8.0.0/24) benutzt. Warum
werden jetzt in der NAT-Tabelle Anfragen aus dem Netz mit der Source- und Destination-IP 10.0.0.0/8 weitergeleitet? Und vor allem warum Destination?
Ich habe es zwar nicht ausprobiert, aber „reicht“ der Befehl
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
nicht ausreichend?
Wenn du alle Pakete, die als Zieladresse die 10.0.0.0/8 haben, auf das eth0-interface weiterleitest, bedeutet das doch, dass die Clients untereinander nicht kommunizieren können oder?
Entschuldige bitte meine Fragen. Ich bin gerade dabei, mich in das Thema einzuarbeiten. Das Tutorial ist wirklich super und es läuft auch alles. Wäre dir sehr dankbar, wenn du meine Fragen beantworten könntest.
Gruß Steve
Ich muss zugeben Netzwerktechnik ist nicht so meins. Deine Erläuterung klingt nachvollziehbar und ich habe es auch mal ausprobiert. Funktioniert einwandfrei! Habe es folglich ebenfalls im Artikel ausgetauscht.
Da muss ich dir zustimmen, braucht man nicht. Habe das Tutorial entsprechend verbessert. Danke!
Gutes Tut. Step 11 funktioniert bei mir leider nicht. Nach jedem Neustart muss ich den Befehl manuell eingeben. Woran kann das liegen?
Hast du die Zeile denn am Ende der Datei in eine neue Zeile eingefügt, wie beschrieben?
Hallo Jan, eine Superanleitung, die auch ich als Linux-Neuling nachbauen konnte. Dafür vielen Dank. Auch wenn ich das Eine oder Andere nicht bis ins Detail nachvollziehen konnte. Im internen Netzwerk funktioniert das zwar auch nicht auf Anhieb, aber das hatte was mit diesem Link zu tun:
Zitat: „Einen OpenVPN Client für Windows gibts unter http://openvpn.se/“ Zitatende
Auf openvpn.se habe ich nur Dateien von 2005 gefunden. Mit denen hat praktisch gar nichts funktioniert. Habe dann noch etwas gegoogelt und diesen Link gefunden, in dem für jeden was dabei ist: http://openvpn.net/index.php/download/community-downloads.html
Wie gesagt, funktioniert jetzt intern alles super. Aber das ist ja nicht Sinn und Zweck der Übung.
Probleme habe ich, wenn ich mich von „Draußen“ verbinden will. Offensichtlich liegt es am Router: Speedport W921V. Dem Hinweis von Marcus bin ich bereits nachgegangen, aber es hat nichts gebracht. Gestern habe ich ein VPN-Netzt mit Win7 Win8 Win7 aufegbaut. Und das kann ich auch von Außen erreichen. Dort wird ja ein anderes Protokoll und ein anderer Port benutzt. Nun dachte ich mir, vielleicht kann der Port 1194 beim 921er nicht freigegeben werden. Also habe ich die openvpn.conf-Datei und die rasperrypi.conf-Datei angepasst und dort den Port 1723 eingetragen. Intern funktioniert das wieder, aber von „Draußen“ komm ich nicht rein.
Ich erhalte immer den gleichen Fehler
Wed Aug 13 21:16:46 2014 MANAGEMENT: >STATE:1407957406,WAIT,,,
Wed Aug 13 21:17:47 2014 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
Wed Aug 13 21:17:47 2014 TLS Error: TLS handshake failed
Wed Aug 13 21:17:47 2014 SIGUSR1[soft,tls-error] received, process restarting
Wed Aug 13 21:17:47 2014 MANAGEMENT: >STATE:1407957467,RECONNECTING,tls-error,,
Wed Aug 13 21:17:47 2014 Restart pause, 2 second(s)
Ja und dann geht das wieder von vorne los 🙁
Gibt es da was, was ich falsch mache. Wie gesagt es hat auch mit ursprünglichen Konfiguration nicht funktioniert.
Vielen Dank
Thomas
Habe den Client mal ersetzt. Hast recht, geringfügig neuer 😉 Danke!
Zu deinem Problem: Für mich klingt das so als bei der Port nicht ordentlich freigegeben. Du musst Port 1194 tcp auf den Raspberry Pi in deinem Speedport freigeben. Dann sollte es funktionieren 😉
in aqanleitung oben steht aber in der openvpn.conf udp und nciht tcp 😉
Einfach auf TCP umschreiben und dann geht es. Bei einem Telekomrouter geht es nicht anders als auf TCP zu legen.
dev tun
client
proto tcp
remote DEINSERVERODERIP 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client1.crt
key client1.key
comp-lzo
verb 3
Bei anderen Routern mit denen ich das getestet habe gabs nie so ein Problem. Aber Speedports sind sowieso eine Geschichte für dich ^^
Relativ einfach zu verstehen, warum die Telekom ein gewisses Interesse daran hat, es einigen nicht zu einfach zu machen und das Streaming von TV-Sender auch außerhalb von zu Hause zu ermöglichen. Mal abgesehen von kostenlosen VoIP Verbindungen.
Ist doch irgendwie komisch, dass genau der Port 1194 UDP nicht geht ;D
Vielen Dank an Alle, die mir hier geholfen haben. Der Tunnel wird nun per TCP aufgebaut. Mal sehen, was noch so alles möglich ist.
PS: Habe auch noch mal die gesamte Anleitung durchlaufen und die cert und keys neu erstellt. Vielleicht lag ja auch da der Fehler drin.
Thomas
ICh hab eine frage, wie bekomme es hin das 2raspberry sich per vpn verbinden so das ich von beiden netzwerken auf alle geräte zugreifen kann (LAN-LAN kopplung)?
Mit dem Zugriff auf das interne Netzwerk muss ich mich selbst noch beschäftigen, sodass ich momentan keine Antwort auf deine Frage parat habe.
Hallo
Erstmal danke für diese super Anleitung! Es funktioniert an sich schon mal 🙂
Meine Frage ist nun, was ich tun muss, um Split Tunnel zu aktivieren. Wenn ich richtig informiert bin, würde das dann heissen, dass nicht aller Internetverkehr durch den VPN geschickt wird, ich jedoch trotzdem virtuell in meinem eigenen Netzwerk bin, oder?
Über eine Antwort würde ich mich sehr freuen. Und ansonsten: Mach weiter so! Deine Anleitungen sind super!
Gruss, Nicolas
Da habe ich leider selbst zu wenig Ahnung, als dass ich helfen könnte. Sorry.
Hallo!
Wie immer eine super Anleitung! Ich konnte allerdings nach Schritt 14 nicht mehr übers Netz (eth0 & wlan0) auf mein Raspbi zugreifen. Nach einem sudo /etc/init.d/networks restart hat es dann aber geklappt und seither kann ich mich von überall her verbinden 🙂 Könntest oder solltest du Schritt 14 entsprechend ergänzen?
Habe ich ehrlich gesagt noch nicht gehört und kann mir auch kaum vorstellen, dass dies direkt mit dem Tutorial in Verbindung steht, weshalb ich das im Artikel nicht ergänzen werde, jedoch hier in den Kommentaren einfach mal stehen lasse 🙂
Gut möglich, dass es an meinem Router (inkl. DHCP) liegt und ein Zusammenhang mit der Einrichtung der Portweiterleitung und anschliessenden Routerneustart besteht…
Wie kann ich denn Schlüssel erstellen, die länger als 1024 Bit sind (z.B. 2048 oder 4096)?
Da kann ich dich auf meine Antwort von Mai zur selben Frage in diesen Kommentaren verweisen.
Ähm ich hab ab schon in Schritt 3 ein problem…. unter „/usr/share/doc/“ ist kein openvpn vorhanen. Schritt 1 und 2 wie oben ausgeführt. Eventuell neue Versionen die anders arbeiten. ich habe mir mal erspart alle kommentare durchzulesen, da ich vermute hätten andere das problem auch würde es ein update im Blogpost stehn.
Mir ist aufgefallen das im schritt 5 mit einer openssl version 1.0.0 gearbeitet wird. Ich denk grade an Heartbleed. gibt es da vll inzwischen was neues?
Bzgl. Heartbleed: Das ist schon längst in den Debian Distributionen gefixt 😉
Zur eigentlichen Frage: Wenn das Verzeichnis nicht existiert ist für mich die Frage ob du überhaupt Raspbian oder eine vergleichbare Distribution verwendest…
Hallo Jan,
Vielen Dank für dein Tutorial. Meine VPN Verbindung steht und ich komme vom Client-Netzwerk in das Server Netzwerk. Was ich nicht hin bekomme, ist eine Verbindung vom Server Netzwerk zum Client Netzwerk. Ich denke es fehlt noch eine Route im VpnServer. Könntest du mir bitte weiterhelfen?
Das muss ich selbst noch ergründen, weshalb ich dir da momentan nicht helfen kann.
Hallo Jan!
Danke für dein tolles Tutorial! Alles ist wirklich sehr einfach und verständlich erklärt.
Nur habe ich bei einem Schritt einen Verbesserungsvorschlag, da mich dieser Fehler sehr viel Zeit gekostet hat.
Bei Schritt 8 sollten alle Pfade mit Anführungszeichen versehen werden,
also z.B: ca „/etc/openvpn/easy-rsa/keys/ca.crt“
Danach hat alles wunderbar funktioniert.
Wenn man keine unnötigen Leerzeichen irgendwo zusätzlich einbaut brauchst es keine Anführungsstriche 😉
Leider bekomme ich bei „source vars“ eine Fehlermeldung:
bash: /etc/openvpn/easy-rsa/openssl-1.0.0.cnf: Keine Berechtigung
Kann mir da evtl jemand weiterhelfen?!
Bei welchem Schritt bekommst du denn diese Fehlermeldung?
Kann ich diese Anleitung auch für einen normalen Pc mit Debian 7 verwenden oder muss etwas abgeändert werden ?
Sollte 1-zu-1 funktionieren.
Hallo habe es nach der Anleitung gemacht und zwar mit tcp statt mit udp,
über Windows bekomme ich zwar eine Verbindung zu stande aber kann die internen Geräte in meinem Openvpn server netz nicht anpingen.
mfg
Hi David. Ich muss die OpenVPN Gui unter Windows mit der Option „Programm als Administrator ausführen“ laufen lassen, sonst kann ich auch keine Geräte anpingen…
Neues Android-Phone und nu?
Nach deiner super Anleitung hat alles lange Zeit tadellos funktioniert. Jetzt habe ich ein neues Phone, habe OpenVPN Connect neu installiert und wollte die Zertifikate usw. importieren.
Nun mault mich OpenVPN an, die Dateien wären nicht UTF8-kompatibel.
Was kann ich machen?
VG
Mario
Das Thema ist zwar schon wieder ein wenig älter aber eins verstehe ich nicht: ich sollte durch WinSCP eine Datei mit der Endung .tar.gz finden? ich finde leider nur die tgz, wie sie ja auch im Tutorial erstellt wird.
Falls es doch die richtige Datei sein soll, wo muss ich die hinkopieren? ich hatte vorher noch nie etwas mit VPN zu tun und OpenVPN ist daher auch Neuland für mich 😀
Danke im Voraus
Interessant, dass dies vor dir noch niemand angemerkt hat. Habe es verbessert, danke!
Wo du die Dateien aus dem Packet hinkopieren musst hängt von dem verwendenten VPN Client ab. Folglich am besten dort man in den FAQs o.ä. ansehen 🙂
Hallo Jan,
ich habe mich an deine Anleitung gehalten. Wenn ich mich innerhalb meines Netzwerkes verbinde habe ich keine Probleme (und in der config meine interne IP steht), sobald ich aber meine dyndns adresse eintrage und das Netz von außen Erreichen möchte geht es einfach nicht. Eine Weiterleitung ist eingerichtet.
Es hat auch eine Zeitlang funktioniert… dyndns löst auch korrekt auf.
Verwende bei den Portfreigabe doch mal TCP anstatt UDP.
Vielen dank für dieses Tutorial funktioniert Super ^^
Leider geht seitdem meine Owncloud nicht mehr welche ich mit lighthttpd laufen lassen.
Kann es sein das eine Dyndns nur für eine Sache geht und somit das andere quasi blockiert?
Also die Website oder Owncloud kann ich gar nicht mehr erreichen egal ob über eine VPN Verbindung oder nicht
Über eine DynDNS können auf verschiedenen Ports verschiedene Dienste laufen. Hast du denn schon mal überprüft ob alle benötigen Dienste (OpenVPN, lighthttpd und wahrscheinlich php5-fpm) laufen, wie auch ob alle benötigten Ports freigegeben wurden?
Bei step 9 (-> sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE) kommt nach Eingabe bei mir die Meldung:
iptables v1.4.14: host/network `.10.8.0.0´ not found
Try `aptables -h´ or ´iptables –help´ for more information.
BTW: Anleitung hat beim ersten Anlauf nicht funktioniert, zwischen 12 und 13 kam vorher eine Fehlermeldung.
Hat jemand eine Idee was ich machen kann??????
Hi Jan,
danke erstmal für das Tutorial.
Leider habe ich von meinem VPN Client Probleme mit dem Zugriff auf den Samba Server (mit dem angelegten Sambauser)
Ich hab die Weiterleitung wie schon disktutiert wie folgt abgeändert:
http://serverfault.com/questions/418354/how-to-set-up-openvpn-to-let-the-vpn-clients-to-access-all-the-servers-inside-th
Trotzdem erhalte ich die Fehlermeldung keine Berechtigung auf die Freigabe zu haben (auf den pi komme ich drauf nur an der Freigabe kann ich mich nicht anmelden)
Hast du für das Problem inzwischen eine Lösung gefunden? Ich hänge nämlich an genau der gleichen Stelle…
Klasse Anleitung, mit der auch ich als Linux-Noob einen VPN-Server auf meinem pi installieren konnte!
Wie kann ich nun meine inzwischen etwas ältliche Version so upgraden, dass ich den vorhandenen Key weiter nutzen kann oder ist das generell nicht möglich/gewollt?
Vielen Dank schonmal für die Hilfe.
Da du OpenVPN und OpenSSL über den Paketmanager APT installiert hast kannst du diese Pakete mit diesem updaten, mittels folgenden Kommandos:
sudo apt-get update && sudo apt-get upgrade
Super Anleitung. Die Verbindug zum Server funktioniert bei mir auch und ich bekomme dann eine 10.193.45.6 als IP zugewiesen. Dieses Subnetz passt aber gar nicht zu meinem Netz Zuhaus, also kann ich dann ja auch nicht auf die Geräte Zuhaus zugreifen. Was muss ich einstellen bzw. wo stelle ich es ein damit ich eine Passende IP zu meinem Netz bekomme?
Das steht schon seit langem auf meine Todo-Liste. Habe spontan jedoch keine Lösung für das Problem, sorry.
Hallo,
Ich habe jetzt auf einem Pi den OpenVPN Server installiert. Klappt soweit alles. Jetzt will ein auf einem 2. Pi als OpenVPN Client einrichten. Dieser 2. PI ist an einem UMTS Router angeschlossen ( dieser steht im Pferdstall ohne Internetzugang) an dem auch eine IP Kamera hängt. Jetzt soll der OpneVPN Client einen Tunnel zum Server aufbauen damit ich anschließen von meinem iPhone auf die IP Kamera zugreifen kann.
Dabei stehe ich jetzt etwas auf dem Schlauch. Ist mein erstes „Projekt“ mit OpneVPN und Raspberry. Kann mir hierfür jemand in paar Tips geben, damit mein gedanklicher Knoten platzt 🙂
Danke
Andreas Kohler
Schönes Tutorial! Ich nutze mitlerweile einen vServer nach dieser Anleitung:
http://www.kammerath.net/ubuntu-openvpn-server-konfigurieren.html
Das Problem war bei mir mit dem OpenVPN Server auf dem Raspberry Pi einfach, dass die SD-Karte mit Arch anfing nach ein paar Monaten Lesefehler zu bekommen. Das geschah meistens dann wenn ich den OpenVPN Server am nötigsten brauchte.
Hallo,
mühsam ernährt sich das Eichhörnchen. Langsam komme ich voran. 2 Fragen stellen sich mir noch, zu denen ich noch keine Antwort finden konnte.
1. wie kann ich für die Clients eine feste IP zuweisen?
2. wie kann ich abfragen welche clients am VPN Server angemeldet sind?
Zu 1: Da gibts auf thomas-leister.de eine knappe Abhandlung darüber.
Zu 2: Dazu denke ich müsstest du dir ein Script basteln, dass die Logs unter /var/logs analysiert.
Hallo,
Ich habe dieses Tutorial durchgemacht und habe bemerkt, dass es bei mir die Datei dh1024.pem gibt sondern nur 01.pem und 02.pem. Ich habe also dh1024 mit 01.pem ersetzt und erhalte folgende Fehlermeldung im Log:
Cannot load DH parameters from /etc/openvpn/easy-rsa/keys/01.pem: error:0906D06C:PEM routines:PEM_read_bio:no start line
Es lag daran, dass mein ./build-dh unterbrochen wurde. Jetzt konnte ich openVPN starten 🙂
An meinem Client erschien bei der Anmeldung folgende Warnmeldung:
„WARNING: No server certificate verification method has been enabled. See http://openvpn.net/howto.html#mitm for more info.“
Nach der Beschreibung auf der verlinkten Seite habe ich die Zeile „remote-cert-tls server“ in die in Step 12 erstellte Datei „raspberrypi.ovpn“ eingefügt.
Die o.g. Warnmeldung ist damit verschwunden, stattdessen erscheinen einige Validierungsmeldungen zur Verwendung des Zertifikats.
Danke für das einfach nachzuvollziehende Tutorial, Andreas
Super Anleitung, allerdings hat sie bei mir nicht zu 100% funktioniert. Ich verwende ebenfalls einen Speedport der Telekom und musste zunächst den Port auf den TCP-Port 443 ändern – aber jedes mal nach dem die Telekom eine Zwangstrennung durchgeführt hatte, konnte keine Verbindung mehr aufgebaut werden.
Folgender Zusatz in der Datei openvpn.conf war nötig, damit auch nach einer Zwangstrennung der OpenVPN-Server erreichbar ist:
ping-timer-rem
push „ping-timer-rem“
Wie muss ich die anleitung um schreiben, so das öffentrliche ipv6 addresse genutzt werden? DS-lite opfer.
Das ist glaube ich etwas aufwändiger. Da kann ich dir mit diesem Artikel leider nicht dienen.
Hallo,
schau doch mal in meinen Thread (hoffe das ist hier erlaubt):
http://www.ip-phone-forum.de/showthread.php?t=272583
Da habe ich bschrieben, wie man trotz DSlite (bin selbst betroffen) über OpenVPN sicher auf seine Geräte zugreifen kann.
Evtl. hilft das auch Dir.
lG
TSCH
Logo ist das erlaubt 😀 Solange es sinnvoll ist und hilft, sind externe Links doch für alle hier mitlesenden nützlich 😉
Einen Kostenplflichten dienst als lösung für einen bastel pc, ist natürlich eine schlaue idee.
Aber bitte sehr, gern geschehen.
5.-EUR/Jahr finde ich wesentlich günstiger als 5.-EUR pro Monat, die mir mein ISP angeboten hat.
Und ich bin mit der Lösung sehr zufrieden und gönne dem Dienstleister das kleine Geld. Hat mir zumindest (und inzwischen auch anderen) sehr geholfen.
Die Polemik Deiner Antwort ist mir nicht entgangen.
Aber wer so auf eine gut gemeinte Antwort reagiert,..
Wen man stats TUN TAP nutzten möchte, wieviel muss man dan umstellen?
Hallo Jan,
Vielen Dank für das Tutorial. Ich habe als Linux Anfänger ein zwei Fragen dazu:
Und zwar ist es normal, dass wenn ich meine dyndns adresse von no-ip verwende in meiner server config, dass dann immer meine externe, also die echte IP Adresse meines Providers (Kabelmodem mit eigenem Router) angezeigt wird, wenn ich mit meinem über ovpn verbundenen Client eine whois Abfrage übers internet mache??
DNS-Leak Tests sind negativ, der Eintrag von Open DNS in der Server config funktioniert ürbigens.
Hab ich da irgendwo einen Fehler eingebaut, bzw wird etwas nicht richtig geroutet, oder ist es normal, dass bei IP Checks zB über whatismyip.com dann trotzdem überall meine externe IP aufscheint? Sollte dort nicht 10.8.0.0 stehen, oder 192.168.1.104 also die IP meines Raspberry?
Ich blicke da nicht durch 🙁
Zweite Frage: wie kann ich prüfen, ob tatsächlich alle Daten verschlüsselt sind und über OpenVPN laufen? Ich meine, wenn ich mich verbinde über externe Clients wie zB Android Handy oder Ipad, dann bekomme ich über die Openvpn app ein grünes Häckchen, und kann alle Seiten aufrufen, aber heisst dass auch das alles passt?
Vielen dank im voraus und lieben Gruß
192.168.1.104 oder 10.8.0.0 sind interne IP-Adressen. Wenn du über deinen OpenVPN Server online gehst hast du die externe IP-Adresse deines Servers (in dem Fall deines DSL Anschlusses). Wenn du diese IP-Adresse aus einem anderen Netz hast und mit dem OpenVPN Server verbunden bist hast du zugleich überprüft ob die Verbindung zum VPN-Server steht.
Klasse, Vielen Dank Jan! Ich bin noch immer begeistert wie reibungslos der Raspi eigentlich den ganzen Traffic handelt. Mittlerweile laufen erfolgreich 5 Clients mit eigenen Keys über den Openvpn Pi (teilweise gleichzeitig) und sogar Videos werden tadellos gestreamt.
Geprüft habe ich die Verschlüsselung mittlweile mit Wireshark. Alles in Ordnung, perfekt verschlusselt 🙂
Kann nur jedem empfehlen sich nen eigenen VPN mit dem Raspi zu basteln. Läuft tadellos wenn man sich erstmal korrekt durch diverse Tutorials gearbeitet hat!!
Lg
Hallo,
super Anleitung! Hat gut funktioniert und dank deiner Erklärungen kann man auch nachvollziehen, was die einzelnen Befehle tun.
Ich hätte noch eine Ergänzung, die Du vielleicht als optionalen Schritt hinzufügen kannst. Nämlich die zusätzliche Authentifizierung über Username und Passwort (nur Passwort funzt z.B. mit dem Android Client nicht). Nach viel Trial and error hab ich es endlich hinbekommen.
Dazu muss in der openvpn.conf hinzugefügt werden:
plugin /usr/lib/openvpn/openvpn-auth-pam.so login
username-as-common-name
und in der client config raspberrypi.ovpn:
auth-user-pass
OVPN Server Neustart nicht vergessen. 😉
P.S.: soweit ich das verstanden habe, genügt es, wenn man mit „adduser“ und „passwd“ unter Linux einfach einen neuen Benutzer anlegt, der dann auch für die Authentifizierung genutzt werden kann (falls man den User pi nicht verwenden möchte).
Für die Authentifizierung verwenden wir in dem Tutorial ein Zertifikat, was als sicherer als Benutzername und Passwort angesehen werden kann.
Ich komme vom server netz nicht auf das netzt des clients (pi2 als client), aber anders rum geht alles, was könnte das sein?
Hab alles nach Anleitung gemacht. VPN Tunnel baut sich ohne jegliche Probleme auf, jedoch kann ich mein internes Netz 192.168.x.x nicht anpingen oder im Internet surfen. IP Forward ist an. Ich glaube irgendwas stimmt die die IPTABLES nicht, aber ich komme leider auf keinen grünen Zweig.
By the way: Mein Raspi läuft als WLAN Bridge, kann das damit zusammen hängen, dass ich IPTABLES über br0 konfigurieren muss?
Wie das funktioniert habe ich selbst noch nicht herausgefunden. Soll heißen mit diesem Tutorial kannst du nicht auf das interne Netz zugreifen.
Vielleicht muss ich mal rpi-update ausführe, weil manche danach schon erfolg hatten. Nur mit meinen Configs kann ich im Moment noch nicht auf das interne Netz zugreifen. Hab dein Tut schon mal hergenommen für VPN und damals hat alles hervorragend funktioniert.
Ich komme irgendwie auf keinen grünen Zweig habe jetzt ein rpi-update gemacht, das auch nichts gebracht hat.
Folgende Logs bekomme ich von Tunnelblick:
2015-04-20 22:12:14 /sbin/route add -net 87.180.126.215 192.168.0.1 255.255.255.255
add net x.x.x.x: gateway 192.168.0.1
2015-04-20 22:12:14 /sbin/route add -net 0.0.0.0 10.8.0.5 128.0.0.0
add net 0.0.0.0: gateway 10.8.0.5
2015-04-20 22:12:14 /sbin/route add -net 128.0.0.0 10.8.0.5 128.0.0.0
add net 128.0.0.0: gateway 10.8.0.5
2015-04-20 22:12:14 MANAGEMENT: >STATE:1429560734,ADD_ROUTES,,,
2015-04-20 22:12:14 /sbin/route add -net 192.168.x.0 10.8.0.5 255.255.255.0
add net 192.168.X.0: gateway 10.8.0.5
2015-04-20 22:12:14 /sbin/route add -net 10.8.0.0 10.8.0.5 255.255.255.0
add net 10.8.0.0: gateway 10.8.0.5
2015-04-20 22:12:14 /sbin/route add -net 10.8.0.0 10.8.0.5 255.255.255.0
route: writing to routing socket: File exists
add net 10.8.0.0: gateway 10.8.0.5: File exists
Ich frage mich, wieso er beim Internen Netzwerk ein GW mit der IP 10.8.0.5 hat…
Hab sämtliche Einstellungen versucht, ich bekomme nur den Tunnel aufgebaut ohne Zugriff auf das interne LAN.
Ich vermute, ein Teil der Probleme hier resultiert daraus, dass Du am Anfang des Tutorials nicht sicher stellst, dass alles auf dem aktuellsten Stand ist. Ich hab die Schritte mit einem frisch installierten Raspbian gemacht. Da ging es am Ende nicht. Der Server startete nicht neu.
Ich hab Raspbian dann neu installiert und erst einmal apt-get upgrade und rpi-update durchlaufen lassen. Danach ging es.
Ansonsten ist das ein wirklich gutes Tutorial! Danke schön!
Dafür gibt es das Raspbian installieren Tutorial, sofern man sich mit Linux nicht so auskennt 😉
[…] Jan Karres habe ich eine sehr gute Anleitung gefunden, mit der OpenVPN auf dem Raspberry Pi einfach zu installieren ist. Die Anleitung ist so einfach, dass man den einzigen […]
Hallo
ich habe mein RPI wie nach der Anleitung beschrieben, den Openvpn Server installiert. Wenn ich mich mit Windows oder iOS verbinde, dann kann ich kein Internet Zugriff herstellen.
Die IP und die DNS Adresse wird noch richtig übermittelt aber als IPv4-Subnetzmaske wird 255.255.255.252 anstatt 255.255.255.0 eingetragen. Außerdem bleibt die Spalte IPv4-Standardgateway leer. (Angaben von Windows)
Den RPI 1 B+ habe ich neu gekauft und Raspbiani installiert.
Die aktuelle Firmware ist auch installiert.
Habt ihr eine Idee wie ich das Problem lösen kann?
Nils
Ich tippe mal, dass du in Step 9 bis Step 11 einen Fehler gemacht hast, denn in diesen wird das für den Zugriff notwendige Routing definiert.
Hallo
Danke für deine schnelle Antwort. Ich habe den Fehler gefunden.
Das OpenVPN Programm für Windows muss als Administrator gestartet werden und die Informationen im Netzwerk und Freigabecenter müssen ignoriert werden.
Vielen Dank für die Anleitung.
Hallo. Der OpenVPN Server auf meinem Pi werkelt jetzt schon eine ganze Weile problemlos, auch dank dieser Anleitung hier 🙂 Eine Frage stellt sich mir aber noch: Welche Daten müssen gesichert werden, damit im Falle eines Falles der OpenVPN Server wieder hergestellt werden kann, ohne dass man das gesamte Prozedere wieder durchlaufen muss. Klar: ich kann ein Image von der SD-Karte ziehen und dieses zurückladen. Unter Umständen kopiere ich dann aber allfällige Fehler mit. Oder ich möchte den OpenVPN Server von meinem alten Pi auf den Neuen übertragen – besteht da eine Idee wie das erfolgen kann ohne komplette Neuinstallation?
Ohne ein gesamtes Image wirst du nicht alles sichern können. Folglich ist das meiner Meinung nach die sinnvollste Methode.
Hm.. Vielleicht habe ich mich nicht korrekt ausgedrückt. Mir geht es eigentlich um die Zertifikate und Keys auf dem Server, also das was in Step 5, 6, 7 erstellt wird… Lässt sich das sichern und wiederherstellen, damit bei einem Ausfall vom Server nicht auch alle Clients neu konfiguriert werden müssen?
Dafür bietet es sich an die ganze Konfiguration von OpenVPN, die du unter /etc/openvpn findest, zu sichern.
Erst mal danke für die klasse Anleitung.
Es gibt noch ein Problem das beim Erstellen beachtet werden muss. Kein Problem dieser Anleitung, eher ein Grundsätzliches.
Bei Punkt 6
(./build-ca, ./build-key-server und ./build-key client1)
werden diverse Informationen abgefragt. Wenn man bei „Common Name“ den gleichen Namen verwendet geht das schief und die „client1.crt“ ist leer, hat also die Länge 0.
Wird diese dann Importiert und Benutzen will klappt das natürlich nicht. Und dann geht die Sucherei los. Das hat mich gerade 2-Stunden gekostet 🙁
Die Lösung hab ich übrigens auf https://community.openvpn.net/openvpn/ticket/229 gefunden.
Für den Fall das jemandem das gleiche passiert.
Bei mir hat (vermutlich seit dem Update auf Jessie) die Weiterleitung nicht richtig funktioniert. Man konnte sich zwar mit dem Server verbinden, jedoch nicht auf das Internet zugreifen.
Die Lösung habe ich hier gefunden: https://wiki.debian.org/OpenVPN#Forward_traffic_via_VPN
Man muss IP forwarding aktivieren. Entweder temporär:
echo 1 > /proc/sys/net/ipv4/ip_forward
oder permanent
net.ipv4.ip_forward = 1
in der /etc/sysctl.conf auskommentieren.
Das steht so auch im obigen Artikel 🙂
Zunächst einmal: auch eine Weile nach der erstellung noch immer ein super Tutorial.
Es hat alles (beim 2. versuch, nachdem ich mich auch an die komplette Anleitung gehalten habe) einwandfrei funktioniert.
Ich kann jetzt auch von unterwegs meinen Ventilator oder Licht für meine Pflanzen schalten usw.
Jetzt zu einer Frage meinerseits:
Ist es möglich den zugriff im lokalen Netzwerk (das Netz in dem der Raspberry Pi sich befindet) zu beschränken auf ein paar Ports oder evtl nur auf den Raspberry Pi?
Allerdings will ich weiterhin auch aufs „normale Internet“ zugreifen können.
Ich hoffe man versteht meine Frage
Viele Grüße
Jonas
Steht auf der Todo-Liste. Werde ich hoffentlich in Kürze dazu kommen 😉
Wenn ich das richtig verstehe, so sollte am Ende sämtlicher Traffic über mein Netz zuhause laufen, korrekt? Ich müsste als IP bei wieistmeineip.de also die IP meines Internetanschlusses sehen, nicht die des Netzes von dem aus ich den Tunnel aufbaue, oder? Das ist bei mir aber der Fall, obwohl OpenVPN eine erfolgreiche Verbindung meldet, mir eine lokale IP gibt und ich meinen Raspberry auch anpingen kann. Ich habe auch die Schritte 9-11 hier 2 Mal durchgeführt, nur um sicher zu gehen.
Wo kann mein Fehler liegen?
Gruß
Arne
Genau so wie beschrieben sollte es sein. Schau dir mal die Logfiles deines OpenVPN Clients an ob du dort etwas auffällig findest.
[…] https://jankarres.de/2013/05/raspberry-pi-openvpn-vpn-server-installieren/ […]
Hallo, ich hänge bereits bei Schritt 3 fest:-( es gibt den zu kopierenden Ordner nicht bei mir. Im Ordner /usr/share/doc/openvpn/examples gibts bei mir nur die 3 Ordner:
sample-config-files
sample-keys
sample-scripts
Was kann ich nun tun?
Welches Betriebsystem verwendest du denn? Dieser Artikel ist für Raspbian (Debian) ausgelegt und ich könnte mir vorstellen, dass in einem anderen Betriebssystem die Ordnerstruktur eine andere ist.
Ich nutze auch Raspbian dafür. Das hier genannte Problem habe ich nur mit einer Neuinstallation des Betriebssystems gelöst bekommen. Nun hänge ich aber an anderer Stelle fest: ich bekomme, wie schon öfter hier gelesen, die Fehlermeldung
[FAIL] Starting private network daemon: openvpn server failed!
Habe dann versucht in der log-Datei nachzusehen mit „sudo nano /var/log/openvpn-status.log.“
Aber die ist bei mir irgendwie leer:-/ Was kann ich sonst tun? Habe alle Dateien auch nochmal kontrolliert aus den vorherigen Schritten. Und neu installiert habe ich das Betriebssystem auch schon:-( Wie komme ich sonst erstmal in das Logfile?
Wenn ich dem Logfile nichts steht schau doch mal in den syslog ob du dort eine Fehlerausgabe findest.
cat /var/log/syslog
Hm da kommt bei mir nichts drin vor was die Begriffe vpn oder openvpn enthält. Und wenn auch kein Eintrag zu den Zeiten wo ich den openvpn server starten will. Auf meinem Pi läuft ein FHEM-Server, das sollte ihn aber nicht weiter stören oder?
Solle nichts ausmachen. Wobei ich ohne Fehlermeldung leider auch keine Chance habe dir weiter zu helfen. Sorry.
Danke für die gelungene Anleitung. Ein Problem habe ich wenn Raspbian auf dem RPI ein update bekommt muss ich den Schritt 9 immer wiederholen, um wieder Zugriff auf das Internet zu bekommen
Hast du einen Tipp wie man das vermeiden könnte ?
Hi
Erst mal Danke für die Anleitung. Ich hab das gleiche Problem wie der Jakob. Wenn man neu startet dann zieht der cron job nicht.
sudo sh -c ‚echo 1 > /proc/sys/net/ipv4/ip_forward‘
sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
Das muss immer wieder ausgeführt werden. Gibts hier evtl was?
Achtung bei der Weiterleitung auf UDP achten. Hatte TCP drin :/
Hallo.
Vielen Dank für die Anleitung. Leider haperts bei mir schon bei Step3. :-.(
Bei dem Befehl:
sudo cp -r /usr/share/doc/openvpn/examples/easy-rsa/2.0 ./easy-rsa
bekomme ich die Fehlermeldung, dass das Verzeichnis nicht existiert:
cp: der Aufruf von stat für »/usr/share/doc/openvpn/examples/easy-rsa/2.0“ ist nicht möglich: Datei oder Verzeichnis nicht gefunden
Das stimmt auch, denn es gibt in …/examples nur:
/usr/share/doc/openvpn/examples/sample-config-files
/usr/share/doc/openvpn/examples/sample-keys
/usr/share/doc/openvpn/examples/sample-scripts
Welches ist das richtige Verzeichnis und die nächste Frage ist, passt es dann überhaupt mit den Folgeschritten?
Der letzte Eintrag ist schon knapp 2 Jahre her und mir scheint da einfach die Zeit weiter gegangen zu sein… Ich finde aber auch nichts aktuelleres.
Bei mir das selbe. Der Ordner existiert nicht und ich komme nicht weiter.
Wenn es den Ordner easy-rsa nicht gibt, dann musst du ihn manuell downloaden.
Weitere Infos und link:
https://openvpn.net/index.php/open-source/documentation/howto.html#pki
in Kapitel „Generate the master Certificate Authority (CA) certificate & key“ zweiter Absatz.
@Jan, vielleicht ein kleiner Hinweis und link im howto?!
Hallo, das habe ich alles gemacht, allerdings wäre eine Anwort im Beitrag echt hilfreich, ich stelle mich nämlich gerade ganz schön blöd an :/
Der Inhalt von /etc/openvpn/easy-rsa sieht im Moment so aus:
pi@nanoVPN /etc/openvpn/easy-rsa $ ls
easyrsa openssl-1.0.cnf vars vars.example x509-types
Meine vars sehen so aus:
http://pastebin.com/U0fhFzDv
Leider ist nahezu alles auskommentiert und ich habe keine Ahnung, was ich da jetzt eigentlich von anmachen muss um
. ./vars
auszuführen 🙁
Ich würde mich extrem über eine Antwort freuen, da ich den VPN-Server gern bis Weihnachten installieren würde um ihn zwischen Weihnachten und Neujahr als ausstieg zu nutzen 😉
Außerdem habe ich mir dieses Git-Repo von easy-rsa ziemlich umständlich kopiert, da waren immer wieder Unterordner in anderen Unterordnern usw. bis dann alles so aussah, wie es das jetzt tut…
Vielleicht könntest du den sauberen Kopiervorgang von Github ja auch nochmal kurz beschrieben, oder einen Link zu einem Tutorial dalassen 🙂
Vielen Dank für all deine Tutorials Jan! Die haben mir schon viel geholfen und beigebracht 🙂
PS.: Ich habe dieses Tutorial schon einmal benutzt, allerdings war zu diesem Zeitpunkt easy-rsa noch in OpenVPN enthalten, da gab es also keine Probleme, deshalb ist das diesmal umso frustrierender *:D
Hallo,
den Fehler habe ich bei der Installation auch gehabt. Ich habe allerdings Raspbian auf Jessie aktualisiert. Ich weiß nicht, ob es nur damit zusammenhing.
Die Dateien habe ich alle im Verzeichnis von easy-rsa gefunden, folgender Befehl funktionierte bei mir:
sudo cp -r /usr/share/easy-rsa ./easy-rsa
Dann die Anleitung normal abarbeiten. Hoffe, das hilft.
Seltsam, ich habe hier auch ein von Wheezy auf Jessie aktualisiertes System. Aber von easy-rsa ist weit und breit keine Spur, auch nicht unter /usr/share/.
Habe mir es halt kurzerhand aus einem Wheezy geborgt.
Gab bei mir ebenfalls nur /usr/share/easy-rsa
Richtig wäre hier: cp -r /usr/share/easy-rsa /etc/openvpn/easy-rsa
Hi,
habe das auf jessie durchgekaut und stoße auf einen Fehler: openvpn läuft nicht los. Die Ursache findet sich in /var/log/openvpn: „Options error: –dh fails …. 1024.pem: no such file or directory.“
Es werden (wohl durch die neuere Version?) 2048er Schlüssel erzeugt, der Code-Schnipsel in Step 12 muss folglich in Zeile 7 auf dh2048.pem verweisen.
Gruß,
Jürgen
edit. Step 8, nicht 12 🙂
Ich bekomme immer eine Fehlermeldung nach dem Befehl und komme nicht mehr weiter:
/etc/openvpn# sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
libkmod: ERROR ../libkmod/libkmod.c:554 kmod_search_moddep: could not open moddep file ‚/lib/modules/3.18.7-v7+/modules.dep.bin‘
iptables v1.4.14: can’t initialize iptables table `nat‘: Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.
Hi Markus,
hatte gerade eben genau das gleiche Problem.
Reboot tut gut….bei mir hats ein Reboot getan – danach gings…
Viele Grüße
Michael
Ab Schritt 3 komme ich nicht weiter! Da steht, dass es die Datei oder den Pfad nicht gibt.
Easy-RSA ist nicht mehr Teil der OpenVPN Paketes. Die Aktuelle Version findet man hier: github.com/OpenVPN/easy-rsa.
Alternativ kann gibt es auch dieses feine Programm http://forum.openvpn.eu/viewtopic.php?f=1&t=8040
Mach bitte mal eine Anleitung zu Blynk. Ich versteh das nicht ganz.
Hallo,
ich habe eine Frage zu den DNS Einstellungen in Step 8 bzw. 9.
Werden die Einstellungen so übernommen oder muss ich die von meinem Router dort eingeben?
[…] bin ich nach einer wirklich guten Anleitung im Internet vorgegangen, welche auch recht Problemlos geklappt hat. Entgegen der Anleitung muss […]
Es wird
push „redirect-gateway def1 bypass-dhcp“
genutzt! Soweit ich es verstanden habe, wird mit „bypass-dhcp“ der Tunnel umgangen! Die DHCP Anfrage geht somit NICHT (bypass) über das VPN Netzwerk! Die Anfrage kann unverschlüsselt im lokalen Netzwerk, wo man eingewählt ist, mitgelesen werden!
Hallo Jan,
ich habe mir dein Tutorial gerade durchgelesen aber noch nicht umgesetzt! 🙂
Bevor ich mir wieder den Aufwand mache und ein VPN installiere möchte ich vorher wissen, ob ich über das VPN auf meine anderen Netzwerkgeräte zugreifen kann.
(Z.B auf die Website meines Raspi’s)
Ich habe gerade ein Softether VPN installiert, dieser leitet mich erfolgreich über den Raspi ins Internet. Das Problem ist nur das ich leider keine Netzwerkgeräte einschließlich den Raspi selbst NICHT über deren IP Adresse erreiche. Lediglich die Fritzbox ist erreichbar.
LG
Johannes
[…] Raspberry Pi: OpenVPN VPN-Server installieren […]
Klasse!
Es passiert sehr selten, dass so eine Anleitung auf anhieb klappt. Sehr gut beschrieben.
Danke.
Hallo,
bei STEP 5 erhalte ich nach sudo su:
pi@fhemberry /etc/openvpn/easy-rsa $ sudo su
root@fhemberry:/etc/openvpn/easy-rsa# source vars
openssl: /usr/lib/arm-linux-gnueabihf/libcrypto.so.1.0.0: version `OPENSSL_1.0.1s‘ not found (required by openssl)
openssl: /usr/lib/arm-linux-gnueabihf/libcrypto.so.1.0.0: version `OPENSSL_1.0.1s‘ not found (required by openssl)
openssl: /usr/lib/arm-linux-gnueabihf/libcrypto.so.1.0.0: version `OPENSSL_1.0.1s‘ not found (required by openssl)
**************************************************************
No /etc/openvpn/easy-rsa/openssl.cnf file could be found
Further invocations will fail
**************************************************************
NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/openvpn/easy-rsa/keys
Was kann/muss ich tun?
Vielen Dank für Deine Hilfe.
Hallo Jan,
an dieser Stelle auch von mir noch einmal vielen Dank für Deine hervorragende aber leider inzwischen veraltete Anleitung.
Es hat mich sehr viel Zeit gekostet, bis ich herausgefunden habe, dass Deine Anleitung z.B. für Raspbian Wheezy nicht funktioniert, weil hier standardmäßig IPv6 deaktiviert ist und erst durch:
sudo nano /etc/modules
und anhängen der folgenden Zeile (danach abspeichern nicht vergessen):
ipv6
aktiviert wird. Erst dann startet OpenVPN ohne Fehlermeldung (bei mir).
Bei Step 1 sollte außer dem update auch noch das upgrade (ansonsten gleiche Syntax, also „sudo apt-get uprade“) durchgeführt werden.
Ich kopiere nur Simanuels Antwort, weil es mir viel Frust erspart hätte, wenn ich sie gelesen hätte oder der artikel aktualisiert werden würde.
Des Rätsels Lösung steht zwar im log unter /var/log/openvpn (open mit sudo nano), aber als nicht-profi muss man daran erst mal denken.
————–
Moin,
diese Anleitung sollte wirklich mal aktualisiert werden…
Aber check mal ob du im keys-Ordner die Datei dh1024.pem hast. Wenn nicht vermutlich eine dh2048.pem, diese musst du dann in der Datei openvpn.conf angeben.
LG simanuel
Als Anfänger scheitert man direkt am Anfang, da es wohl inzwischen das Verzeichnis nicht mehr gibt.
cd /etc/openvpn
sudo cp -r /usr/share/doc/openvpn/examples/easy-rsa/2.0
Schade, wenn die Anleitung aktualisiert wird, bestimmt gut, aber so leider veraltet
[…] http://www.feste-ip.net/fip-box/basic/fip-box-vpn/ (https://jankarres.de/2013/05/raspberry-pi-openvpn-vpn-server-installieren/) […]
Wer auch bei Step 3 hängt, hier die aktualisierten Befehle:
cd /etc/openvpn
cp -r /usr/share/easy-rsa ./easy-rsa
Bei source vars ist bei mir folgender Fehler aufgetreten:
source vars
openssl: /usr/lib/arm-linux-gnueabihf/libcrypto.so.1.0.0: version `OPENSSL_1.0.1s‘ not found (required by openssl)
openssl: /usr/lib/arm-linux-gnueabihf/libcrypto.so.1.0.0: version `OPENSSL_1.0.1s‘ not found (required by openssl)
openssl: /usr/lib/arm-linux-gnueabihf/libcrypto.so.1.0.0: version `OPENSSL_1.0.1s‘ not found (required by openssl)
Lösung:
sudo apt-get install libssl-dev
danach ging es
Hallo zusammen,
vielen Dank für die tolle Anleitung hat alles auch stand 06/17 geklappt ausser Punkt 3:
cd /etc/openvpn
sudo cp -r /usr/share/doc/openvpn/examples/easy-rsa/2.0 ./easy-rsa
wie bereits durch Minlau beschrieben
minIau says:
6. August 2016 um 18:09
Richtig wäre hier: cp -r /usr/share/easy-rsa /etc/openvpn/easy-rsa
Und Punkt 8 gibts noch was zu korrigieren:
innheralb der server.conf
statt
dh /etc/openvpn/easy-rsa/keys/dh1024.pem
jetzt
dh /etc/openvpn/easy-rsa/keys/dh2048.pem
Scheinbar ist die Verschlüsselung jetzt automatisch höher.
Das hat mich doch ein paar Stunden gekostet das rauszufinden.
Ich hoffe damit kommt ihr weiter.
Viele Grüße
Matthias
Hallo, hier ein Tipp für ein sorglos Script: PiVPN.
Hallo,
und vielen Dank für deine tolle, verständliche Anleitung!
Beim Schritt 3 hat sich das Verzeichnis geändert:
cd /etc/openvpn
sudo cp -r /usr/share/easy-rsa ./easy-rsa
Gruß, Marco
[…] NAS- oder VPN-Server […]
Anleitung eben für Debian 9 verwendet und sie ist immer noch aktuell
Danke dafür
Habe lediglich eine höhere Schlüssellänge genommen
Hallo Jan,
Danke für die Tolle Anleitung. Es hat alles super funktioniert. Jetzt habe ich aber dennoch eine Frage:
Ich möchte nun auch aus der „Gegengesetzten richtung“ in das Netz zu greifen. Dein Aufbau oben als bsp:
Netz 1 (Heimnetz)
OVPN Server
Netz 2 (Elternetz)
Von Netz1 kann ich über den VPN-Server auf Netz2 zugreifen.
Jetzt möchte ich aber auch von Netz2 über den VPN auf Netz1 zugreifen können.
Wie bewerkstellige ich das am besten?
Genauer gesagt habe ich vor, ein VoIP Telefon an eine VoIP-Anlage in Netz2 anzubinden. Das geht allerdings im moment noch nicht, da dass Telefon nicht in Netz2 angezeigt ist und die VoIP-Anlage aber per MAC-Adresse die Geräte identifiziert.
Oder habe ich einen denkfehler.
Oder wäre es besser die Geräte (Telefone, Anlage) per VPN-Gateway in das VPN Netz einzubinden und dann in diesem Netz zu konfigurieren?
Fragen über Fragen 😀