OpenVPN-Tunnel unter Debian-Linux einrichten (Anleitung)

Aus Portunity Wiki

(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Schritt 4: Stopen des Tunnels)
Zeile 1: Zeile 1:
Diese Anleitung zeigt Ihnen in wenigen Schritten, wie Sie unter Linux (hier: Debian squeeze 6.0) einen OpenVPN - Tunnel mit einer statischen IP-Adresse (IPv4) einrichten (Bitte beachten Sie das in den Distributions Paketen meistens noch keine IPv6 Routing möglich ist. Um zusätzlich IPv6 Nutzen zu können folgen Sie bitte anschließend der Anleitung [[OpenVPN-Tunnel (IPv6) unter Debian-Linux einrichten (Anleitung)|OpenVPN-Tunnel (IPv6) unter Debian-Linux einrichten]]).  
Diese Anleitung zeigt Ihnen in wenigen Schritten, wie Sie unter Linux (hier: Debian squeeze 6.0) einen OpenVPN - Tunnel mit einer statischen IP-Adresse (IPv4) einrichten (Bitte beachten Sie das in den Distributions Paketen meistens noch keine IPv6 Routing möglich ist. Um zusätzlich IPv6 Nutzen zu können folgen Sie bitte anschließend der Anleitung [[OpenVPN-Tunnel (IPv6) unter Debian-Linux einrichten (Anleitung)|OpenVPN-Tunnel (IPv6) unter Debian-Linux einrichten]]).  
-
Diese Anleitung sollte auch mit anderen Debian Versionen oder Derivaten (wie z.b. Ubuntu oder Mint) funktionieren.
+
Diese Anleitung sollte auch mit anderen Debian Versionen oder Derivaten (wie z.b. Ubuntu oder Mint) funktionieren. Auf vielen anderen Linux Distributionen (wie z.b. OpenSUSE oder Fedora) ist die Vorgehensweise ähnlich.  
-
Auf vielen anderen Linux Distributionen (wie z.b. OpenSUSE oder Fedora) ist die Vorgehensweise ähnlich.
+
-
= Wichtiger Hinweis zu Firewalls =
+
= Wichtiger Hinweis zu Firewalls =
-
'''Sollte die OpenVPN-Verbindung nicht aufgebaut werden können oder immer wieder nach kurzer Zeit zusammenbrechen, prüfen Sie bitte ob Ihr Router ICMP-Pakete verwirft.'''
+
'''Sollte die OpenVPN-Verbindung nicht aufgebaut werden können oder immer wieder nach kurzer Zeit zusammenbrechen, prüfen Sie bitte ob Ihr Router ICMP-Pakete verwirft.''' Diese sollten Sie zumindest von und zu unserem Tunnelserver akzeptieren, um einen störungsfreien Betrieb zu gewährleisten. ICMP ist mehr als "nur Ping" und wird vielmehr auch genutzt, um die MTU der Gegenstelle zu erfragen oder herauszufinden ob ein Port bereits genutzt wird. Im Zusammenhang mit Tunnelprotokollen ist es daher wirklich wichtig, dass diese Informationen übermittelt werden können.  
-
Diese sollten Sie zumindest von und zu unserem Tunnelserver akzeptieren, um einen störungsfreien Betrieb zu gewährleisten.
+
-
ICMP ist mehr als "nur Ping" und wird vielmehr auch genutzt, um die MTU der Gegenstelle zu erfragen oder herauszufinden ob ein Port bereits genutzt wird. Im Zusammenhang mit Tunnelprotokollen ist es daher wirklich wichtig, dass diese Informationen übermittelt werden können.
+
 +
