VPN Server ohne Internetdurchreichung?

  • Hallo!

    Ich bin neu hier und würde gerne gleich mal mit einer Frage starten. Vorab gleich mal meine Kenntnisse sind mäßig, soll heißen, ich weiß von überall ein bisschen was aber nicht in die Tiefe gehend.

    Ich habe/will folgendes Szenario zu bewältigen:

    Mein PI bekommt einen eigenen Inet Zugang und ich will dann von meinem PC in meinem Heimnetzwerk darauf zugreifen. Effektiv will ich damit erreichen, dass mir der PI diverse Messdaten schickt. Meine bisherigen Überlegungen und Versuche sind folgende:

    Die Messdaten habe ich schon am PI, also das funktioniert. Dann hab mir mal über einen DynDNS Dienst eine faktisch "statische" IP von meinem PI eingerichtet. (Das funktioniert auch echt gut).
    Leider kommt jetzt schon der Hacken an der ganzen Sache. Ich hab mir von einem Kollegen raten lassen die Verbindung über VPN aufzubauen, sprich damit das ganze sicher über die Bühne geht einen VPN Server am PI installieren und dann mit einem Client von meinem PC aus draufzugreifen. Ich hab natürlich mal google befragt und herumgesucht, allerdings kam mir keine Antwort richtig vor.

    Kann ich den VPN Server so einstellen, das ich keine Internetverbindungsdurchreichung mache, sondern faktisch nur einen sicheren Tunnel aufbaue, durch den ich dann meine Daten quetschen kann?
    Es gibt ja unzählige Tutorials die das Thema mit der Internetverb.durchreichung behandeln, aber ich hab noch nicht wirklich durchschaut wie das in meinem Fall funktionieren könnte.

    Als VPN Server schwebt mit OpenVPN vor, da der "leicht" zu konfigurieren sein soll.

    Ich bin für jede Anregung dankbar!

    lg
    Manta22

  • Das kommt darau8f an welche Routen du zu deinem Clienten pushed.
    wenn du in der Config sagst der Client soll den Tunnel als default Gateway nehmen dann geht das Internet üner das VPN.
    Wenn du nur dein Lokales Netzwerk angibst dann nicht.
    Ich hatte mal ein HowTo zu Openvpn erstellt :
    OpenVPN Server auf dem PI

    Offizieller Schmier und Schmutzfink des Forum.
    Warum einfach wenn's auch schwer geht ?

    Kein Support per PN !
    Fragen bitte hier im Forum stellen. So hat jeder etwas davon.

  • Moin,
    wie willst Du auf Deine Daten zugreifen? Ich greife auf einige Sachen per WinSCP zu, die Verbindung läuft per SSH ab und lässt sich mit wenig Aufwand dicht machen (Stichwort SSH Key auth)

    Andere Möglichkeit 2 gleichberechtigte OpenVPN installationen, also nix mit Server und Zertifikat:

    - OpenVPN auf beiden Kisten installieren
    - Auf einer Kiste den Key erzeugen und auf die andere Kiste nach /etc/openvpn kopieren

    Code
    openvpn --genkey --secret /etc/openvpn/GEHEIM.key

    Dann die Konfiguration erzeugen

    Rechner 1: /etc/openvpn/GEHEIM.conf

    Rechner 2:


    Portweiterleitungen in beiden Routern einrichten, starten fertig.

    -teddy

    Einmal editiert, zuletzt von magicteddy (18. November 2013 um 12:58)

  • Hej!

    Danke euch für die schnellen Antworten!

    Also ich hab mich mal selbst dran versucht. Hab noch ein bisschen gestöbert und es folgendermaßen probiert. Ich geb hier mal den gesamten Weg an, damit ihr wisst was ich für Blödsinn gemacht hab, denn es funktioniert nicht...

    Am Pi wurde folgendes gemacht:

    Am Pc ging folgendes vor sich:

    Dann hab ich eine entsprechende Portweiterleitung am Router vorgenommen also
    Port: 1194, an: 192.168.1.xxx vom Pi, und natürlich UDP

    So dann hab ich die Kiste angeworfen (also die OpenVpn GUI mit der entsprechenden Konfigurationsdatei) und bekam natürlich keine Verbindung zustande.

    Ich weiß, es ist sehr schmal das ganze, sollte aber doch funktionieren oder wo irre ich mich bei der Sache?

    lg
    Manta22

  • Morgen!

    Also ich hab jetzt mal zum Testen deinen Code komplett kopiert. Also Rechner 1 von dir ist mein Pi und Rechner 2 ist mein Pc. Ich hab einen neuen Key erstellt und die .conf - Dateien angepasst/kopiert.


    Nach dem Starten wird folgendes ausgespuckt:

    Folgende Vermutung: Kann das sein das es deswegen nicht funktioniert, weil zum Testen noch beide, also Pi und Pc, im Heimnetzwerk laufen?

    lg
    Manta22


  • Morgen!

    Code
    ...

    Folgende Vermutung: Kann das sein das es deswegen nicht funktioniert, weil zum Testen noch beide, also Pi und Pc, im Heimnetzwerk laufen?

    lg
    Manta22

    Das habe ich noch nie probiert, keine Ahnung.
    Hast Du mal

    Code
    openvpn --show-valid-subnets

    versucht, was der ausspuckt?

  • Steht doch in den Logs was los ist :

    Code
    Tue Nov 19 08:20:01 2013 There is a problem in your selection of --ifconfig endpoints
    [local=10.9.1.25, remote=10.9.1.12]. 
    The local and remote VPN endpoints must exist within the same 255.255.255.252 subnet.

    Also die Configs anpassen

    .252 oder /30 meint ein Segment von max 4 Adressen, davon 1 x Netz, 2 x Host und 1 x Broadcast
    Erlaubt sind :

    Wie du nun siehst liegen deine Adresse in unterschiedlichen Netzen.
    die 10.9.1.12 ist außerdem die Netz Adresse des 4. Subnetz.
    Such dir ein freies Host Paar aus und ändere die Configs,
    Du brauchst nur die .12 gegen die .26 zu tauschen, in beiden Config's

    http://de.wikipedia.org/wiki/Subnetting

    Offizieller Schmier und Schmutzfink des Forum.
    Warum einfach wenn's auch schwer geht ?

    Kein Support per PN !
    Fragen bitte hier im Forum stellen. So hat jeder etwas davon.

    Einmal editiert, zuletzt von Der_Imperator (19. November 2013 um 12:49)

  • Hej!

    Richtig, da war was mit Subnetting und co. Also das hab ich mal ausgebessert, allerdings steckt ich hier bei der nächsten Sache. Die Verbindung scheint sich aufbauen zu wollen, aber irgendwie bekomme ich die sie nicht zustande.

    Muss ich am Pi noch eine Weiterleitung einrichten? - Wobei ich will ja nichts über den Pi weiterleiten, ich will ja nur draufzugreifen...

    lg
    Manta22

    Einmal editiert, zuletzt von Manta22 (19. November 2013 um 14:52)

  • Den Pi erreichst du jetzt über die IP des Tun Interface.
    Wenn du auf die IP des eth0 zugreifen möchtest dann musst du das Kernelrouting einschaiten.
    (sysctl ipv4 forward, genau müsste ich nachschauen)
    Und du musst eine Route zum Windows Pushen damit der weis das er die eth0 ip des PI hinder dem Tunnel findet.
    push "route xxx.xxx.xxx.0 255.255.255.0"

    Offizieller Schmier und Schmutzfink des Forum.
    Warum einfach wenn's auch schwer geht ?

    Kein Support per PN !
    Fragen bitte hier im Forum stellen. So hat jeder etwas davon.

  • Morgen!

    Seltsamerweise aber jetzt funktionierts. Ich sag mal herzlichen Dank an euch!

    Ich werd am Freitag oder Samstag (hab leider früher keine Zeit mehr) meine "Lösung" hier posten, damit sie da ist wenn sie wer braucht, und das ganze auf erledigt stellen.

    Danke nochmal + lg
    Manta22

  • Hej!

    Schlechte Neuigkeiten, es funktioniert doch nicht :( (da hab ich mich wohl zu früh gefreut).

    Hier nochmal alles der Reihe nach:

    Wenn ich den Tunnel daheim (also im Heimnetz) aufbaue funktioniert es:

    Die beiden Configs:

    Server:

    Code
    dev tun
    ifconfig 10.0.0.1 10.0.0.2
    secret static-key.txt
    port 5000

    Client:

    Code
    remote 192.168.1.101
    dev tun
    ifconfig 10.0.0.2 10.0.0.1
    secret static-key.txt
    port 5000

    Der zugehörige Log:

    Code
    Sat Nov 23 10:53:33 2013 OpenVPN 2.3.2 i686-w64-mingw32 [SSL (OpenSSL)] [LZO] [PKCS11] [eurephia] [IPv6] built on Aug 22 2013
    Sat Nov 23 10:53:34 2013 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
    Sat Nov 23 10:53:34 2013 open_tun, tt->ipv6=0
    Sat Nov 23 10:53:34 2013 TAP-WIN32 device [LAN-Verbindung 2] opened: \\.\Global\{1951D90A-06AF-460C-A442-22854A626CD9}.tap
    Sat Nov 23 10:53:34 2013 Notified TAP-Windows driver to set a DHCP IP/netmask of 10.0.0.2/255.255.255.252 on interface {1951D90A-06AF-460C-A442-22854A626CD9} [DHCP-serv: 10.0.0.1, lease-time: 31536000]
    Sat Nov 23 10:53:34 2013 Successful ARP Flush on interface [26] {1951D90A-06AF-460C-A442-22854A626CD9}
    Sat Nov 23 10:53:34 2013 UDPv4 link local (bound): [undef]
    Sat Nov 23 10:53:34 2013 UDPv4 link remote: [AF_INET]192.168.1.101:5000
    Sat Nov 23 10:53:44 2013 Peer Connection Initiated with [AF_INET]192.168.1.101:5000


    Wenn ich das jetzt weiterspiele und den Client vom Heimnetzwerk entferne und extern ins Internet einsteig muss ich ja nur 1 Zeile in der Config ändern:

    Client - Config:

    Code
    remote meinedyndns.xyz
    dev tun
    ifconfig 10.0.0.2 10.0.0.1
    secret static-key.txt
    port 5000

    also einfach die Remote - Adresse ändern

    Dann auf meinem Router der vorm Pi (Server) hängt eine Portweiterleitung reinknallen die den Port 5000 (in dem Fall) auf seine IP weiterleitet (hier 192.168.1.101 s.o.)

    Dann bekomm ich aber folgenden Log:

    Code
    Sat Nov 23 10:58:16 2013 OpenVPN 2.3.2 i686-w64-mingw32 [SSL (OpenSSL)] [LZO] [PKCS11] [eurephia] [IPv6] built on Aug 22 2013
    Sat Nov 23 10:58:18 2013 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
    Sat Nov 23 10:58:18 2013 open_tun, tt->ipv6=0
    Sat Nov 23 10:58:18 2013 TAP-WIN32 device [LAN-Verbindung 2] opened: \\.\Global\{1951D90A-06AF-460C-A442-22854A626CD9}.tap
    Sat Nov 23 10:58:18 2013 Notified TAP-Windows driver to set a DHCP IP/netmask of 10.0.0.2/255.255.255.252 on interface {1951D90A-06AF-460C-A442-22854A626CD9} [DHCP-serv: 10.0.0.1, lease-time: 31536000]
    Sat Nov 23 10:58:18 2013 Successful ARP Flush on interface [26] {1951D90A-06AF-460C-A442-22854A626CD9}
    Sat Nov 23 10:58:18 2013 UDPv4 link local (bound): [undef]
    Sat Nov 23 10:58:18 2013 UDPv4 link remote: [AF_INET]91.113.13.103:5000

    -> Es fehlt die letzte Zeile vom ersten Log, sprich er verbindet sich einfach nicht :(.

    Hat jemand eine Idee was da schief rennt?

    lg
    Manta22

  • Kleiner Nachtrag:

    Ich hab das ganze jetzt mit einem anderen Router probiert. Bei dem funktionierts nicht nur im Heimnetzwerk sondern auch dann, wenn ich mich über meinen dyndns verbinde. Wenn ich das ganze getrennt versuche, also Pi an einem Router und Pc am anderen dann funktionierts überhaupt nicht (die Router hängen getrennt im Internet) - egal in welchen Richtungen ich es probiere (also Pc egal an welchem und am anderen der Pi) - hoffe das ist jetzt verständlich ausgedrückt.

  • Du brauchst in deinem Fall nur UDP.
    kannst du denn via der dyndns Adresse auf andere Dienste zugreifen ?

    Offizieller Schmier und Schmutzfink des Forum.
    Warum einfach wenn's auch schwer geht ?

    Kein Support per PN !
    Fragen bitte hier im Forum stellen. So hat jeder etwas davon.

  • Das ich nur UDP brauch, hab ich auch schon erlesen ;)...aber probiern muss mans ja trotzdem ^^

    Zu deiner Frage ob ich über die DynDns auf andere Dienste zugreifen kann - ehrliche Antwort: ich hab es noch nicht probiert und wüsste jetzt auf die schnelle nicht wie ich das anstellen sollte =(

    Edit:

    Pingbar ist der Pi über die DynDns - wenn das hilft...

    Einmal editiert, zuletzt von Manta22 (23. November 2013 um 19:05)

  • Ohne den Thread gelesen haben und nur auf die Überschrift zu reagieren:

    Eine Portweiterleitung wird nur benötigt wenn ein Verbindungsaufbau aus dem Internet ins LAN hergestellt werden soll

    Das bedeutet also: Wird ein Verbindungsaufbau aus dem LAN ins Internet hergestellt brauch man keine Portweiterleitung -> ein VPN-Client benötigt dann also keine Portweiterleitung

    Wie kann man das ausnutzen? -> den VPN Server ausserhalb des LANs einrichten, wie zum Beispiel auf einem vServer oder einen RaspberryPI nach EDIS schicken :D

  • Das Problem ist nur, dass ich aber ins LAN will, da liegt mein Pi drinnen. Das ganze ist darauf ausgelegt, dass ich den Tunnel hinbekomme und dadurch meine Daten quetsche...

  • Wenn dein PI sich zu einem VPN-Server im Internet verbindet, kannst du von Unterwegs ebenfalls eine Verbindung zum VPN-Server herstellen und von dort dann auf den PI zugreifen
    VPN bedeutet ja: Virtual Privat Network
    Also ein Netzwerk innerhalb eines Netzwerks - diejenigen die sich im VPN befinden können darüber aufeinander zugreifen...

    Wenn du aber in deinem LAN einen VPN-Server hosten möchtest musst du eine Portweiterleitung einrichten - die Erklärung steht in Beitrag#18
    Dein Pi stellt eine Verbindung zum VPN-Server her und kann darüber dann natürlich auch Daten empfangen

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!