Gesamte Internetverbindung über VPN tunneln.

...komplette Frage anzeigen

2 Antworten

Ich verstehe Dein Problem nicht wirklich. hide.io bietet einen VPN-Service an. Es werden diverse Protokolle unterstützt, u.a. OpenVPN und IPSec. Du benötigst also auf jedem Deiner Geräte z.B. den OpenVPN-Client und richtest ihn so ein, dass er einen Tunnel zu hide.io aufbaut.

Alternativ kannst Du z.B. Deinen Ubuntu-Server mit dem OpenVPN-Client einrichten, sodass der den Tunnel zu hide.io aufbaut. Dann müssen alle Deine Geräte über den Ubuntu-Server gehen. Der muss also ip forwarding aktiviert haben (hast Du bereits gemacht) und bei den Geräten als Default Gateway eingetragen werden. Prinzipiell ist es möglich, bei Deinem Router den DHCP-Server auszuschalten und auf dem Ubuntu-Server einen DHCP-Server einzurichten (dnsmasq ist einfach zu konfigurieren). Dann kann der den Ubuntu-Server gleich als Default Gateway bekannt geben. Der Ubuntu-Server benötigt dann natürlich noch eine Default-Route zum Router.

Danke Top Antwort. Kann ich dich vielleicht anmailen wenn ich Probleme bei der Einrichtung haben sollte?

0

Achja.. Was würdest du mir empfehlen ? Alles über das Terminal einzustellen oder über die GUI vom Netzwerk Manager? Denn ich habe festgestellt das wenn ich die Netzwerkconfig in /etc/network/.... Eintrage das dies automatisch den grafischen Netzwerkmanager außer Gefecht setzt.

Und was mir auch aufgefallen ist ist das wenn ich den openvpn client über das Terminal starte das er die ganze zeit läuft bis ich Strg c Drücke. Ich hätte jedoch lieber das er im Hintergrund als Service läuft. Und das geht glaube ich nur über die grafische Oberfläche oder sehe ich das falsch? Sorry wenn ich sovielmal dumme fragen stelle aber ich bin echt alles andere als ein Linux Experte.

0
@fabbit

Ob Du per Terminal oder GUI/Network Manager arbeitest, ist eine Frage der Vorliebe. Ich arbeite auf meinem Server headless, also komplett ohne GUI, was bei mir auch eine Frage der Resourcen ist. Auf jeden Fall solltest Du wissen, dass die Konfiguration in /etc/network/interfaces einerseits und die Konfiguration über den Network Manager miteinander konkurrieren. Der Network Manager schreibt nicht in die /etc/network/interfaces, sondern hat seine eigene Konfiguration unter /etc/Network Manager/system-connections/. Schnittstellen, die über /etc/network/interfaces konfiguriert sind, werden vom Network Manager nicht mehr angefasst.

Über das Terminal kannst Du über route add Routen hinzufügen. Eine solche router siehst Du im Terminal mit dem Befehl route, aber nicht im Network Manager. Konfigurierst Du mit dem Network Manager eine Route, sieht man diese nicht mit route im Terminal.

Per route add konfigurierte Routen sind nicht permanent. Nach einem Neustart sind die wieder weg. Du musst also permanente Routen nach einem Reboot per Script wiederherstellen. Das geht in der /etc/network/interfaces z..B. so:

iface eth0 inet static
address 192.168.x.x
netmask 255.255.255.x
 up /sbin/route add -net 0.0.0.0 netmask 255.255.255.x gw 192.168.x.x

Über den up-Befehl wird die Route installiert, wenn das eth0 aktiviert wird.

Alternativ kannst Du http://www.rootz.de/2010/05/linux-statische-routen-permanent-installieren/ testen.

Oder aber Du lässt die /etc/network/interfaces links liegen und machst alles über den Network Manager. Dort eingetragene Routen sollten permanent sein.

Was den OpenVPN-Client angeht: Bei mir gibt es nach der Installation von OpenVPN ein Startscript in /etc/init.d/openvpn. Mit

sudo /etc/init.d/openvpn start|stop|restart

kannst Du OpenVPN als Dienst starten, stoppen bzw. neu starten. Dazu muss es dann eine passende client.conf in /etc/openvpn geben.

1
@user353737

Die Route brauche ich um die ip des eigentlichen Reuters zu hinterlegen? Richtig oder? Dachte das wäre eigentlich überflüssig indemman den Gateway/Router in der netzwerverbindung definiert? Oder verstehe ich da jetzt was komplett falsch?

Wenn ich openvpn ohne weitere Parameter als Start Aufrufe wird automatisch die client.ovpn geladen richtig ? Das heißt wenn ich von meinem VPN Provider eine config Kriege lade ich diese einfach runter und nenne sie um in client.ovpn und verschiebe sie nach /etc/openvpn/ ... Ebenfalls richtig?

