RPi als VPN-Gateway

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Hallo zusammen.

    Ich bin leicht am verzweifeln :wallbash:. Ein Großteil der HowTo's via Google, welche sich zu Hauf im Netz befinden, sich nicht vollständig oder veraltet (basierend auf ältere Rasbian OS- Distributionen).

    Folgendes Ziel soll erreicht werden:

    Der RPi nimmt Endgeräte, welche nicht als VPN-Client konfiguriert werden können, Huckepack und stellt die Verbindung zum VPN-Service (NordVPN oder ExpressPVN) her.

    Über ein USB-LAN-Adapter (eht1), und Netzwerkswitch sind die Endgeräte verbunden. WLAN-Endgeräte können über wlan0 auf den VPN-Dienst zugreifen.

    [VPN-Service] - [ISP] - [DSL-Router] - [RPi] - [LAN/WLAN- Client]

    Folgende Voraussetzungen Hardware ist geschaffen:

    Der RPi 4B ist per LAN (eht0) mit dem DSL-Router verbunden.

    zweite USB-LAN-Schnittstelle

    Ext. USB-SSD als "System-Platte".

    Folgende Voraussetzungen Software sind bereits geschaffen:

    Der ISP bietet mir eine Dual-Stack Anbindung inkl. IPv4

    DynDNS-Service ist im DSL-Router eingerichtet.

    OS: Raspbian Buster Desktop und installierten Paketen iptables und iptables-persistent.

    Heimnetz-Zugang via SSH, VNC und Samba

    Habt ihr für dieses Ziel für mich ein ausführliches HowTo, basierend auf die aktuelle Rasbian OS- Distribution?

    Vorab besten Dank

  • Der RPi nimmt Endgeräte, welche nicht als VPN-Client konfiguriert werden können, Huckepack und stellt die Verbindung zum VPN-Service (NordVPN oder ExpressPVN) her.

    Die Systeme, die per VPN ins Netz sollen, stehen alle im gleichen Netz? Und sie sollen gemeinsam über den Tunnel funktionieren, und nicht mal dieses und mal jenes?

    Da man normalerweise von den Public-VPN-Anbietern nur eine IPv4-Adresse bekommt, muss der VPN-Endpunkt auf deiner Seite als NAT-Router, und nicht nur als Router arbeiten.

    Würdest du ein Client-2-Netz (also immer nur ein gerät über den Tunnel) System verwenden, wäre das kein Problem, doch du willst ein Netz-2-Netz VPN.

    Wenn die Systeme nur per IPv6 durch den Tunnel sollen und du vom VPN-Anbieter mindestens ein /64er IPv6-Bekommen hast, ist das kein Problem, denn hier kannst du eine einfach Netzkopplung per VPN realisieren.


    Wichtig ist noch, dass in deinem Netz die Geräte die Route in den Tunnel kennen, nicht dass der Verkehr, der durch den Tunnel in dein Netz kommt, durch die fehlende Route ohne VPN über den DSL-Router raus geleitet werden soll. Dann kann die Verbindung der Systeme untereinander nicht vollständig aufgebaut werden. Der Tunnel steht, doch der Verkehr geht nicht sauber durch.

    Computer ..... grrrrrr

  • Über ein USB-LAN-Adapter (eht1), und Netzwerkswitch sind die Endgeräte verbunden. WLAN-Endgeräte können über wlan0 auf den VPN-Dienst zugreifen.

    [VPN-Service] - [ISP] - [DSL-Router] - [RPi] - [LAN/WLAN- Client]

    Poste mal von einem WLAN-Endgerät und von einem Endgerät, das via USB-LAN-Adapter (eth1) mit dem PI verbunden ist, die Ausgabe von:

    Code
    mtr -4nr -c 1 1.1.1.1

    Und von deinem PI, die Ausgaben von:

    Code
    ip a
    route -n
    arp -av

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

  • Poste mal von einem WLAN-Endgerät und von einem Endgerät, das via USB-LAN-Adapter (eth1) mit dem PI verbunden ist, die Ausgabe von......

    Ausgabe von Endgerät an eht1 USB-LAN-Adaper

    Code
    C:\Users\Frank>tracert 1.1.1.1
    Routenverfolgung zu 1.1.1.1 über maximal 30 Hops
    
      1  Übertragungsfehler: Fehlercode 1231.
    
    Ablaufverfolgung beendet.

    RPi-Ausgabe

    Rasp-Berlin

    Ja, die Systeme, die per VPN ins Netz sollen, sollen alle im gleichen Netz und sie sollen gemeinsam über den Tunnel funktionieren.

    Im Prinzip:

    eht0 ist im selben Adressbereich wie der DSL-Router es vorgibt, z.B. 192.168.178.XXX

    eth1 befindet sich derzeit nicht im selben Adressbereich wie eth0. An eth1/wlan0 sollen alle Endgeräte, welche auf den VPN-Service zugreifen möchten, verbunden sein.

  • RPi-Ausgabe

    Code
    3: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
        link/ether 9e:38:ad:5d:fb:28 brd ff:ff:ff:ff:ff:ff
    
    4: eth1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
        link/ether 00:0e:c6:6b:03:d7 brd ff:ff:ff:ff:ff:ff

    Das wlan0- und das eth1-Interface haben keine IP-Adresse. War das immer so?

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

  • Das wlan0- und das eth1-Interface haben keine IP-Adresse. War das immer so?

    No, ich musste mir eine Sicherung wieder einspielen, da ich durch die Rerumtesterei das RPi-OS zerlegt habe. Ist es denn sinnvoll für mein Ziel wlan0 und eth1 im selben Adressbereich zu platzieren wie eth0? Ich hatte einen abweichenden Adressbereich z.B. 192.168.177.XX für die beiden Schnittstellen festgelegt um zu verhindern, dass später der Tunnel umgangen wird.

  • Wenn der Verkehr in den Tunnel gehen soll, müssen die Clients natürlich wissen, wie sie den Tunnel erreichen.

    entweder es gibt eine Route pro Client, welche das lokale Interface des VPN-Routers als Gateway zu dem entfernten Netz benennt (nicht das Tunnelnetz), oder in der F!B wir eine neue Route eingetragen.

    Code
    Netzwerk        Subnetzmaske    Gateway
    10.11.12.0      255.255.255.0   192.168.178.2

    Ich habe im Beispiel das entfernte Netz 10.11.12.0/24 genannt und dem VPN-Router die lokale IP 192.168.178.2 gegeben.

    Zu finden in der F!B unter:

    "Heimnetz => Netzwerk", ganz unten "weitere Einstellungen", ganz unten "Statische Routen => IPv4-Routen"

    Computer ..... grrrrrr

Jetzt mitmachen!

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