Zum Hauptinhalt springen

Tailscale

Unraid bietet jetzt eine nahtlose Integration mit Tailscale, dank einer technologischen Partnerschaft, die ein nahtloses, sicheres Netzwerk direkt mit Ihrem Server verbindet. Tailscale ist kein traditionelles VPN - es ist ein modernes, Peer-to-Peer Overlay-Netzwerk, das auf WireGuard basiert. Damit können Sie Geräte, Server und individuelle Docker-Container in Ihr sicheres privates Netzwerk (Tailnet) einbinden, unabhängig von deren physischem Standort oder Netzwerkumgebung. Die Partnerschaft mit Unraid stellt sicher, dass das Tailscale Plugin vollständig gewartet und eng integriert ist, mit nativem Zertifikatsupport und erweiterten Funktionen in Unraid 7 und neuer.

  • Einfache Einrichtung: Kein Port-Forwarding oder Firewall-Kopfschmerzen.
  • Starke Sicherheit: Nutzt WireGuard-Verschlüsselung im Hintergrund.
  • Flexibles Teilen: Gewähren Sie Zugriff auf bestimmte Geräte oder Container, nicht nur auf Ihr gesamtes Netzwerk.
  • Erstklassiger Support: Offiziell gewartetes Plugin mit ständigen Verbesserungen.

Erste Schritte mit Tailscale

Um zu beginnen, melden Sie sich für ein kostenloses Tailscale-Konto an und installieren den Client auf mindestens einem Gerät (Windows, macOS, Linux, iOS, Android, und mehr). Kostenlose Konten unterstützen bis zu drei Benutzer und 100 Geräte.

Vor dem Hinzufügen von Unraid beachten Sie:

notiz

Maschinennamen in HTTPS-Zertifikaten sind öffentlich. Verwenden Sie Namen, die Sie gerne teilen möchten.

Hinzufügen von Tailscale zu Unraid

Die folgenden Schritte sind aktuell und korrekt für Unraid 7 und höher:

  1. Überprüfen Sie Ihre Tailscale-Kontoeinstellungen wie oben beschrieben.
  2. Suchen Sie in Unraid im Tab Community Apps nach dem offiziellen Tailscale-Plugin und installieren Sie es.
  3. Öffnen Sie Einstellungen → Tailscale und klicken Sie auf Reauthentifizieren. Melden Sie sich mit Ihrem Tailscale-Konto an.
  4. Klicken Sie auf Verbinden, um Ihren Unraid-Server zu Ihrem Tailnet hinzuzufügen.
  5. Besuchen Sie Settings → Management Access, um Ihre Tailscale-URLs für das WebGUI anzuzeigen.
  6. In Settings → Tailscale, find your server's Tailnet name and IP. Use these to access SMB/NFS shares, Docker containers, and more from any device on your Tailnet. +7. (Optional) Enable Include Tailscale peers in /etc/hosts (see Enhanced hostname resolution) to automatically add Tailscale devices to your server's hostname resolution, making it easier to access other devices on your Tailnet.

Subnet-Routing (optional)

Um auf Ihren Unraid-Server über seine Haupt-LAN-IP zuzugreifen (oder um Docker-Container mit ihren eigenen IPs zu erreichen):

  1. Go to Settings → Tailscale, click Reauthenticate, and sign in with your Tailscale account.
  2. In the Tailscale settings, locate the Advertise Routes section and add:
    • Your Unraid server's IP (e.g., 192.168.0.12/32), or
    • Your whole network's subnet (e.g., 192.168.0.0/24).
  3. Klicken Sie auf Anwenden, um die Änderungen zu speichern.
  4. Log in to your Tailscale admin console and navigate to the Machines page.
  5. Locate your Unraid server and approve the pending route for the advertised subnet.
  6. Sobald genehmigt, können Geräte in Ihrem Tailnet auf Ihren Unraid-Server und/oder LAN-Geräte über ihre üblichen IP-Adressen zugreifen.
notiz

