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:
- Benennen Sie Ihr Tailnet um für eine einfachere Identifizierung.
- Aktivieren Sie MagicDNS für vereinfachtes Gerätemanagement.
- Aktivieren Sie HTTPS-Zertifikate für sicheren, vertrauenswürdigen Zugriff.
Maschinennamen in HTTPS-Zertifikaten sind öffentlich. Verwenden Sie Namen, die Sie gerne teilen.
Hinzufügen von Tailscale zu Unraid
Die folgenden Schritte sind aktuell und korrekt für Unraid 7 und höher:
- Überprüfen Sie Ihre Tailscale-Kontoeinstellungen wie oben beschrieben.
- Suchen Sie in Unraid im Tab Community Apps nach dem offiziellen Tailscale-Plugin und installieren Sie es.
- Öffnen Sie Einstellungen → Tailscale und klicken Sie auf Reauthentifizieren. Melden Sie sich mit Ihrem Tailscale Konto an.
- Klicken Sie auf Verbinden, um Ihren Unraid-Server zu Ihrem Tailnet hinzuzufügen.
- Besuchen Sie Settings → Management Access, um Ihre Tailscale-URLs für das WebGUI anzuzeigen.
- In Einstellungen → Tailscale finden Sie den Namen und die IP Ihres Servers Tailnet. Verwenden Sie diese, um auf SMB/NFS-Freigaben, Docker-Container und mehr von jedem Gerät in Ihrem Tailnet aus zuzugreifen.
Subnet-Routing (optional)
Um auf Ihren Unraid-Server über seine Haupt-LAN-IP zuzugreifen (oder um Docker-Container mit ihren eigenen IPs zu erreichen):
- Gehen Sie zu Settings → Tailscale, klicken Sie auf Anzeigen und melden Sie sich an.
- Klicken Sie auf Subnet-Router und fügen Sie hinzu:
- Die IP Ihres Unraid-Servers (z. B.
192.168.0.12/32
), oder - Das Subnetz Ihres gesamten Netzwerks (z. B.
192.168.0.0/24
).
- Die IP Ihres Unraid-Servers (z. B.
- Klicken Sie auf Routen bewerben.
- Genehmigen Sie die ausstehende Route in Ihrer Tailscale-Admin-Konsole.
- Sobald genehmigt, können Geräte in Ihrem Tailnet auf Ihren Unraid-Server und/oder LAN-Geräte über ihre üblichen IP-Adressen zugreifen.
- Für erweiterte Details siehe die Tailscale subnet routing Dokumentation.
Hinzufügen von Tailscale zu Docker-Containern
Unraid erleichtert das Verbinden von Docker-Containern mit Ihrem Tailnet, 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 teilen - ohne Ihren gesamten Server zu exponieren - und von erweiterten Funktionen wie Exit-Nodes, Serve und Funnel auf Container-Basis profitieren. Die Einrichtung ist vollständig automatisiert, sodass Benutzer aller Erfahrungsstufen von verbesserter Sicherheit und optimierter Vernetzung profitieren können.
Wie die Tailscale-Docker-Integration funktioniert - Klicken zum Erweitern/Reduzieren
Wenn Sie Tailscale verwenden für einen Docker-Container aktivieren und Änderungen anwenden, automatisiert Unraid die folgenden Schritte für eine nahtlose Integration:
- Entrypoint-Extraktion: Unraid identifiziert den ursprünglichen Entrypoint und CMD des Containers und bewahrt dessen beabsichtigtes Startverhalten.
- Integrationsskript-Injektion: Das
tailscale_container_hook
-Skript wird innerhalb des Containers montiert und der Entrypoint wird aktualisiert, um dieses Skript zuerst auszuführen. - Umgebungseinrichtung: Der ursprüngliche Entrypoint, CMD und alle erforderlichen Tailscale-Variablen werden an den Docker-Run-Befehl übergeben.
- Tailscale-Initialisierung: Beim Start installiert das Hook-Skript alle Abhängigkeiten, lädt herunter und startet den Tailscale-Client innerhalb des Containers.
- 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.
Sobald aktiviert, erscheint der Container als eigenes Gerät in Ihrem Tailnet, bereit für sicheren Zugriff und erweiterte Tailscale-Funktionen, ohne dass manuelle Netzwerkkonfigurationen oder Portweiterleitungen nötig sind.
Die Tailscale-Integration funktioniert nicht mit allen Containern. Einige Container funktionieren möglicherweise überhaupt nicht, wenn Tailscale aktiviert ist, insbesondere diejenigen mit:
- Benutzerdefinierten Netzwerk-Anforderungen
- Spezifischen Netzisolierungsbedürfnissen
- 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.
- 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:
- Überprüfen Sie Ihre Tailscale-Kontoeinstellungen wie im Abschnitt Erste Schritte beschrieben.
- Gehen Sie in Unraid zum Tab Docker und bearbeiten Sie den gewünschten Container.
- Aktivieren Sie den Use Tailscale-Schalter.
- Geben Sie einen Tailscale-Hostname für den Container ein (muss eindeutig in Ihrem Tailnet sein).
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.
- Entscheiden Sie, ob dieser Container ein Exit-Node sein soll (nützlich für VPN-Container).
- Wählen Sie, ob der Container einen Exit-Node für seinen ausgehenden Datenverkehr verwenden soll. Wenn das Tailnet-Plugin installiert ist, sehen Sie eine Liste verfügbarer Exit-Nodes; andernfalls geben Sie die IP manuell ein.
- Wenn ein Exit-Node verwendet wird, geben Sie an, ob der Container auch auf Ihr LAN zugreifen soll.
- Das Tailscale Userspace Networking-Feld wird in der Regel automatisch gesetzt. Lassen Sie es deaktiviert, es sei denn, Sie haben einen speziellen Bedarf.
- Entscheiden Sie, ob Sie Tailscale SSH (gesicherter Shell-Zugriff, authentifiziert durch Tailscale) aktivieren möchten.
- 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.
- Funnel: Veröffentlicht die Website des Containers über eine eindeutige HTTPS-URL im öffentlichen Internet. Jeder mit dem Link kann darauf zugreifen, auch wenn er nicht in Ihrem Tailnet ist. Verwenden Sie dies mit Vorsicht, da es Ihren Dienst dem breiteren Internet aussetzt.
- 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.
Wenn Sie Serve oder Funnel verwenden, gibt es keine zusätzliche Authentifizierungsebene - Ihr Container ist dafür verantwortlich, den Benutzerzugang zu verwalten. Sichern Sie Ihre Webanwendungen entsprechend.
- Anwenden Ihrer Änderungen und überprüfen Sie das Containerprotokoll auf Tailscale-Nachrichten. Klicken Sie auf den Link "Um zu authentifizieren, besuchen Sie", um den Container auf Ihrem Tailnet zu genehmigen.
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.
Um Tailscale zu aktualisieren:
-
Aktualisieren Sie das Unraid Tailscale Plugin: Wenn eine neue Version verfügbar ist, aktualisieren Sie das Plugin über die Unraid Apps-Registerkarte wie jedes andere Plugin. Die neuesten Änderungen können Sie immer im Tailscale Changelog nachlesen.
-
Aktualisieren Sie Tailscale in Docker-Containern:
- 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.
- Aktualisieren Sie den Container, indem Sie entweder:
- Zum Erweiterten Ansicht-Modus wechseln (obere rechte Ecke) und dann auf Update erzwingen klicken.
- Den Container bearbeiten, eine kleine Änderung vornehmen (wie z. B. das Umschalten einer Einstellung), und auf Übernehmen klicken.
Userspace-Netzwerk
Userspace Networking steuert, wie ein Container mit Ihrem Tailnet und dem Rest Ihres Netzwerks verbunden wird. In den meisten Fällen können Sie die Details ignorieren, wenn Sie auf Container über ihre Tailscale WebUI-URLs zugreifen und Tailscale auf allen Client-Systemen installiert haben.
-
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.
- 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:
Netzwerktyp | Standardmäßig Userspace-Netzwerk | Kann geändert werden? | WebUI-Zugriff (Tailscale) | WebUI Zugriff (Original) | Anmerkungen |
---|---|---|---|---|---|
host | Deaktiviert | Nein | Nein | Ja | Tailscale Integration nicht im Host-Modus verfügbar |
bridge | Deaktiviert | Ja | Ja | Aktiviert: Ja Deaktiviert: Nein | Aktiviert beide URLs, wenn aktiviert; nur Tailscale WebUI, wenn deaktiviert |
eth0 /br0 /bond0 | Deaktiviert | Ja | Ja | Ja | Beide URLs unabhängig von der Einstellung zugänglich |
container /wg0 | Deaktiviert (nicht getestet) | Ja | Unbekannt | Unbekannt | Mit Vorsicht verwenden; nicht vollständig getestet |
- 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. Erweiterte Optionen sind für spezielle Netzwerkanforderungen verfügbar.
* „WireGuard“ und das „WireGuard“-Logo sind eingetragene Warenzeichen von Jason A. Donenfeld.