Und was hat es mit dem starten als Dienst auf sich? Muss ich das Script selber erstellen? Oder ist im Verzeichnis init.d bereits openvpn drin? Ist init.d überhaupt ein reelles Verzeichnis oder ist es nur virtuell?

Vielen dank schonmal :)

0
@fabbit

Richtig, der Ubuntu-Server, der ja dann Default-Gateway spielt, muss wissen, wie er nach draußen in die große weite Welt kommt. Wenn der DHCP-Server des Routers ausgeschaltet ist, muss der Ubuntu-Server manuell konfiguriert werden.

route add 0.0.0.0 0.0.0.0 gw 192.168.x.x

setzt eine Default-Route auf die Gateway-Adresse 192.168.x.x (da musst Du natürlich die Adresse des Routers eintragen). Default-Route heißt: Alles, was ich nicht kenne, schiebe ich zum Gateway. Wenn Du mit dem Network Manager konfigurierst und dort ein Gateway angibst, läuft das aufs Gleiche hinaus. Viele Wege führen nach Rom ...

Mit der Installation von openvpn wird automatisch das Start-Script in /etc/init.d erstellt, da musst Du nichts selbst machen. Das Verzeichnis /etc/init.d ist ein reelles Verzeichnis, welches bei vielen Linux-Distributionen existiert und in dem diverse Programme bei der Installation ihre Startscripte ablegen. Wenn Du z..B. den Webserver Apache installiert hast, liegt dort auch ein entsprechendes Script in /etc/init.d. Wenn Du openvpn mit dem Befehl

sudo /etc/init.d/openvpn start

startest, sucht openvpn im Verzeichnis /etc/openvpn nach einer *.conf-Datei - so steht es im Kommentar im Script:

"# Description: This script will start OpenVPN tunnels as specified