For advanced details, see the Tailscale subnet routing documentation.

Enhanced hostname resolution

The Tailscale plugin includes an option to automatically add Tailscale peers to your server's /etc/hosts file. This feature simplifies device access by enabling hostname-based connections to other devices on your Tailnet.

Benefits include:

  • Accessing other Tailscale devices using friendly hostnames instead of IP addresses.
  • Automatic updates when devices join or leave your Tailnet.
  • Improved compatibility with applications that rely on hostname resolution.

To enable this feature:

  1. Go to Settings → Tailscale in the WebGUI.
  2. Enable the Include Tailscale peers in /etc/hosts option.
  3. Klicken Sie auf Anwenden, um die Änderungen zu speichern.

Once enabled, you can access other devices on your Tailnet using their Tailscale hostnames from your Unraid server, making it easier to configure services, access shared resources, and manage your network.


Hinzufügen von Tailscale zu Docker-Containern

Unraid erleichtert es, Docker-Container mit Ihrem Tailnet zu verbinden, indem jedem Container eine eindeutige Geräteidentität für sicheren, flexiblen Fernzugriff zugewiesen wird. Mit dieser Integration können Sie den Zugriff auf einzelne Container freigeben, ohne Ihren gesamten Server offenzulegen, und Funktionen wie Exit-Knoten, Serve und Funnel auf Containerbasis nutzen. Das Setup ist vollständig automatisiert, sodass Benutzer aller Qualifikationsstufen von erhöhter Sicherheit und optimiertem Networking profitieren können.

Wie die Tailscale-Docker-Integration funktioniert - Klicken, um zu erweitern/zusammenklappen

Wenn Sie Use Tailscale für einen Docker-Container aktivieren und Änderungen anwenden, automatisiert Unraid folgende Schritte für nahtlose Integration:

  1. Entrypoint-Extraktion: Unraid identifiziert den ursprünglichen Entrypoint und CMD des Containers und bewahrt dessen beabsichtigtes Startverhalten.
  2. Integrationsskript-Injektion: Das tailscale_container_hook-Skript wird innerhalb des Containers montiert und der Entrypoint wird aktualisiert, um dieses Skript zuerst auszuführen.
  3. Umgebungseinrichtung: Der ursprüngliche Entrypoint, CMD und alle erforderlichen Tailscale-Variablen werden an den Docker-Run-Befehl übergeben.
  4. Tailscale-Initialisierung: Beim Start installiert das Hook-Skript alle Abhängigkeiten, lädt herunter und startet den Tailscale-Client innerhalb des Containers.
  5. Normaler Start: Das Skript startet dann den ursprünglichen Entrypoint und CMD des Containers, sodass Ihre Anwendung wie gewohnt ausgeführt wird - mit Tailscale-Netzwerk, das automatisch hinzugefügt wird.

Einmal aktiviert, erscheint der Container als eigenes Gerät in Ihrem Tailnet, bereit für sicheren Zugriff und erweiterte Tailscale-Funktionen, ohne manuelle Netzwerkkonfiguration oder Port-Weiterleitung.

Container kompatibilität

Die Tailscale-Integration funktioniert nicht mit allen Containern. Einige Container funktionieren möglicherweise überhaupt nicht, wenn Tailscale aktiviert ist, insbesondere solche mit:

  • Installieren Sie zuerst Tailscale auf jedem Computer, der auf Ihre Docker-Container zugreift.
  • Während das Unraid-Tailscale-Plugin für die Docker-Integration nicht zwingend erforderlich ist, wird dringend empfohlen, es zu installieren und sich auf Ihrem Unraid-Server anzumelden, um die beste Erfahrung zu erzielen.
  • Anwendungen, die mit den Netzwerkänderungen von Tailscale in Konflikt stehen

Testen Sie die Tailscale-Integration zuerst mit nicht kritischen Containern und seien Sie bereit, sie zu deaktivieren, wenn der Container nicht mehr ordnungsgemäß funktioniert.