<br>
= Schritt 1: Paket installieren  =
= Schritt 1: Paket installieren  =
Zeile 37: Zeile 35:
Mit "'''i'''" wechseln Sie im vi-Editor in den Edit Modus!  
Mit "'''i'''" wechseln Sie im vi-Editor in den Edit Modus!  
-
Und ändern den Benutzernamen und das Kennwort Anstelle "tunnelXXXXX" geben Sie bitte Ihren OpenVPN-Loginnamen ein. Das "XXXXX" wird hier durch eine Zahl ersetzt. Nicht Ihr ISP-Suite Loginname!
+
Und ändern den Benutzernamen und das Kennwort Anstelle "tunnelXXXXX" geben Sie bitte Ihren OpenVPN-Loginnamen ein. Das "XXXXX" wird hier durch eine Zahl ersetzt. Nicht Ihr ISP-Suite Loginname!  
Mit "'''ESC ESC&nbsp;:wq ENTER'''" speichern und beenden Sie den vi-Editor  
Mit "'''ESC ESC&nbsp;:wq ENTER'''" speichern und beenden Sie den vi-Editor  
Zeile 47: Zeile 45:
<source lang="command">vi /etc/openvpn/portunity.conf</source>  
<source lang="command">vi /etc/openvpn/portunity.conf</source>  
-
'''Wichtig! Bitte öffnen Sie die Datei portunity.conf und ersetzen in der Zeile "remote <OpenVPN-Server> 1194" das <OpenVPN-Server> durch die im Produkt unter: Konfiguration->Info->OpenVPN-Server angegebene Adresse.'''
+
'''Wichtig! Bitte öffnen Sie die Datei portunity.conf und ersetzen in der Zeile "remote &lt;OpenVPN-Server&gt; 1194" das &lt;OpenVPN-Server&gt; durch die im Produkt unter: Konfiguration-&gt;Info-&gt;OpenVPN-Server angegebene Adresse.'''  
Jedoch kann es sinnvoll sein folgende Optionen seinen eigenen Bedürfnissen anzupassen:  
Jedoch kann es sinnvoll sein folgende Optionen seinen eigenen Bedürfnissen anzupassen:  
Zeile 57: Zeile 55:
*'''verb''' Um mehr Debug Informationen zu erhalten (Empfehlung von 3 auf 7 erhöhen)
*'''verb''' Um mehr Debug Informationen zu erhalten (Empfehlung von 3 auf 7 erhöhen)
-
= Schritt 3: Starten des Tunnels  =
+
= Schritt 3: Starten des Tunnels per SystemV =
-
Tunnel aktivieren:  
+
'''Wichtig! Dieser Schritt wird nur auf Älteren Systemen benötigt die noch mit SystemV arbeiten. Für Modernere Systeme die mit SystemD arbeiten springen Sie bitte zu Schritt: 5 Starten des Tunnels per systemd'''
 +
 
 +
<br> Tunnel aktivieren:  
<source lang="command">/etc/init.d/openvpn start portunity</source>  
<source lang="command">/etc/init.d/openvpn start portunity</source>  
-
Prüfen, ob der OpenVPN Tunnel gestartet wurde <source lang="command">ifconfig</source>  
+
Prüfen, ob der OpenVPN Tunnel gestartet wurde  
 +
 
 +
<source lang="command">ifconfig</source>  
  eth0 ....
  eth0 ....
   
   
  tun0    Link encap:UNSPEC  Hardware Adresse 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00   
  tun0    Link encap:UNSPEC  Hardware Adresse 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00   
-
        inet Adresse:188.246.4.64  P-z-P:188.246.4.64  Maske:255.255.252.0
+
        inet Adresse:188.246.4.64  P-z-P:188.246.4.64  Maske:255.255.252.0
-
        UP PUNKTZUPUNKT RUNNING NOARP MULTICAST  MTU:1440  Metrik:1
+
        UP PUNKTZUPUNKT RUNNING NOARP MULTICAST  MTU:1440  Metrik:1
-
        RX packets:50 errors:0 dropped:0 overruns:0 frame:0
+
        RX packets:50 errors:0 dropped:0 overruns:0 frame:0
-
        TX packets:104 errors:0 dropped:0 overruns:0 carrier:0
+
        TX packets:104 errors:0 dropped:0 overruns:0 carrier:0
-
        Kollisionen:0 Sendewarteschlangenlänge:100  
+
        Kollisionen:0 Sendewarteschlangenlänge:100  
-
        RX bytes:3777 (3.6 KiB)  TX bytes:7946 (7.7 KiB)
+
        RX bytes:3777 (3.6 KiB)  TX bytes:7946 (7.7 KiB)
<br> Wenn der Tunnel nicht aufgebaut wurde können Sie diesen manuell ohne Startscript Starten.  
<br> Wenn der Tunnel nicht aufgebaut wurde können Sie diesen manuell ohne Startscript Starten.  
Zeile 85: Zeile 87:
= Schritt 4: Stoppen des Tunnels  =
= Schritt 4: Stoppen des Tunnels  =
-
<source lang="command">/etc/init.d/openvpn stop portunity</source>
+
<source lang="command">/etc/init.d/openvpn stop portunity</source>  
 +
 
 +
= Schritt 5: Starten des Tunnels per SystemD  =
 +
 
 +
Die nachfolgenden schritte werden benötigt, wenn Ihr System mit systemd arbeitet.
 +
 
 +
Nachdem Sie die portunity.conf entsprechend angepasst haben können Sie den Tunnel mit diesem Befehl starten.
 +
 
 +
<source lang="command">systemctl start openvpn@portunity</source>
 +
 
 +
Danach baut sich der Tunnel auf.
 +
 
 +
Prüfen, ob der OpenVPN Tunnel gestartet wurde
 +
 
 +
<source lang="command">ip address show</source>
 +
 
 +