in /etc/default/openvpn and /etc/openvpn/*.conf"

Mit einer client.ovpn wird es nicht funktionieren, eine solche Datei sucht das Startscript nicht. Nach meinem Überblick reicht es aber, eine client.ovpn in client.conf umzubenennen - bzw. wenn Du eine client.conf vom Provider bekommst, lege sie einfach in /etc/openvpn ab. Ein direkter Aufruf von

(sudo) openvpn

ohne Parameter funktioniert nicht. Installiere OpenVPN einfach mal mit

sudo apt-get install openvpn

und Du probiere es aus. Kaputt machen kannst Du nichts. Im Zweifel schmeißt Du den Kram mit

sudo apt-get remove --purge openvpn

wieder runter. --purge sorgt dafür, dass die Konfigurationsdateien auch entfernt werden. Ansonsten kannst Du das Verzeichnis /etc/openvpn auch manuell löschen.

Um die Systematik der Startscripte in /etc/init.d zu verdeutlichen: Wenn Apache installiert ist, kannst Du mit

sudo /etc/init.d/apache2 start|stop|restart

den Webserver starten, stoppen, neu starten. Das kann z.B. fällig sein, wenn Du eine Konfiguration geändert hast.

1
@user353737

Tausend Dank für die detailierte Antwort. Werde mich gleich heute abend mal ans Werk machen. Danke :)

0
@fabbit

So habe mich vor gut 2 Stunden an die Arbeit gemacht... Habe Ubuntu komplett neuinstalliert, abschließend openvpn und alles konfiguriert..

Wenn ich den Netzwerkadapter eth0 in promisc mode setze geht das ip forwarding wenn der openvpn service läuft. das ging vorher nicht. ALLERDINGS.... kann ich mich jetzt nicht verbinden... bekomme immer eine fehlermeldung "AUTH: Received AUTH_FAILED control message" ander config selbst aber habe ich nichts geändert und bezahlt ist der account

wenn ich den promisc mode ausmache und komplett neustarte geht auf dem linux server selber die vpn verbindung, dafür aber kein ip forwading. sprich 1 computer welcher den server als router hinterlegt hat bekommt eine zeitüberschreitung wenn er probiert seinen weg ins internet zu finden... entweder ich mache openvpn aus oder aber promic an.. nur dann wiegesagt kommt der kommische fehler von oben........

0
@user353737

Also habe es eben nochmal probiert.. Ich kriege es einfach nicht hin.

Auf dem Ubuntu-Rechner selber klappt alles wunderbar. Ich starte neu und automatisch ist er mit dem VPN-Dienst verbunden. Perfekt.

Wenn ich den Rechner als Gateway setze bei meinem Mac bekomme ich keine Verbindung hin. Traceroute ergibt folgendes: traceroute to www.google.de (173.194.112.63), 64 hops max, 52 byte packets 1 dev (192.168.178.105) 4.638 ms 5.056 ms 9.260 ms

und dort hängt er sich dann auf.

Wenn ich den VPN Dienst deaktiviere geht es wie von wunderhand... dev (192.168.178.105) 10.600 ms * * 2 fritz.box (192.168.178.1) 8.424 ms 12.062 ms 23.225 ms 3 7111a-aftr-01.fra.unity-media.net (80.69.104.84) 27.248 ms 23.897 ms 31.569 ms 4 7111a-mx960-01-ae16.fra.unity-media.net (80.69.105.209) 25.363 ms 20.167 ms 27.794 ms 5 72.14.213.197 (72.14.213.197) 22.614 ms 21.756 ms 22.885 ms 6 72.14.238.46 (72.14.238.46) 58.473 ms 25.410 ms 33.575 ms ........ und so weiter

Hast du noch ein Tipp für mich ?

Lg

0
@fabbit

Zunächst einmal: Ich hatte insofern einen Denkfehler, dass ich bei dem Server für den genannten Zweck zwei Netzwerkkarten vorausgesetzt habe.

Wenn ich den Netzwerkadapter eth0 in promisc mode setze geht das ip forwarding wenn der openvpn service läuft. das ging vorher nicht. ALLERDINGS.... kann ich mich jetzt nicht verbinden... bekomme immer eine fehlermeldung "AUTH: Received AUTH_FAILED control message"

Was heißt "der openvpn service läuft" und Du kannst Dich nicht verbinden? Wenn der openvpn service gestartet wird, verbindet der sich doch automatisch gemäß der client.conf. Wenn die Verbindung scheitert, sollte sich nach meinem Verständnis der Dienst wieder beenden. Meiner Meinung nach wiedersprechen sich "Service läuft" und "kann mich nicht verbinden".

Du setzt jetzt eth0 in den promiscous mode und nutzt ipforwarding - aber zu welchem Interface? ipforwarding wird doch immer zwischen zwei Interfaces gemacht, oder bin ich jetzt auf dem falschen Dampfer?

Bei einer Netzwerkkarte halte ich Bridging für den richtigeren Weg. Da existieren einige Anleitungen, die sich aber allesamt auf einen OVPN-Server beziehen - Du hast jedoch einen Client. Vielleicht hilft http://www.bsdnexus.com/blog/articles/bridged-vpn-with-openvpn weiter?

0
@fabbit

So, hier haben sich jetzt unsere beiden Kommentare zeitlich überschnitten.

Sobald der OpenVPN-Service läuft, funktioniert das Forwarding nicht mehr. Ohne VPN hingegen klappt das Forwarding und der Ubuntu-Server fungiert als Gateway.

Bei http://wiki.ubuntuusers.de/OpenVPN finde ich:

"OpenVPN als Default-Gateway

In manchen Situationen möchte man vielleicht jede Verbindung vom Client über den Server leiten, z.B. um ein unverschlüsseltes Wlan abzusichern oder Zensur zu umgehen. Dafür wird der OpenVPN-Server wie ein Router konfiguriert, siehe Router. Für den Parameter -s gibt man das OpenVPN-Subnetz an, nach der Voreinstellung 10.8.0.0\24. Der Parameter -i zeigt auf die TUN/TAP Netzwerkschnittstelle von OpenVPN, also z.B. tun0.

Dann muss in der Server-Konfigurationsdatei /etc/openvpn/server.conf nur ein Kommentarzeichen entfernt werden:

push "redirect-gateway def1 bypass-dhcp" 

Anschließend noch den OpenVPN-Server neu starten bzw. die Konfiguration neu einlesen."

Das bezieht sich natürlich auf einen OpenVPN Server. Ob der Befehl auch auf einem OpenVPN Client funktioniert, wäre auszuprobieren.

0
@user353737

Aber der OpenSVN-Server steht ja nicht bei mir.. Der steht irgendwo anders auf der Welt... Der ich nenne ihn mal "Ubuntu-Server" steht bei mir und ist lediglich ein VPN-Client der als Gateway fungieren soll.

0
@user353737

Meinst du ein virtuelles Netzwerk device (TAP) und eine Bridge zu eth0 würden was bringen?

0
@fabbit

Gute Frage - einfach ausprobieren. Viel kaputt machen kannst Du ja nicht.

0

Such mal in der Packetdatenbank Deiner Distro nach Openvpn^^

peace^^

und wie bekomme ich es dann hin das mein computer sich z.b. erst mit dem server verbindet anstatt mit dem router ?

0

ok habe ip-forwarding aktiviert. hier die anleitung dazu: sudo vi /etc/sysctl.conf und folgende zeile auskommentiert

net.ipv4.ip_forward=1

beim mac habe ich als routeradresse die des servers eingegeben und anschließend via traceroute gecheckt. geht soweit

wie kann ich aber openvpn meinen hide.io account einrichten? alles was ich habe ist eine serveradresse, benutzername und passwort. habe keine ip bereiche etc.

vielen dank

0
@fabbit

Brauchst du doch auch nicht.

Ist nur die Frage, ob hide.io auch openvpn verwendet, es gibt ja schließlich auch andere VPN-Arten.

Denk aber daran, dass du eine Volumenbegrenzung hast...

0

Was möchtest Du wissen?