:::note[Prerequisites]

  • Installieren Sie zuerst Tailscale auf jedem Computer, der auf Ihre Docker-Container zugreift.
  • Während das Unraid-Tailscale-Plugin für die Docker-Integration nicht zwingend erforderlich ist, wird dringend empfohlen, es zu installieren und sich auf Ihrem Unraid-Server anzumelden, um die beste Erfahrung zu erzielen.

:::

Um Tailscale zu einem Docker-Container hinzuzufügen:

  1. Serve: Ermöglicht den sicheren Zugriff auf die Website oder den Webservice eines Containers von Ihrem Tailnet aus mit einer benutzerfreundlichen HTTPS-URL. Keine Portweiterleitung erforderlich, und nur Tailnet-Geräte können eine Verbindung herstellen.
  2. Gehen Sie in Unraid zum Tab Docker und bearbeiten Sie den gewünschten Container.
  3. Aktivieren Sie den Use Tailscale-Schalter.
  4. Geben Sie einen Tailscale-Hostname für den Container ein (muss eindeutig in Ihrem Tailnet sein).
warnung

Ein HTTPS-Zertifikat wird für diesen Hostnamen generiert und in einem öffentlichen Zertifikatsregister veröffentlicht. Wählen Sie einen Namen, den Sie gerne öffentlich teilen. Einzelheiten finden Sie in den Tailscale HTTPS-Dokumenten.

  1. Entscheiden Sie, ob dieser Container ein Exit-Node sein soll (nützlich für VPN-Container).
  2. Choose whether the container should use an exit node for its outgoing traffic. If the Tailscale plugin is installed, you’ll see a list of available exit nodes; otherwise, enter the IP manually.
  3. Wenn ein Exit-Node verwendet wird, geben Sie an, ob der Container auch auf Ihr LAN zugreifen soll.
  4. Das Tailscale Userspace Networking-Feld wird in der Regel automatisch gesetzt. Lassen Sie es deaktiviert, es sei denn, Sie haben einen speziellen Bedarf.
  5. Entscheiden Sie, ob Sie Tailscale SSH (gesicherter Shell-Zugriff, authentifiziert durch Tailscale) aktivieren möchten.
Serve vs. Trichter
  • Bearbeiten Sie den Container und identifizieren Sie einen gemappten Pfad, um Tailscale-Zustandsdaten zu speichern (z. B. /container-path/).
  • Aktivieren Sie Erweiterte Einstellungen anzeigen und setzen Sie das Tailscale Statusverzeichnis auf /container-path/.tailscale_state.
  1. Aktivieren Serve für die Rückwärts-Proxy Bereitstellung des Webinterface des Containers zu Ihrem Tailnet oder Funnel um es im öffentlichen Internet zugänglich zu machen. Unraid erkennt automatisch den zu verwendenden Port basierend auf den WebUI-Einstellungen des Containers. Bei Bedarf sind auch erweiterte Optionen verfügbar.
warnung

Tailscale wird häufig aktualisiert, um neue Funktionen und Sicherheitsverbesserungen zu liefern. Um Ihr Unraid-System sicher und kompatibel zu halten, stellen Sie sicher, dass sowohl das Unraid Tailscale-Plugin als auch alle Docker-Container, die Tailscale verwenden, auf dem neuesten Stand sind.

  1. Apply your changes and check the Enhanced Log or Log Viewer for Tailscale messages. Click the To authenticate, visit... link to approve the container on your Tailnet.

:::caution[Troubleshooting]

Persistenter Zustand Fehler - Wenn Sie "ERROR: Konnte kein persistentes Docker-Verzeichnis für .tailscale_state erkennen" sehen:

  • Bearbeiten Sie den Container und identifizieren Sie einen gemappten Pfad, um Tailscale-Zustandsdaten zu speichern (z. B. /container-path/).
  • Aktivieren Sie Erweiterte Einstellungen anzeigen und setzen Sie das Tailscale Statusverzeichnis auf /container-path/.tailscale_state.
  • Starten Sie den Container neu.
  • Docker-XML-Autoren können dies vereinfachen, indem sie <TailscaleStateDir>/container-path/.tailscale_state</TailscaleStateDir> zum XML der Container hinzufügen.