2: eth0 ....
 +
3: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1440 qdisc pfifo_fast state UNKNOWN group default qlen 100
 +
    link/none
 +
    inet TUNNEL-IP brd  scope global tun0
 +
      valid_lft forever preferred_lft forever
 +
<br>
 +
   
 +
Die Tunnelverbindung wird mit dem Befehl
 +
<source lang="command">systemctl stop openvpn@portunity</source>
 +
beendet.
 +
 
 +
= Schritt 6: Den Tunnel Bootfest machen =
 +
 
 +
Damit sich der Tunnel bei jedem Systemstart automatisch aufbaut, führen Sie bitte diesen Befehl aus:
 +
 
 +
<source lang="command">systemctl enable openvpn@portunity</source>
 +
 
 +
 +
 
 +
Damit sich der Tunnel nicht mehr automatisch bei jedem Systemstart aufbaut
 +
 +
<source lang="command">systemctl disable openvpn@portunity</source>
 +
 
= Abschließende Hinweise  =
= Abschließende Hinweise  =
Zeile 99: Zeile 139:
Schauen Sie bitte in die entsprechenden FAQ Artikel, oder falls noch nicht vorhanden sprechen Sie uns bitte an: Supportmöglichkeiten  
Schauen Sie bitte in die entsprechenden FAQ Artikel, oder falls noch nicht vorhanden sprechen Sie uns bitte an: Supportmöglichkeiten  
-
[[Category:Access]][[Category:Access_Anleitungen]][[Category:OpenVPN_(Übersicht)]][[Category:VPN-Tunnel (Tarif)]]
+
[[Category:Access]] [[Category:Access_Anleitungen]] [[Category:OpenVPN_(Übersicht)]] [[Category:VPN-Tunnel_(Tarif)]]

Version vom 15:10, 5. Mai 2020

Diese Anleitung zeigt Ihnen in wenigen Schritten, wie Sie unter Linux (hier: Debian squeeze 6.0) einen OpenVPN - Tunnel mit einer statischen IP-Adresse (IPv4) einrichten (Bitte beachten Sie das in den Distributions Paketen meistens noch keine IPv6 Routing möglich ist. Um zusätzlich IPv6 Nutzen zu können folgen Sie bitte anschließend der Anleitung OpenVPN-Tunnel (IPv6) unter Debian-Linux einrichten).

Diese Anleitung sollte auch mit anderen Debian Versionen oder Derivaten (wie z.b. Ubuntu oder Mint) funktionieren. Auf vielen anderen Linux Distributionen (wie z.b. OpenSUSE oder Fedora) ist die Vorgehensweise ähnlich.

Inhaltsverzeichnis

Wichtiger Hinweis zu Firewalls

Sollte die OpenVPN-Verbindung nicht aufgebaut werden können oder immer wieder nach kurzer Zeit zusammenbrechen, prüfen Sie bitte ob Ihr Router ICMP-Pakete verwirft. Diese sollten Sie zumindest von und zu unserem Tunnelserver akzeptieren, um einen störungsfreien Betrieb zu gewährleisten. ICMP ist mehr als "nur Ping" und wird vielmehr auch genutzt, um die MTU der Gegenstelle zu erfragen oder herauszufinden ob ein Port bereits genutzt wird. Im Zusammenhang mit Tunnelprotokollen ist es daher wirklich wichtig, dass diese Informationen übermittelt werden können.


Schritt 1: Paket installieren

Loggen Sie sich als "root" an Ihrem Server / Gateway ein und installieren Sie folgendes Debian Paket: "openvpn"

apt-get install openvpn

Schritt 2: Grundkonfiguration

Nun gibt es das Verzeichnis "/etc/openvpn". wechseln Sie bitte in das Verzeichnis

cd /etc/openvpn

und laden sich z.B. per wget die OpenVPN Konfigurationsdateien und Schlüssen herunter. Den entsprechend Link könne Sie aus in der ISP-Suite entnehmen (am besten mit "Rechtsklick=>Link Adresse kopieren" )

wget https://service.portunity.net/downloads/vpntunnel-via-v4.tar.gz

Entpacken Sie die Datei mit tar

tar -xzvf vpntunnel-via-v4.tar.gz

Öffnen Sie mit Ihrem Lieblingseditor im Verzeichnnis "/etc/openvpn" die Datei "portunity.login" an.

vi /etc/openvpn/portunity.login

Mit "i" wechseln Sie im vi-Editor in den Edit Modus!

Und ändern den Benutzernamen und das Kennwort Anstelle "tunnelXXXXX" geben Sie bitte Ihren OpenVPN-Loginnamen ein. Das "XXXXX" wird hier durch eine Zahl ersetzt. Nicht Ihr ISP-Suite Loginname!

