h3xx3r Posted September 21, 2024 Posted September 21, 2024 Hallo, ich hoffe ihr könnt mir helfen. Ich versuche seit Tagen meinen im Docker laufenden Plex von außerhalb oder auch innerhalb meines VPN Netzwerk zu erreichen aber seit dem Update auf die neuste Unraid Stable und jetzt auch die 7 Beta 2 will es so garnicht mehr laufen. unter Unraid im VPN Manager hatte ich den neuen Reiter "VPN getunnelter zugang für Docker" genau das möchte ich auch. Grund ich habe Kabel internet mit dualstack und lasse meine Docker über den VPN der auf meinem 1und1 1€ Server mit IPV4 und IPV6 ins internet damit sie über meine Domain erreichbar sind. Testweise habe ich im Unraid einen Firefox Docker am laufen um zu sehen ob ich über den VPN ins Internet komme, das funktioniert aber ich habe darüber keinen zugriff auf das VPN Netzwerk, der Plex ist darüber nicht erreichbar und im Plex Webinterface steht auch unter Fernzugriff "nicht außerhalb deines Netzwerkes erreichbar" mit Routen und Iptables kenne ich mich leider nicht sonderlich gut aus also hatte ich beim rumexperimentieren auch keinen Erfolg. zu meinem Aufbau: Unraid 7 Beta 2 zu hause in einem Fritz Netzwerk 192.168.178.2, die VPN IP 10.8.0.2 [Interface] PrivateKey=meinkey Address=10.8.0.2 MTU=1500 PostUp=logger -t wireguard -- 'Tunnel WireGuard-wg0 started';/usr/local/emhttp/webGui/scripts/update_services PostDown=logger -t wireguard -- 'Tunnel WireGuard-wg0 stopped';/usr/local/emhttp/webGui/scripts/update_services PostUp=ip -4 route flush table 200 PostUp=ip -4 route add default via 10.8.0.2 dev wg0 table 200 PostUp=ip -4 route add 192.168.178.0/24 via 192.168.178.1 dev br0 table 200 PostDown=ip -4 route flush table 200 PostDown=ip -4 route add unreachable default table 200 PostDown=ip -4 route add 192.168.178.0/24 via 192.168.178.1 dev br0 table 200 [Peer] PublicKey=meinkey PresharedKey=meinkey Endpoint=1und1serveripv4:51820 AllowedIPs=0.0.0.0/0 PersistentKeepalive=15 auf dem 1und1 Server läuft einfach nur wireguard mit web UI Server Interface Adress 10.8.0.0/24 Wireguard Clients Unraid ip 10.8.0.2, IP Allocation 10.8.0.0/32 und Allowd IPs 0.0.0.0/0 mit PostUp und PostDown habe ich natürlich schon alles mögliche versucht aber momentan ist es leer weil nichts funktioniert hat. 1und1 Server: Route root@localhost:~# ip route default via 87.106.152.1 dev ens192 10.8.0.0/24 dev wg0 proto kernel scope link src 10.8.0.0 87.106.152.1 dev ens192 scope link Iptables root@localhost:~# iptables --list Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination ACCEPT all -- anywhere anywhere ACCEPT all -- anywhere anywhere Chain OUTPUT (policy ACCEPT) target prot opt source destination ifconfig root@localhost:~# ifconfig ens192: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 87.106.XXX.XXX netmask 255.255.255.255 broadcast 87.106.XXX.XXX inet6 fe80::250:56ff:XXXX:XXXX prefixlen 64 scopeid 0x20<link> inet6 2a01:239:XXXX:XXXX::1 prefixlen 128 scopeid 0x0<global> ether 00:50:56:18:f9:73 txqueuelen 1000 (Ethernet) RX packets 226707 bytes 161182025 (161.1 MB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 389226 bytes 271457521 (271.4 MB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1000 (Local Loopback) RX packets 84 bytes 6112 (6.1 KB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 84 bytes 6112 (6.1 KB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 wg0: flags=209<UP,POINTOPOINT,RUNNING,NOARP> mtu 1500 inet 10.8.0.0 netmask 255.255.255.0 destination 10.8.0.0 unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 1000 (UNSPEC) RX packets 104072 bytes 12653308 (12.6 MB) RX errors 114 dropped 0 overruns 0 frame 114 TX packets 124180 bytes 140222320 (140.2 MB) TX errors 12 dropped 335 overruns 0 carrier 0 collisions 0 Ziel auf Unraid VPN verbindung nur für Docker und die Docker sollen öffnetlich erreichbar sein über meine Domain und den Port außerdem sollen die VPN Clienten auch untereinander erreichbar sein. Bei 1und1 gibt es die Möglichkeit über das Interface Portfreigaben zu machen also eine extra Firewall wird nicht benötigt und der Port für Plex ist auch freigegeben 32400 für TCP. Ich hoffe ihr könnt mir helfen Vielen Dank Quote
Mainfrezzer Posted September 21, 2024 Posted September 21, 2024 Kommt alles auf die Konfiguration vom 1&1 Server an. Das Wireguard-Interface dort muss selbstverständlich sämtliche Regeln beinhalten. Was, wie, wo mit welchem Paket passieren soll. Für mich klingt das jetzt stark nach WG-Easy von der Beschreibung her, und das ist erstmal gut um "schell" nen ausgehenden Server bereit zu stellen. Wenn man Anfragen an den 1&1-VPN-Server weiterleiten möchte, zum Unraid-Server (bzw Plex-Container), muss man das ganze schon manuell konfigurieren. Als Beispiel: PreUp = iptables -t nat -A PREROUTING -i ens192 -p tcp --dport 80 -j DNAT --to-destination 10.8.0.2:32400 PostDown= iptables -t nat -D PREROUTING -i ens192 -p tcp --dport 80 -j DNAT --to-destination 10.8.0.2:32400 Wobei ens192 das Interface vom 1&1 Server ist und --to-destination die VPN IP vom Unraid-Interface. Wobei man bei dem Port drauf achten muss, wie der über Unraid weitergeleitet wird, weil sonst müsste man die WG-1-Docker-Bridge IP selbst anfragen um z.b. nativ zu Port, z.b. 172.31.202.2:32400 Man kann das ganze aber auch via Reverse Proxy lösen, was wahrscheinlich sinnvoller wäre in dem Fall hier. Z.b. via NGINX-Container auf dem 1&1 Server laufen lassen, Anfragen von "Was-auch-immer.com" an die, ich nehme mal an, "10.8.0.2:32400" senden und dann hat sich das ganze auch gehabt. Da muss man dann nicht groß mit iptables rumdoktern. Quote
h3xx3r Posted September 21, 2024 Author Posted September 21, 2024 (edited) @Mainfrezzer Danke das hat mir schon ein kleines bisschen geholfen. Auf dem 1und1 Server noch einen Docker laufen lassen wird leider nichts der 1 euro Server hat nicht die Kapazitäten großartig was zu machen der hat schon nur noch sp 10 bis 20mb ram frei und ich möchte es lieber nicht riskieren dass er sonst instabil läuft. Also ich habe es eingetragen und alles neu gestartet, der Plex ist vom VPN Netzwerk immer noch nicht erreichbar und auch nicht über meine Domain die auf dem 1und1 Server verknüpft ist aber ich denke mal das muss trotzdem drin stehen falls es endlich funktionieren sollte. Ich glaube irgendwie es liegt an einer Konfiguration von Unraid, der Plex hat zwar die IP vom 1und1 Server, ist aber trotzdem weder im VPN Netzwerk erreichbar noch von außerhalb. Wie bekomme ich denn heraus oder was müsste ich denn machen dass mein Plex Docker im VPN überhaupt erreichbar ist? So sieht es auf Unraid aus root@Media:~# ip route default via 192.168.178.1 dev br0 proto dhcp src 192.168.178.2 metric 1011 mtu 1500 172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 172.31.200.0/24 dev br-e6df9975c01d proto kernel scope link src 172.31.200.1 192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown 192.168.178.0/24 dev br0 proto dhcp scope link src 192.168.178.2 metric 1011 mtu 1500 Edited September 21, 2024 by h3xx3r Quote
Mainfrezzer Posted September 21, 2024 Posted September 21, 2024 Welches Plex Template wird denn benutzt? Das von Binhex und Linuxserver haben HOST als Standard drin. D.h. der Container muss dann statt auf Host, auf Custom: wg1 laufen. Dazu muss manuell noch ein Portmapping von 32400 auf 32400 angelegt werden (ansonsten muss man nämlich, wie oben erwähnt, die Docker Brücken IP nutzen) Das wars dann schon. Der Tunnel für Docker-Container zum Server Container mit Portmapping und VPN-Tunnel-Netzwerk Test auf Funktion, lokal (10.0.0.2 ist die Lan Adresse vom Unraid-System bei mir): Funktioniert. Container kann das Internet erreichen Nun zur Einstellung am VPN-Server im Internet Endgültiger Test: Tada Quote
h3xx3r Posted September 21, 2024 Author Posted September 21, 2024 (edited) Also ich benutze den Docker von Linuxserver und wie ich nun festgestellt habe ist da nicht mal ping implementiert 😕 Aber es zeigt mit unter Fernzugriff die IP von meinem 1und1 Server an. und in Unraid wenn ich iptables -t nat -A PREROUTING -i ens192 -p tcp --dport 32400 -j DNAT --to-destination 10.8.0.2:32400 in wg webinterface als PostUp eintrage ist der Server nicht erreichbar und leider auch nicht unter 10.8.0.2:32400 und das macht mich ja schon stutzig ich sehe den Fehler einfach nicht hier nochmal den VPN Manger Edited September 21, 2024 by h3xx3r Quote
Mainfrezzer Posted September 21, 2024 Posted September 21, 2024 (edited) Mit was wurden denn die Konfigurationsdatei auf dem 1&1 Server erstellt? [Interface] Address = 10.8.0.1/24 ListenPort = 51820 PrivateKey = # packet forwarding PreUp = sysctl -w net.ipv4.ip_forward=1 # port forwarding #Plex PreUp = iptables -t nat -A PREROUTING -i ens192 -p tcp --dport 32400 -j DNAT --to-destination 10.8.0.2:32400 PostDown = iptables -t nat -D PREROUTING -i ens192 -p tcp --dport 32400 -j DNAT --to-destination 10.8.0.2:32400 # packet masquerading PreUp = iptables -t nat -A POSTROUTING -o ens192 -j MASQUERADE PostDown = iptables -t nat -D POSTROUTING -o ens192 -j MASQUERADE [Peer] PublicKey = AllowedIPs = 10.8.0.2/32 Sollte so ähnlich aussehen. Edited September 21, 2024 by Mainfrezzer Hab IPv6 Zeugs entfernt, da nicht nötig - Port angepasst Quote
h3xx3r Posted September 21, 2024 Author Posted September 21, 2024 (edited) Ich benutze so eine Wireguard WebUI die generiert die Config. Habe die jetzt über das Webinterface so einigermaßen angepasst an deine Vorgabe und sieht jetzt so aus: # This file was generated using wireguard-ui (https://github.com/ngoduykhanh/wireguard-ui) # Please don't modify it manually, otherwise your change might get replaced. # Address updated at: 2024-09-21 21:31:34.490268771 +0000 UTC # Private Key updated at: 2024-09-14 00:25:04.326634967 +0000 UTC [Interface] Address = 10.8.0.1/24 ListenPort = 51820 PrivateKey = MTU = 1500 PostUp = sysctl -w net.ipv4.ip_forward=1;iptables -t nat -A PREROUTING -i ens192 -p tcp --dport 32400 -j DNAT --to-destination 10.8.0.2:32400;iptables -t nat -A POSTROUTING -o ens192 -j MASQUERADE PreDown = PostDown = iptables -t nat -D PREROUTING -i ens192 -p tcp --dport 32400 -j DNAT --to-destination 10.8.0.2:32400;iptables -t nat -D POSTROUTING -o ens192 -j MASQUERADE Table = # ID: crijj3det91s4c5gt8lg # Name: unraid # Email: # Telegram: # Created at: 2024-09-14 07:21:49.381322611 +0000 UTC # Update at: 2024-09-20 23:21:38.856452553 +0000 UTC [Peer] PublicKey = PresharedKey = AllowedIPs = 10.8.0.2/32 PersistentKeepalive = 15 Der Unterschied ist bei dir heist es PreUp und ich habe nur die Möglichkeit für PostUp ich weiß nicht ob das einen Unterschied macht? Der Bilderupload funktioniert grad nicht sonst würde ich von der Wireguard WebUi noch Bilder anhängen. In Plex habe ich jetzt was entdeckt: Nicht außerhalb deines Netzwerks verfügbar Dein Server ist bei Plex angemeldet, aber außerhalb deines Netzwerks nicht verfügbar. Mehr dazu Tipp: Es scheint, dass auf Geräten zwischen deinem Server und dem Internet „Jumbo-Frames“ aktiviert sind, was Probleme mit dem Fernzugriff verursachen kann. Deaktiviere „Jumbo-Frames“ auf mindestens einem Gerät und versuche es erneut. Das werde ich jetzt mal genauer unter die Lupe nehmen. Mit deinen Einstellungen läd sich die Seite zu Tode Domain:32400 es wird kurz grau wie der Seitenhintergrund von Plex und bricht irgendwann ab wie ein Timeout oder zu lange Antwortzeiten. Edited September 21, 2024 by h3xx3r Quote
Solution Mainfrezzer Posted September 21, 2024 Solution Posted September 21, 2024 (edited) Den MTU, vom Wireguard interface, beim 1&1-Server von 1500 auf 1420 runtersetzen und bei Unraid könnte man 1384 angeben. Edited September 21, 2024 by Mainfrezzer Präzisiert Quote
h3xx3r Posted September 21, 2024 Author Posted September 21, 2024 Soll ich dir mal was sagen?Jetzt gehts 😎 Habe grad schon mit 1450 bei beiden probiert und es ging nicht dachte schon daran liegt es nicht aber genau das wars! Da kann man sich ja dumm und dämlich suchen.... Ich danke dir vielmals!! 1 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.