:::


Aktualisierung von Tailscale

Tailscale wird häufig aktualisiert, um neue Funktionen und Sicherheitsverbesserungen zu liefern. Um Ihr Unraid-System sicher und kompatibel zu halten, stellen Sie sicher, dass sowohl das Unraid Tailscale-Plugin als auch alle Docker-Container, die Tailscale verwenden, auf dem neuesten Stand sind.

Updating the Tailscale Plugin

When a new version is available, update the plugin through the Unraid Apps tab just like any other plugin. The plugin is actively maintained and regularly updated with the latest Tailscale features. You can always review the latest Tailscale changes in the Tailscale changelog and the plugin release notes.

Updating Tailscale in Docker Containers

To update Tailscale in Docker containers:

  1. Auf der Docker-Seite fahren Sie mit der Maus über das Tailscale Icon eines Containers. Wenn ein Update verfügbar ist, wird eine Benachrichtigung angezeigt.
  2. Aktualisieren Sie den Container, indem Sie entweder:
    • Switching to Advanced View (upper-right corner), then clicking Force update.
    • Den Container bearbeiten, eine kleine Änderung vornehmen (wie z. B. das Umschalten einer Einstellung), und auf Übernehmen klicken.

Userspace-Netzwerk

* WireGuard“ und das „WireGuard“-Logo sind eingetragene Warenzeichen von Jason A. Donenfeld.

  • Aktiviert: Der Container arbeitet in einer eingeschränkten Umgebung. Er kann keine Verbindungen zu anderen Tailnet-Geräten herstellen oder Tailscale DNS verwenden, bleibt aber über sowohl die Tailscale WebUI als auch die ursprüngliche WebUI-URL erreichbar.

  • Deaktiviert: Der Container hat vollständigen Tailnet Zugang und kann Tailscale DNS verwenden. Er kann mit anderen Tailnet-Geräten kommunizieren, aber die ursprüngliche WebUI-URL ist möglicherweise nicht verfügbar.

Feature anforderungen
  • Container, die als Exit-Nodes konfiguriert sind, haben immer das Userspace-Netzwerk aktiviert.
  • Container, die einen Exit-Node verwenden, haben immer das Userspace-Netzwerk deaktiviert.

Kompatibilität mit Netzwerktypen

Das Verhalten der Tailscale-Integration und das Userspace-Networking hängt vom Netzwerktyp des Containers ab. Verwenden Sie die folgende Tabelle, um Kompatibilitäts- und Zugangsmöglichkeiten zu verstehen:

NetzwerktypStandardmäßig Userspace-NetzwerkKann geändert werden?WebUI-Zugriff (Tailscale)WebUI-Zugriff (Original)Anmerkungen
hostDeaktiviertNeinNeinJaTailscale-Integration im Hostmodus nicht verfügbar
brückeDeaktiviertJaJaAktiviert: Ja Deaktiviert: NeinAktiviert beide URLs, wenn aktiviert; nur Tailscale WebUI, wenn deaktiviert
eth0/br0/bond0DeaktiviertJaJaJaBeide URLs sind unabhängig von der Einstellung zugänglich
container/wg0Deaktiviert (nicht getestet)JaUnbekanntUnbekanntMit Vorsicht verwenden; nicht vollständig getestet
Keep im Auge behalten
  • Tailscale-WebUI-URLs sind nur von Geräten aus zugänglich, auf denen Tailscale installiert und Ihrem Tailnet beigetreten ist, oder mit explizit aktiviertem Teilen.
  • Für die meisten Benutzer bieten die Standardeinstellungen sicheren und zuverlässigen Zugriff. Für spezielle Networking-Bedürfnisse stehen erweiterte Optionen zur Verfügung.

* "WireGuard" und das "WireGuard" Logo sind eingetragene Marken von Jason A. Donenfeld.