Mit "ESC ESC :wq ENTER" speichern und beenden Sie den vi-Editor

Da es immer sicherheitskritisch ist Passwört und Benutzernamen zu speichern, ist nicht in allen OpenVPN Paketen die Möglichkeit einkompiliert die Zugangsdaten aus einer separaten Datei zu lesen. Es kann also vorkommen das Sie OpenVPN selber übersetzen müssen!

Weitere Einstellmöglichkeiten finden Sie in der Konfig Datei des Portunity Tunnels

vi /etc/openvpn/portunity.conf

Wichtig! Bitte öffnen Sie die Datei portunity.conf und ersetzen in der Zeile "remote <OpenVPN-Server> 1194" das <OpenVPN-Server> durch die im Produkt unter: Konfiguration->Info->OpenVPN-Server angegebene Adresse.

Jedoch kann es sinnvoll sein folgende Optionen seinen eigenen Bedürfnissen anzupassen:

  • auth-user-pass um die Logindaten nicht aus einer Datei auslesen zu lassen
  • redirect-gateway damit der Tunnel nicht das Default Gateway wird einfach kommentieren oder löschen
  • user nobody Den Tunnel nach dem Aufbau alle Rechte entziehen
  • group nogroup bei anderen Distributionen kann diese gruppe nobody heisen.
  • verb Um mehr Debug Informationen zu erhalten (Empfehlung von 3 auf 7 erhöhen)

Schritt 3: Starten des Tunnels per SystemV

Wichtig! Dieser Schritt wird nur auf Älteren Systemen benötigt die noch mit SystemV arbeiten. Für Modernere Systeme die mit SystemD arbeiten springen Sie bitte zu Schritt: 5 Starten des Tunnels per systemd


Tunnel aktivieren:

/etc/init.d/openvpn start portunity

Prüfen, ob der OpenVPN Tunnel gestartet wurde

ifconfig
eth0 ....

tun0     Link encap:UNSPEC  Hardware Adresse 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
       inet Adresse:188.246.4.64  P-z-P:188.246.4.64  Maske:255.255.252.0
       UP PUNKTZUPUNKT RUNNING NOARP MULTICAST  MTU:1440  Metrik:1
       RX packets:50 errors:0 dropped:0 overruns:0 frame:0
       TX packets:104 errors:0 dropped:0 overruns:0 carrier:0
       Kollisionen:0 Sendewarteschlangenlänge:100 
       RX bytes:3777 (3.6 KiB)  TX bytes:7946 (7.7 KiB)


Wenn der Tunnel nicht aufgebaut wurde können Sie diesen manuell ohne Startscript Starten.

openvpn /etc/openvpn/portunity.conf

Dann erhalten Sie die ausgaben von OpenVPN direkt ausgegeben.

  • Wenn Sie OpenVPN beim Start Ihres Systems automatisch starten lassen haben Sie den Tunnel auch gleichzeitig Bootfest gemacht!

Schritt 4: Stoppen des Tunnels

/etc/init.d/openvpn stop portunity

Schritt 5: Starten des Tunnels per SystemD

Die nachfolgenden schritte werden benötigt, wenn Ihr System mit systemd arbeitet.

Nachdem Sie die portunity.conf entsprechend angepasst haben können Sie den Tunnel mit diesem Befehl starten.

systemctl start openvpn@portunity

Danach baut sich der Tunnel auf.

Prüfen, ob der OpenVPN Tunnel gestartet wurde

ip address show
2: eth0 ....
3: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1440 qdisc pfifo_fast state UNKNOWN group default qlen 100
   link/none
   inet TUNNEL-IP brd  scope global tun0
     valid_lft forever preferred_lft forever


Die Tunnelverbindung wird mit dem Befehl

systemctl stop openvpn@portunity

beendet.

Schritt 6: Den Tunnel Bootfest machen

Damit sich der Tunnel bei jedem Systemstart automatisch aufbaut, führen Sie bitte diesen Befehl aus:

systemctl enable openvpn@portunity


Damit sich der Tunnel nicht mehr automatisch bei jedem Systemstart aufbaut

systemctl disable openvpn@portunity


Abschließende Hinweise

Wegen der Komplexität gehen wir in diesem Artikel nicht auch Dinge ein wie:

  • IP-Netz routen
  • Dienste an die neue statische IP binden
  • PBR (Policy Based Routing)

Um zusätzlich IPv6 Nutzen zu können folgen Sie bitte anschließend der Anleitung OpenVPN-Tunnel (IPv6) unter Debian-Linux einrichten)

Schauen Sie bitte in die entsprechenden FAQ Artikel, oder falls noch nicht vorhanden sprechen Sie uns bitte an: Supportmöglichkeiten

Persönliche Werkzeuge