Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Moin Zusammen,

Ich wollte auf einem Linux Server auf dem ein Docker läuft ein VPN Netzt im Docker erstellen, über diesen VPN Zugang sind dann die Docker Container im VPN Netz des Docker erreichbar.

Vielleicht kann man das ja gar nicht so umsetzen wie ich mir das vorstelle aber hier mal zur Umgebung. Ich habe einen Proxmox Server, auf diesem läuft ein Ubuntu Server, auf diesem Ubuntu Server läuft ein Wireguard Docker und ein VPN Netzwerk. Ich möchte ein Site to End VPN aufbauen in dem man mittels Zertifikats des Wireguard Dockers eine IP aus dem Docker VPN Netz erhält und dann die Container darin erreichen kann. Ich habe es leider nicht geschafft das ganze so umzusetzen das der Client eine Verbindung mit den Docker container erhält. Habe ich hier grundsetztlich einen denkfehler oder liegt es einfach an meiner Inkompetenz :).

Freue mich über Anregungen und Feedback

  • 2 Wochen später...
  • 3 Wochen später...

 

Hey @Antonk4!

Du hast grundsätzlich keinen Denkfehler, aber es gibt ein paar technische Hürden, die man beachten muss, wenn man ein VPN-Netzwerk innerhalb von Docker aufbauen und Container darüber erreichbar machen will. Ich möchte dir kurz erklären worauf es ankommt und wie du es umsetzen kannst.

Also dein Ziel ist:

Der Zugriff auf Docker-Container über WireGuard-VPN.
Clients sollen sich mit diesem VPN verbinden.
Die Clients sollen Zugriff auf andere Docker-Container im selben Host oder Docker-Netzwerk erhalten.

Am häufigsten treten Probleme beim "vernetzen" der VMs auf deshalb sind Docker-Container standardmäßig in einem isolierten Netzwerk. Wenn dein WireGuard-Container in einem eigenen Netzwerk läuft, kann er nicht direkt auf andere Container zugreifen – und umgekehrt.

Lösung dazu:
Verwende den host-Netzwerkmodus für den WireGuard-Container oder bringe alle relevanten Container in ein gemeinsames benutzerdefiniertes Docker-Netzwerk.

docker network create \

  --driver=bridge \

  --subnet=10.10.0.0/24 \

  custom-vpn-net


Dann startest du alle Container mit --network custom-vpn-net.

 

Außerdem musst du das Routing und IP-Forwarding beachten d.h. WireGuard-Container muss IP-Forwarding aktivieren und Routen korrekt setzen, damit Clients über das VPN andere Container erreichen können.

Lösung dazu:

Stelle sicher, dass net.ipv4.ip_forward=1 im Container oder Host gesetzt ist.
In der WireGuard-Konfiguration (wg0.conf) musst du PostUp und PostDown Regeln setzen, z. B.:

PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

 

Zu guter letzt braucht der Client die richtige Client-Konfiguration den er Client muss wissen, welche IP-Routen über das VPN laufen sollen. Wenn deine Container z. B. im Netz 10.10.0.0/24 sind, dann:

AllowedIPs = 10.10.0.0/24

 

Ich hoffe ich konnte dir helfen! 😊

Viel Erfolg beim Einrichten deines VPN-Setups

LG Audrey

 

 

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.