tzabbi
Goto Top

Wireguard kann keine Verbindung von Client zu Server herstellen

Hallo liebe Admins,

ich habe mich über die Feiertage an Wireguard herangetraut. Die ganzen Tutorials sehen sehr einfach aus. So hab ich mir bei Ionos einen vServer gemietet und wollte das Ganze mal austesten.

Auf dem vServer läuft ein Ubuntu 18.04 LTS und als Clients habe ich ein Ubuntu 19.10 sowie ein Windows 10 (1909).
Die Installation habe ich, wie auf der offiziellen Wireguardseite beschrieben, vorgenommen und die Konfiguration von diesem Video übernommen.

Der Port 51820 ist in der Firewall von Ionos freigegeben.
Als ich mich nun verbinden wollte, kam allerdings der Fehler, dass der Handshake nicht übermittelt werden konnte und auch nach mehrmaliger Überprüfung der Konfigfiles, habe ich kein Fehler feststellen können.

Leider bin ich hier mit meinem Latein am Ende und bitte euch um Hilfe bei dem Thema, was für Informationen benötigt Ihr, damit wir gemeinsam den Fehler beseitigen können?

Euch schöne Osterfeiertage
tzabbi

Content-Key: 564598

Url: https://administrator.de/contentid/564598

Printed on: April 25, 2024 at 07:04 o'clock

Member: aqui
aqui Apr 12, 2020, updated at Mar 12, 2021 at 21:47:38 (UTC)
Goto Top
Alles wirklich gem. diesen Tutorials umgesetzt: Merkzettel: VPN Installation mit Wireguard
Der Port 51820 ist in der Firewall von Ionos freigegeben.
Mit der oberflächlichen Angabe kann ein Netzwerker nichts anfangen. face-sad Für welches Protokoll denn ?? TCP oder UDP ?
Vermutlich hast du genau das falsche freigegeben. Wireguard verwendet UDP !

Hier findest du ein paar wasserdichte Anleitungen mit denen es wirklich fehlerlos klappt. Folge deren Schritten dann kommt das auch sofort zum Fliegen !
https://www.heise.de/select/ct/2019/5/1551091519824850
Bzw. das hier im Detail:
https://www.heise.de/ratgeber/Einen-eigenen-VPN-Server-mit-WireGuard-bau ...

Nutze auch das Tool tcpdump um zu checken das die der Wireguard Client Traffic auch wirklich am Server ankommt !! Beachte zudem eine sinnvolle_VPN_IP_Adressierung um Fehler zu vermeiden !
Im Zweifel nutzt du OpenVPN:
Merkzettel: VPN Installation mit OpenVPN
Member: tzabbi
tzabbi Apr 12, 2020 at 11:21:37 (UTC)
Goto Top
Ja entschuldige ist natürlich UPD, das Protokoll gebe ich schon mit an.

Ich habe es jetzt hinbekommen eine Verbindung zwischen Server und Client aufzubauen (Raspbian und Cubuntu 19.10) allerdings klappt die Verbindung mit selber Konfigurationsdatei und Windows nicht, gib es da noch was zu beachten?

Die Links werde ich mir heute Nachmittag durchlesen.

VG tzabbi
Member: aqui
aqui Apr 12, 2020 updated at 11:39:01 (UTC)
Goto Top
gib es da noch was zu beachten?
Ja, wie immer die Windows Firewall !
Die Winblows Autoerkennung des Tunnel Interfaces schlägt fehl so das Windows das Tunnel Interface in der Firewall als Öffentlich deklariert und dann sämtlichen Traffic blockiert. Das musst du in der Firewall mit erweiterten Eigenschaften auf das Privat Profil setzen.
ICMP (Ping) ist auch im Default deaktiviert. Wenn du den Windows Rechner pingen willst oder von ihm pingen willst musst du das auch anpassen:
https://www.windowspro.de/wolfgang-sommergut/ping-windows-10-erlauben-gu ...
ansonsten klappt kein Ping !
Member: Visucius
Visucius Apr 12, 2020 updated at 14:35:29 (UTC)
Goto Top
Hallo tzabbi,

Glückwunsch zur Feiertagstätigkeit face-wink

Ich spiele das gerade mit nem Ubuntu LTS 20.4 als Hyper-V Instanz hinter Fritze durch. Und zumindest innerhalb des Netzwerks (d.h. mit vorgeschalteter Fritze-VPN) klappt das überraschender Weise schon mal auf Anhieb.

Bin zwar selber Newbie, habe mir aber schon einige Installationen z.B. auf Raspi zu Gemüte geführt und durchgespielt.

In dem Zusammenhang finde ich Dein verlinktes Video etwas verwirrend, vielleicht helfen Dir die folgenden Links ja aus der Sackgasse:

https://github.com/notasausage/pi-hole-unbound-wireguard
(... der zweite Teil. Und ja Raspi - geht bei Ubuntu aber auch)

https://www.stavros.io/posts/how-to-configure-wireguard/

https://www.linode.com/docs/networking/vpn/set-up-wireguard-vpn-on-ubunt ...

