[gelöst]DS218 von außen erreichbar

  • ich glaub, die euphorie war auch zu schnell da. ich werkel weiter...

    hatte ja die configs so weit abgespeckt, dass in den AllowedIPs nur die 10.0.0.0/24 drin stand.

    als ich versucht habe jetzt erstmal nur das heimetz wieder verfügbar zu machen mit 192.168.178.0/24, wars wieder vorbei...

    ich glaube, die statischen routen aktivieren / deaktivieren, hatte damit auch nichts zu tun.

    ich tüftle weiter, aber es wird wohl auf etwas recht simples hinauslaufen, wie ich befürchte: reload / restart befehl sowohl auf server als auch auf client nach änderung der wg0.conf -.-

  • Also, damit du das systematisch nachvollziehen kannst.

    - Arbeite zunächst nur mit VPS und rpi

    - Bitte setze auf der FB keine Route

    - Achte darauf, dass jeder Peer eine saubere Adresse im Format Adresse/Maske erhält (zum Beispiel 10.0.0.1/24)

    - AllowedIPs setzt du bitte auf 10.0.0.0/24

    Damit sollten beide Knoten sauber miteinander reden können, also vor allem erstmal ping. Wie gesehen, haben die lokalen Firewalls keine blockierende Regel.

    Erst danach würde ich die weitere Konfiguration erarbeiten.

  • das funktionier!

    also bis jetzt kann ich vom server den rpi pingen und vom pri den server pingen über die wireguard ips 10.0.0.1 (server) bzw 10.0.0.3 (rpi).

    wenn ich on top vom server die lokalen ips pingen können will, bekommt die client config oder die server config das als allowed ip mitgeteilt?

    und im nächsten schritt kommt die verbindung vom handy dazu.
    darüber will ich ja primär die lokalen ips ansprechen

  • Tipp: Jetzt kostenlos registrieren, mitmachen und das Forum ohne Werbebanner nutzen.
  • so, es funktioniert.

    ich kann sowohl vom VPS aus die lokale IP vom rpi pingen als auch die wireguard ip adresse vom rpi anpingen.

    desweiteren kann ich vom rpi die wireguard ip adresse des servers pingen.

    aktuell sind keine routing regeln in den configs hinterlegt. die statische ip route auf der fritzbox ist aktiv.

    next step jetzt: handy als peer auf dem vps anlegen.
    welche allowed ips bekommt der peer in der server config? und welche allowed ips trag ich in der client config ein?

    und dann nochmal das thema routing regeln in der server config... masquerade und der driss -.-

    2 Mal editiert, zuletzt von Ice86 (25. Oktober 2023 um 23:00)

  • Tipp: Jetzt kostenlos registrieren, mitmachen und das Forum ohne Werbebanner nutzen.
  • wow, es funktionier!!!

    das problem scheint gewesen zu sein, dass beim eintragen des zweiten peers auf dem VPS server irgendwas zerschossen wurd.

    bis dato hatte ich auf dem VPS als Peers folgendes:

    Code
    [Peer] //RPI
    PublicKey = XXXX
    AllowedIPs = 10.0.0.0/24, 192.168.178.0/24
    
    [Peer] // Handy
    PublicKey = YYYY
    AllowedIPs = 10.0.0.0/24

    sobald der zweite Eintrag Peer Handy dazu gekommen ist, konnte ich den RPI nicht mehr über die Wireguard Adresse pingen! iptabels -L -v hat keine Auflösung auf das WG Netz mehr gezeigt, nur auf das lokale 192.er Netz! Mit deinem letzten Post, lieber Frank, habe ich die AllowedIPs in der Severconfig jetzt die AllowedIPs der Clients geändert, sprich

    Code
    [Peer] //RPI
    PublicKey = XXXX
    AllowedIPs = 10.0.0.3/32, 192.168.178.0/24
    
    [Peer] // Handy
    PublicKey = YYYY
    AllowedIPs = 10.0.0.4/32

    und es hat beim ersten mal gezündet!!!

  • Ja, super.

    Ist im Grunde auch logisch. In deinem ersten Versuch hatte der VPS zwei VPN Gegenstellen, die beide das gesamte Netz 10.0.0.0/24 für sich reklamierten. Wohin jetzt ein Paket an z.B. 10.0.0.3 schicken? An den ersten oder an den zweiten? Offenbar hat sich der VPS für den falschen entschieden.

    Nun ist es klar: 10.0.0.3 geht auf den ersten VPN Eintrag, 10.0.0.4 auf den zweiten. Keine Missverständnisse mehr.

    Ich werde oft dafür kritisiert, wenn ich Subnetzmasken stark einschränke, auch im Adress-Feld der VPN Konfigurationen mache ich das gern. Oft macht es tatsächlich keinen Unterschied, aber manchmal halt doch.

  • Tipp: Jetzt kostenlos registrieren, mitmachen und das Forum ohne Werbebanner nutzen.
  • wireguard inbetriebnahme in 54 Posts! :D

    ich bedanke mich ganz ganz ganz herzlich für die Hilfe!!!!

    heute abend werde ich noch hier meine Server- und Clientconfigs final hochladen. für die Nachwelt quasi. weil ich stark annehme, dass der ein oder andere ein ähnliches problem haben könnte. vllt hilft es ja.

    das Handy der Frau und den Laptop werde ich jetzt noch ebenso einbinden und hoffe, dass das dann ein für alle mal läuft.

    final würd ich noch gern über die VPS firewall sprechen wollen. der Wireguard Port UDP 51820 bleibt freigegeben, nehme ich an?

    Des Weiteren sind Defaultmäßig die TCP Ports 22 (SSH), 80, 443, 8443 und 8447 freigegeben.

    Den SSH Port würd ich gern schließen, wenn die finale Config steht. Wie siehts mit den anderen Ports aus? Können die offen bleiben?

  • Ja, guter Hinweis.

    Die Sache macht es hier etwas einfacher, wenn man ein extra Netz über alle Knoten aufspannt. Wenn sonst mehrere, vielleicht sogar dynamische Netze ins Spiel kommen, wird es komplizierter, da dann auf dem VPS irgendwie genattet werden müsste.

    VPS/Firewall: Wenn die aktiv ist, dann kann das nur funktionieren, wenn du eingehend am VPS den Port 51820 freigibst. Wenn das bisher ohne Eintrag funktioniert hat, dann stimmt etwas nicht!

    Wenn dir beim Hoster ein Konsolenzugriff reicht, dann kannst du alle weiteren Ports zusperren.

    Beim Thema SSH ist aber zu empfehlen, den Root-Zugriff zu verbieten und nur Authentifizierung via Key zu gestatten.

    Sieh aber zu, dass der VPS regelmäßig Updates einspielt. Das kann man je nach Distribution unterschiedlich einrichten.

  • Noch eine Ergänzung.

    In der Zwischenzeit hat Strato IPv6 bei weiteren Produkten implementiert.

    Auch das Paket "VPS Entry Linux VC1-1" bekommt nun eine IPv6-Adresse. Kostet 1€/Monat.

    Damit würden sich auch andere Optionen ergeben, wie z.B. 6tunnel.

  • Tipp: Jetzt kostenlos registrieren, mitmachen und das Forum ohne Werbebanner nutzen.
  • a propos IPv6...

    beim rumexperimentieren in meiner Ionos VPS XS SSH Oberfläche (also quasi auf meinem VPS über SSH) habe ich beim eingeben von "ifconfig" neben einer IPv4 Adresse (die auch in der Ionos Serververwaltung als öffentliche IP Adresse auftaucht) noch zusätzlich einen IPv6 Eintrag gesehen.

    Heißt das, dass der VPS auch über IPv6 angesprochen werden kann, auch wenn das nicht bei Ionos in der Seververwaltung auftaucht?

    Also momentan sieht es ja so aus, dass ich mit meinem Handy aus einem IPv4 Handynetz problemlos auf mein Heimnetzwerk komme.

    Wenn ich in einem reinen IPv6 Netzwerk wäre, hätte ich mir jetzt das Fritzbox Wireguard Bordmittel eingerichtet, um auf mein Heimnetz zu kommen.

    Angenommen, der VPS unterstützt jetzt beides, also IPv4 und IPv6, gibt es da eine Möglichkeit die bestehende wg0 Config so zu konfigurieren, dass die sich aussucht, ob IPv4 oder IPv6 benutzt wird?

  • Welches Prefix hat denn die Adresse?

    Ergänzung:

    Du kannst die wg-Verbindung natürlich auch via IPv6 realisieren. Am besten erstellst du dafür jeweils einen A/AAAA-Record im DNS und der Client (sprich Handy etc) entscheidet dann selbstständig, ob es via IPv4 oder IPv6 verbindet.

  • Prefix sieht so aus:

    inet6 fe80::1:f8ff:fefd:ebb5 prefixlen 64

    dadrunter kommt dann in der ifconfig ausgabe "ether" und noch ein paar zahlen im format

    xx:xx:xx:xx:xx:xx

    okay, also bräuchte ich quasi eine TLD und dort würde man im A und AAAA Record die jeweilige IPv4 sowie IPv6 Adresse des VPS angeben?

    Und in der wg0.conf würde ich als Endpoint dann mit der TLD arbeiten anstatt mit der aktuell benutzten öffentlichen IPv4 Adresse?

    2 Mal editiert, zuletzt von Ice86 (26. Oktober 2023 um 13:34)

  • Tipp: Jetzt kostenlos registrieren, mitmachen und das Forum ohne Werbebanner nutzen.
  • Das ist nur eine Link-Local-Adresse. Die wird nicht öffentlich geroutet, damit für dich unbrauchbar.

    Die vergibt sich jedes System selbst.

    Du kannst einen beliebigen DynDNS-Hoster nehmen, wie https://freedns.afraid.org/.

    Oder du registrierst eine für dich spannende Domain. Wenn dir die Möglichkeiten zur Konfiguration der Zonen nicht reichen, kannst du das vielleicht an https://desec.io delegieren. Dort kannst du dann eigentlich sehr viel hinterlegen, auch eigenen weitere Zonen.

    Und klar, dann erfolgt die Kommunikation über den DNS-Namen statt IP-Adresse.

  • aah schade! Ich denke aber, Ionos wird sicherlich auch noch nachziehen mit der IPv6. Aber super Info das mit Strato für manch einen hier, der vor der gleichen Aufgabe steht.

    coole Sache eigentlich!

    die Änderung des Ansprechens des Endpoints über die TLD wäre dann eigentlich die einizge Änderung an der wg0 Config, oder? Natürlich neben den IPv6 Weiterleitungsregeln dann.

    Man müsste dann halt nur noch sicherstellen dass der RPI eine IPv6 im lokalen Netz zugewiesen bekommt und dass sowohl auf dem VPS als auch auf dem RPI das IPv6 Forwarding aktiviert ist.

  • Tipp: Jetzt kostenlos registrieren, mitmachen und das Forum ohne Werbebanner nutzen.
  • wie versprochen, hier meine WG Server Config auf dem VPS und meine WG Client Config auf dem Raspberry

    Bei der Android WG App läuft die Konfiguration händisch wie folgt:

    Interface
    Name: such dir einen Namen für die Verbindung aus, zB. "Heimnetz"

    PrivateKey vom Handy

    PublicKey vom Handy

    Adressen: 10.0.0.4/24

    Nameserver: DNS Server (in meinem Fall eine lokale 192.168.178.xx Adresse, auf der mein Adguard Home läuft. Sonst auch 8.8.8.8

    Teilnehmer:

    Öffentlicher Schlüssel: PublicKey vom Server

    Endpunkt: Öffentliche_IP-Adresse:51820
    Erlaubte IPs: 10.0.0.0/24, 192.168.178.0/24

  • Zwei Ergänzungen:

    1) Die Policy der FORWARD-Chain muss auf DROP stehen, sonst ist die Regel zwar nett, aber ohne besondere Wirkung.

    Code
    Chain FORWARD (policy DROP 38 packets, 3192 bytes)

    2) Das ist zwar schon fast das Haar in der Suppe, aber wenn man so wenig Rechte wie notwendig vergeben möchte, kann man bei der FORWARD-Regel den Output auf dasselbe Interface beschränken.

    Code
    iptables -A FORWARD -i wg0 -o wg0 -j ACCEPT

    Damit kann die Regel nur Pakete vom Wireguard-Interface zum Wireguard-Interface weiterleiten.

    Und mehr muss der VPS auch nicht können.