Ports auf vServer geschlossen

  • Hallo zusammen,


    ich bin noch ein Neuling auf dem Gebiet der Server usw. aber bin fleißig am lernen und brauche mal etwas Hilfe...


    Zum üben habe ich mir einen günstigen VPS 200 G10s gemietet und versuche u.a. ein VPN via Wireguard aufzubauen, allerdings bekomme ich keine Verbindung, dann ist mir aufgefallen, dass bei der entsprechende Port geschlossen ist.


    Wenn ich z.B. über Port Checker Online | Offene Ports prüfen - PortChecker.de 🔍 einen Portcheck auf die IP meines Servers zu machen, sagt der, das der Port 51820 (Wireguard UDP) geschlossen ist.


    Eine Firewall wie ufw habe ich nicht separat installiert.


    Mache ich nmap auf dem Server auf die IP oder localhost ist auch alles zu:

    pasted-from-clipboard.png


    Wenn ich die iptables anschaue, sollte doch eigentlich auch alles frei sein, oder verstehe ich da was falsch?


    pasted-from-clipboard.png

    Ich bin über jede Hilfe sehr dankbar!

  • Portscan? UDP? Wird wohl nicht funktionieren..

    Schau dir die Dienste und deren Ports an, wie es Valkyrie vorgeschlagen hat an

    Webhosting: Bestprice Classic

    Server: RS Frankenstein - VPS 200 G8 BF20

  • Bist du dir denn sicher, dass Wireguard auch richtig eingerichtet ist?

    Du kannst z.B. mal mit ss -tulpen schaue, ob überhaupt ein Dienst auf diesem Port lauscht.

    Habe meine Wireguard Conf mit diversen Anleitungen abgeglichen und bin mir ziemlich sicher ;-). Da ich im Moment nicht zu Hause bin, kann ich da die Verbindung nur zwischen meinem iPhone und dem Server testen (manuelles Setup), da schaue ich später noch mal zu Hause genau nach.


    Okay, hier mal das Ergebnis von ss -tulpen

    pasted-from-clipboard.png


    Der Port ist vorhanden, aber state ist falsch, oder wie habe ich das zu verstehen?

  • State ist in Ordnung, ist halt UDP und sieht bei mir genau so aus.

    Scheinbar lauscht der Service auch schon darauf, das ist schon mal gut :)


    Portscan? UDP? Wird wohl nicht funktionieren..

    Doch das geht mit nmap.

    Hier der Output aus Zenmap mit einem funktionierenden Wireguard:

    Code
    PORT      STATE         SERVICE
    
    58120/udp open|filtered unknown


    c7h12

    Versteif dich nicht darauf, dass dein lokaler nmap Scan den Port als closed anzeigt. Ich habe deinen Befehl bei mir getestet und er zeigt auch closed an, von woanders aber offen (siehe oben).

    Gegebenenfalls hakt es nur noch bei den Keys, da kommt man schnell durcheinander. Wird dir denn schon dein peer angezeigt, wenn du wg ausführst?.

  • Vielen Dank für die Info!

    Ja, den Peer habe ich eingerichtet, im Prinzip identisch zu dieser Anleitung WireGuard Site to Site VPN einrichten - Netzwerke sicher verbinden !! #VPN #SiteToSite - YouTube.

    Config:

    pasted-from-clipboard.png

    eth0 ist laut ip a richtig.


    Der Peer ist auch sichtbar, aber Ping funktionieren nicht und auch die Menge der ausgetauschten Daten werden nicht angezeigt:

    Ausgabe Server wg:

    pasted-from-clipboard.png


    Im Client:

    Öffentlichen Schlüssel des Servers eingetragen

    Endpunkt: IP des [VPS]:51820

    Zulässige IPs: 0.0.0.0/0


    Im Log des Clients sehe ich dann: peer(Public Key des Servers) - Handshake did not complete

  • Spontan würde ich sagen, dass es in Ordnung aussieht.

    In der Situation war ich auch schon öfters und jedes mal waren es bei mir die Keys. Vielleicht nochmal neue Schlüsselpaare erstellen und die dann probieren. Sicher gehen, dass man wirklich den Public Key in die jeweilige Peer Stelle einträgt und nicht versehentlich einen anderen :)

  • Zu nmap auf dem Localhost: Die Server lauschen ja nicht auf dem lo Interface (127.0.0.1), folglich scheitert ein lokaler Portscan.


    Ansonsten würde ich zur weiteren Analyse tcpdump empfehlen, am besten auf Server und Client, damit man sieht, was auf den jeweiligen Interfaces auf den entsprechenden Ports ankommt.

  • Die Zähler der Firewall können hilfreich sein:

    Mit iptables -I INPUT -p udp --dport 51820 -j LOG legst du eine Firewallregel am Anfang der INPUT Chain an und mit iptables -v -L INPUT lässt du dir die Regeln der INPUT Chain inkl. Zählerständen anzeigen. So kannst du sehen, ob entsprechende UDP Pakete deinen Server erreichen. Im Systemlog kannst du so außerdem noch Details der Pakete sehen. Die Regel sollte man nach dem Testen wieder entfernen, damit das Log nicht überläuft und weil das Loggen Performance kostet.

  • Dein Server ist ungesichert am Netz.


    Als Mindestschutz sollte man schon die input und forward policy auf deny stellen und dann nur das Nötigste öffnen.


    Dann hat man wenigstens einen Schutz ähnlich der eines heimischen Routers.


    Ich habe das gleiche im Einsatz d.H. eine wireguard Verbindung zwischen Fritzbox und vserver. Die konfigs kann ich dir heute Abend irgendwann zur Verfügung stellen.



    Edit:


    Im Anhang befindet sich eine iptables Konfiguration und eine funktionierende Wireguard-Konfiguration. Du musst nur dein eigenes Keymaterial einfügen.

    Die Skripte, Files sind entsprechend kommentiert. Die Verbindungen werden zum VPS aufgebaut, da dieser 24h läuft und eine feste ipv4 besitzt.


    Schau mal, ob du damit etwas anfangen kannst.

  • Ansonsten finde ich das hier noch ganz nett, um schnell mal WireGuard Configs zum Testen zu erstellen: https://www.wireguardconfig.com/

    Damit habe ich es jetzt hinbekommen! Vielen Dank für eure Hilfe! War wahrscheinlich wirklich einfach ein Fehler in den Schlüsseln...


    Ich schaue mir mal deine iptables an, da es jetzt läuft. Aber iptables muss ich mir erstmal etwas genauer anschauen...

  • Damit habe ich es jetzt hinbekommen! Vielen Dank für eure Hilfe! War wahrscheinlich wirklich einfach ein Fehler in den Schlüsseln...


    Ich schaue mir mal deine iptables an, da es jetzt läuft. Aber iptables muss ich mir erstmal etwas genauer anschauen...

    Einen RootServer zu betreiben ist nicht banal. Ich kann da nur warnen. Installiere Dir eine Virtualisierungsloesung lokal und spiele mit virtuellen Servern um zu lernen. Das ist weniger gefaehrlich und du kannst Szenarien vorher durchspielen

    Code
    Stefan Lindecke - lindesbs              | Nicht jeder braucht einen RootServer,
    SeniorAdmin, Contao, OpenSource, Debian | Uebt erstmal in einer lokalen VM !
    Gefällt mir 2
  • Einen RootServer zu betreiben ist nicht banal. Ich kann da nur warnen. Installiere Dir eine Virtualisierungsloesung lokal und spiele mit virtuellen Servern um zu lernen. Das ist weniger gefaehrlich und du kannst Szenarien vorher durchspielen

    Danke für den Rat!

  • Stimmt, aber wenn er nur Wireguard nutzt und alles andere blockiert, wird das schon in Ordnung gehen.


    iptables muss dann aber mindestens richtig eingerichtet werden, denn wenn beispielsweise unsichere Dienste gestartet werden, wie z.b. Samba oder andere unverschlüsselte Dienste, dann kann jeder direkt die Daten einsehen :) Die Botnetze freuen sich...


    Stehen die Policies auf Accept, akzeptiert die Firewall alle Verbindungen, die nicht manuell verboten wurden.

  • Stimmt, aber wenn er nur Wireguard nutzt und alles andere blockiert, wird das schon in Ordnung gehen.


    iptables muss dann aber mindestens richtig eingerichtet werden, denn wenn beispielsweise unsichere Dienste gestartet werden, wie z.b. Samba oder andere unverschlüsselte Dienste, dann kann jeder direkt die Daten einsehen :) Die Botnetze freuen sich...


    Stehen die Policies auf Accept, akzeptiert die Firewall alle Verbindungen, die nicht manuell verboten wurden.

    Habe das Script jetzt mal ausgeführt, nur natürlich mit meinen IPs, allerdings komme ich seit dem nicht mehr auf mein lokales Netz (192.168.1.0/24), was vorher natürlich ging, als noch alles offen war.

    pasted-from-clipboard.png


    Muss ich da noch was ändern?