https://www.heise.de/tipps-tricks/Ubuntu-Firewall-einrichten-4633959.htm ...

Viel Erfolg und noch schöne Feiertage
Member: tzabbi
tzabbi Apr 12, 2020 at 15:15:54 (UTC)
Goto Top
Ich habe den Netzwerktyp per Regedigt (https://superuser.com/questions/120038/changing-network-type-from-uniden ..) geändert. Leider kommt immer noch der Fehler.

Selbst mit deaktivierter Firewall wird keine Internetseite aufgebaut.
Member: aqui
aqui Apr 12, 2020 updated at 15:27:41 (UTC)
Goto Top
Die Routing Tabelle des Clients bei aktivem VPN Tunnel wäre sehr hilfreich zum Troubleshooting:
  • route print = Windows
  • ip route show oder netstat -r -n = unixoide Betriebssysteme
Ebenso ein Traceroute z.B. auf die 8.8.8.8 (Windows = tracert)
Member: tzabbi
tzabbi Apr 12, 2020 at 15:47:50 (UTC)
Goto Top
Hey Visucius,

vielen Dank für die ganzen Links! Derzeit bin ich noch dabei die Windowsprobleme zu lösen aber die Anleitungen werde ich mir nochmal alle anschauen face-smile

Danke dir auch!
tzabbi
Member: tzabbi
tzabbi Apr 12, 2020 updated at 16:30:13 (UTC)
Goto Top
route print:

Interface List
63...........................WireGuard Tunnel
9...fc 45 96 65 93 9b ......Intel(R) Ethernet Connection I219-LM
15...34 f3 9a b7 45 8b ......Microsoft Wi-Fi Direct Virtual Adapter
10...36 f3 9a b7 45 8a ......Microsoft Wi-Fi Direct Virtual Adapter #2
26...34 f3 9a b7 45 8a ......Intel(R) Dual Band Wireless-AC 8260
14...34 f3 9a b7 45 8e ......Bluetooth Device (Personal Area Network)
1...........................Software Loopback Interface 1
13...b0 99 86 59 48 52 ......Generic Mobile Broadband Adapter

IPv4 Route Table
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 172.20.10.1 172.20.10.11 50
0.0.0.0 0.0.0.0 On-link 192.168.123.10 0
127.0.0.0 255.0.0.0 On-link 127.0.0.1 331
127.0.0.1 255.255.255.255 On-link 127.0.0.1 331
127.255.255.255 255.255.255.255 On-link 127.0.0.1 331
172.20.10.0 255.255.255.240 On-link 172.20.10.11 306
172.20.10.11 255.255.255.255 On-link 172.20.10.11 306
172.20.10.15 255.255.255.255 On-link 172.20.10.11 306
192.168.123.0 255.255.255.0 On-link 192.168.123.10 256
192.168.123.10 255.255.255.255 On-link 192.168.123.10 256
192.168.123.255 255.255.255.255 On-link 192.168.123.10 256
224.0.0.0 240.0.0.0 On-link 127.0.0.1 331
224.0.0.0 240.0.0.0 On-link 172.20.10.11 306
255.255.255.255 255.255.255.255 On-link 127.0.0.1 331
255.255.255.255 255.255.255.255 On-link 172.20.10.11 306
Persistent Routes:
None

IPv6 Route Table
Active Routes:
If Metric Network Destination Gateway
1 331 ::1/128 On-link
26 306 fe80::/64 On-link
26 306 fe80::d805:b542:ce2b:237f/128
On-link
1 331 ff00::/8 On-link
26 306 ff00::/8 On-link
Persistent Routes:
None


und Traceroute:

Tracing route to 8.8.8.8 over a maximum of 30 hops

1 114 ms 50 ms 46 ms 192.168.123.1
2 61 ms 49 ms 49 ms 192.168.10.1
3 68 ms 52 ms 67 ms 62.155.247.141
4 80 ms 60 ms 64 ms 217.5.94.254
5 * * 96 ms 80.156.160.118
6 82 ms 60 ms 56 ms 216.239.63.199
7 69 ms 57 ms 61 ms 74.125.37.99
8 74 ms 61 ms 68 ms 8.8.8.8


Edit: bei meinem iPhone kann ich das gleiche Verhalten beobachten. Ich habe die Wireguard App aus dem Apple Appstore geladen und alles eingerichtet. Der Server meldet einen aktivie Verbindung und es sind auch einige Bits geflossen, allerdings kann ich keine Seite, nicht mal innerhalb des Netzwerkers, wie z.B. das Webinterface meines Routers, öffnen.
Member: Visucius
Solution Visucius Apr 13, 2020 updated at 04:35:58 (UTC)
Goto Top
So, hatte Anfangs auch dieses "Handshake-Problem" in den Logfiles face-wink

War jetzt aber doch nur ne Kleinigkeit: Nachdem auf dem Server auch "Peer-Keys" konfiguriert wurden (warum eigentlich?) bin ich da offenbar irgendwie durcheinandergekommen.

Der Server hat natürlich seine public/privates und der Client generiert seine eigenen public/privates. Und die publics werden gegenseitig eingetragen.

Hier das Clientinterface:
[Interface]
  PrivateKey = >> den hat mein Client hier schon automatisch eingetragen
  Address = 192.168.y.2/32 >> das interne VPN-Netz <<
  DNS = 192.168.x.1 >> den DNS deines "realen" Zielnetzes (in meinem Fall die Fritze im Zielnetz) <<  

[Peer]
  PublicKey = >>der Public vom Zielserver <<
  AllowedIPs = 192.168.x.0/24 >> der Adressbereich, der sich anmelden darf <<
  Endpoint = xxxxxxx.goip.de:51820 >> meine DDNS-Adresse <<
  PersistentKeepalive = 60

Mit diesen Einstellungen bei "Allowed IPs" komme ich auch auf andere Geräte im Zielnetz!

Hier der Server:
interface: wg0
  public key: >> Der Public vom HyperV-Server <<
  private key: (hidden) >> Habe ich dort ja selber generiert und bei Erstellung von wg0 eingetragen <<
  listening port: 51820

peer: >> Hier steht die public key vom Client/MacBook <<
  endpoint: WAN-IP???:56642 >> wird offenbar automatisch eingetragen <<
  allowed ips: 192.168.y.2/32
  latest handshake: 37 minutes, 12 seconds ago
  transfer: 36.61 MiB received, 25.42 MiB sent
  persistent keepalive: every 1 minute

Dazu habe ich noch den Port 51820 von der Zielfritze auf den HyperV-Server umgeleitet. Ein Portwechsel von irgendwas auf 51820 (im internen Netz) hatte sie leider nicht zugelassen. Anschließend mit "ufw allow 51820" den Port in die Ubuntu-FW gebrannt.

Anchließend noch iper3 ("sudo apt-get install iperf3" und "iperf3 -s") auf dem Zielserver aktiviert und mal getestet. Ist bei (noch) beidseitigem DSL 50/10 allerdings etwas spaßbefreit face-wink

Wirguard-VPN schafft die 10 Mbit/s up/down
Fritzbox (7490) -VPN schafft die 10 Mbit/s UP auch - aber down nur 5 Mbit/s.
(Packets 100 MB)

Jetzt noch(mal) die Firewall auf der Ubuntu-VM prüfen alles neu starten und hoffen, dass das alles wieder hochkommt. Dann ist Ostern gerettet face-wink

Viele Grüße, vielleicht helfen Dir die Angaben ja.
Member: aqui
Solution aqui Apr 13, 2020 at 09:10:45 (UTC)
Goto Top
allerdings kann ich keine Seite, nicht mal innerhalb des Netzwerkers, wie z.B. das Webinterface meines Routers, öffnen.
Hast du dir die HE.NET Tools mal auf das iPhone geladen:
https://apps.apple.com/us/app/he-net-network-tools/id858241710
und mal geprüft ob du Server oder Ziele im remoten LAN pingen kannst ?
Member: tzabbi
tzabbi Apr 13, 2020 at 14:03:11 (UTC)
Goto Top
Ja das funktioniert, ein Portscan z.B. auch. Ich hab es intern und extern getestet.
Member: tzabbi
tzabbi Apr 13, 2020 at 14:55:15 (UTC)
Goto Top
Hallo Visucius,

entweder bin ich einfach nur dumm gewesen oder ich wusste es einfach nicht besser. Als ich mir deine Config angeschaut habe, ist mir aufgefallen, dass ich keinen DNS angegeben hatte und habe mein lokalen DNS-Server eingegeben. Siehe da, auf einmal funktionieren alle Webseiten.

Ich werde es jetzt noch bei dem Windowsclient testen, aber sollte ich nichts mehr schreiben lag es echt am DNS Server. Entschuldigt meine Dummheit...

Das Einzige was mich nur wundert, ist, dass selbst IP-Adressen in der Browserleiste nicht gefunden werden konnten.


Aber dir und aqui tausend Dank!!! Für eure zahlreichen Hilfen. Ich hoffe ihr habt alle ein tolles Osterfest!

Vg tzabbi
Member: Visucius
Visucius Apr 13, 2020 updated at 15:05:51 (UTC)
Goto Top
Nix Dummheit.

Das ist beim ersten Mal wirklich tricky. Und ich finde da kommt man bei den meisten Anleitungen auch gerne mal durcheinander. Ich habe gerade eben noch schnell nen zweite Verbindung, diesmal Pihole-Raspi hinter Fritze, gemacht ... und auch da gings nicht auf Anhieb face-wink

Ich glaube man macht sich am besten ein (eigenes) Muster für die Server und Client-Config-Files, mit eigenen Kommentaren.

Außerdem ... beim zweiten Mal gehts schneller (stimmt auch hier ganz offenbar).

Viele Grüße und noch schöne RestOstern.

PS: Thread ggfs. auf "gelöst" setzen, wenn alle Klarheiten restlos beseitigt sind face-wink
Member: tzabbi
tzabbi Apr 13, 2020 at 15:30:56 (UTC)
Goto Top
Gerade eine eigene Clientkonfig geschrieben und da ging auch alles super und gleich beim ersten Mal!

Danke nochmal an alle!