Tailscale
Unraid ahora cuenta con una integración profunda con Tailscale, gracias a una asociación tecnológica que conecta directamente a su servidor con una red segura y sin interrupciones. Tailscale no es una VPN tradicional; es una red superpuesta moderna y punto a punto construida sobre WireGuard. Permite conectar dispositivos, servidores y contenedores Docker individuales a su red privada segura (Tailnet), independientemente de su ubicación física o entorno de red. La asociación de Unraid garantiza que el complemento Tailscale esté completamente mantenido y estrechamente integrado, ofreciendo soporte nativo de certificados y funciones avanzadas en Unraid 7 y versiones más recientes.
- Configuración simple: Sin redireccionamiento de puertos ni dolores de cabeza de firewall.
- Seguridad fuerte: Usa cifrado WireGuard bajo el capó.
- Compartición flexible: Otorga acceso a dispositivos o contenedores específicos, no solo a toda la red.
- Soporte de primera clase: Plugin mantenido oficialmente, con mejoras continuas.
Comenzando con Tailscale
Para comenzar, registre una cuenta gratuita de Tailscale e instale el cliente en al menos un dispositivo (Windows, macOS, Linux, iOS, Android, y más). Las cuentas gratuitas admiten hasta tres usuarios y 100 dispositivos.
Antes de agregar Unraid, considera:
- Cambiar el nombre de tu Tailnet para facilitar su identificación.
- Habilitar MagicDNS para simplificar el nombramiento de dispositivos.
- Habilitar certificados HTTPS para un acceso seguro y confiable.
Los nombres de las máquinas en los certificados HTTPS son públicos. Use nombres que se sienta cómodo compartiendo.
Añadiendo Tailscale a Unraid
Los siguientes pasos son actuales y precisos para Unraid 7 y superiores:
- Revisa la configuración de tu cuenta Tailscale como se describe arriba.
- En Unraid, busca el tab Community Apps para el plugin oficial Tailscale e instálalo.
- Abra Configuración → Tailscale y haga clic en Reautenticar. Inicie sesión con su cuenta de Tailscale.
- Haz clic en Conectar para añadir tu servidor Unraid a tu Tailnet.
- Visita Configuración → Acceso de Gestión para ver tus URLs de Tailscale para el WebGUI.
- En Configuración → Tailscale, encuentre el nombre y la IP de Tailnet de su servidor. Utilícelos para acceder a compartir SMB/NFS, contenedores Docker, y más desde cualquier dispositivo en su Tailnet.
Enrutamiento de subred (opcional)
Para acceder a tu servidor Unraid por su IP principal de LAN (o para alcanzar contenedores Docker con sus propias IPs):
- Ve a Configuración → Tailscale, haz clic en Ver y Inicia Sesión.
- Haz clic en Router de subred y añade:
- La IP de tu servidor Unraid (por ejemplo,
192.168.0.12/32
), o - El subred de toda tu red (por ejemplo,
192.168.0.0/24
).
- La IP de tu servidor Unraid (por ejemplo,
- Haz clic en Publicitar rutas.
- Aprueba la ruta pendiente en tu consola de administración de Tailscale.
- Una vez aprobada, los dispositivos en tu Tailnet pueden acceder a tu servidor Unraid y/o dispositivos LAN por sus direcciones IP habituales.
- Para detalles avanzados, consulte la documentación de subnet routing de Tailscale.
Añadiendo Tailscale a Contenedores Docker
Unraid facilita la conexión de contenedores Docker a su Tailnet, brindando a cada contenedor una identidad de dispositivo única para un acceso remoto seguro y flexible. Con esta integración, puede compartir acceso a contenedores individuales, sin exponer todo su servidor, y aprovechar funciones avanzadas como nodos de salida, Servir y Funnel en base por contenedor. La configuración se automatiza completamente, por lo que los usuarios de todos los niveles pueden beneficiarse de una seguridad mejorada y de una red simplificada.
Cómo funciona la integración de Tailscale-Docker - Haga clic para expandir/colapsar
Cuando habilite Usar Tailscale para un contenedor Docker y aplique los cambios, Unraid automatiza los siguientes pasos para una integración sin problemas:
- Extracción del Punto de Entrada: Unraid identifica el Punto de Entrada original del contenedor y el CMD, preservando su comportamiento inicial de inicio.
- Inyección del Script de Integración: El script
tailscale_container_hook
se monta dentro del contenedor, y el Punto de Entrada se actualiza para ejecutar este script primero. - Configuración del Entorno: El Punto de Entrada original, CMD, y todas las variables requeridas de Tailscale se pasan al comando de ejecución de Docker.
- Inicialización de Tailscale: Al inicio, el script hook instala cualquier dependencia, descarga e inicia el cliente Tailscale dentro del contenedor.
- Inicio Normal: Luego el script arranca el Punto de Entrada original del contenedor y el CMD, para que tu aplicación funcione como de costumbre - con la red Tailscale integrada automáticamente.
Una vez habilitado, el contenedor aparece como su propio dispositivo en su Tailnet, listo para un acceso seguro y funciones avanzadas de Tailscale, sin necesidad de configuración manual de la red o redirección de puertos.
La integración de Tailscale no funciona con todos los contenedores. Algunos contenedores pueden no funcionar en absoluto si Tailscale está habilitado, particularmente aquellos con:
- Requisitos de red personalizados
- Necesidades específicas de aislamiento de red
- Aplicaciones que entran en conflicto con las modificaciones de red de Tailscale.
Prueba la integración de Tailscale en contenedores no críticos primero, y prepárate para deshabilitarla si el contenedor deja de funcionar correctamente.
- Primero, instala Tailscale en cualquier computadora que vaya a acceder a tus contenedores Docker.
- Aunque el plugin de Unraid Tailscale no es estrictamente necesario para la integración de Docker, se recomienda encarecidamente instalarlo e iniciar sesión en tu servidor Unraid para una mejor experiencia.
Para añadir Tailscale a un contenedor Docker:
- Revisa la configuración de tu cuenta Tailscale como se describe en la sección de Comenzando.
- En Unraid, ve a la pestaña Docker y edita el contenedor deseado.
- Habilita el interruptor Usar Tailscale.
- Ingresa un nombre de host Tailscale para el contenedor (debe ser único en tu Tailnet).
Se generará un certificado HTTPS para este nombre de host y se publicará en un registro público de certificados. Elija un nombre que se sienta cómodo compartiendo públicamente. Consulte los documentos HTTPS de Tailscale para obtener más detalles.
- Decide si este contenedor debe ser un nodo de salida (útil para contenedores VPN).
- Elija si el contenedor debe usar un nodo de salida para su tráfico saliente. Si el complemento Tailnet está instalado, verá una lista de nodos de salida disponibles; de lo contrario, ingrese la IP manualmente.
- Si usas un nodo de salida, especifica si el contenedor también debe acceder a tu LAN.
- El campo de Networking en Usuario de Tailscale generalmente se establece automáticamente. Déjelo deshabilitado a menos que tenga una necesidad específica.
- Decide si habilitar Tailscale SSH (acceso seguro por shell autenticado a través de Tailscale).
- Servir: le permite acceder de forma segura al sitio web o servicio web de un contenedor desde su Tailnet usando una URL HTTPS amigable. No se necesita redirección de puertos, y solo los dispositivos Tailnet pueden conectarse.
- Funnel: publica el sitio web del contenedor en internet público a través de una URL HTTPS única. Cualquiera con el enlace puede acceder, incluso si no están en su Tailnet. Use esto con precaución, ya que expone su servicio a internet general.
- Habilite Servir para realizar el proxy inverso de la interfaz web del contenedor a su Tailnet o Funnel para hacerlo accesible desde internet público. Unraid detectará automáticamente el puerto a utilizar basado en la configuración de WebUI del contenedor. Si es necesario, hay opciones avanzadas disponibles.
Al usar Servir o Funnel, no hay una capa de autenticación adicional: su contenedor es responsable de gestionar el acceso de usuario. Asegure sus aplicaciones web en consecuencia.
- Aplique sus cambios y verifique el Registro de contenedores para mensajes de Tailscale. Haga clic en el enlace "Para autenticar, visite" para aprobar el contenedor en su Tailnet.
Error de estado persistente - Si ve "ERROR: No se pudo detectar el directorio Docker persistente para .tailscale_state":
- Edita el contenedor e identifica una ruta mapeada para almacenar datos del estado de Tailscale (por ejemplo,
/ruta-del-contenedor/
). - Habilita Tailscale Mostrar configuración avanzada y establece el Directorio de Estado a
/ruta-del-contenedor/.tailscale_state
. - Reinicia el contenedor.
- Los autores de Docker XML pueden simplificar esto añadiendo
<TailscaleStateDir>/ruta-del-contenedor/.tailscale_state</TailscaleStateDir>
al archivo XML del contenedor.
Actualizando Tailscale
Tailscale se actualiza con frecuencia para ofrecer nuevas funciones y mejoras de seguridad. Para mantener su sistema Unraid seguro y compatible, asegúrese de que tanto el complemento Tailscale de Unraid como cualquier contenedor Docker que use Tailscale esté actualizado.
Para actualizar Tailscale:
-
Actualice el complemento Tailscale de Unraid: Cuando esté disponible una nueva versión, actualice el complemento a través de la pestaña de Aplicaciones de Unraid como cualquier otro complemento. Siempre puede revisar los últimos cambios en el registro de cambios de Tailscale.
-
Actualiza Tailscale en los contenedores Docker:
- En la página de Docker, pase el cursor sobre el icono de Tailscale para cualquier contenedor. Si hay una actualización disponible, verá una notificación.
- Actualiza el contenedor ya sea:
- Cambiando a Vista Avanzada (esquina superior derecha), luego haciendo clic en Forzar actualización.
- Editando el contenedor, haciendo un cambio menor (como alternar una configuración) y haciendo clic en Aplicar.
Red de usuarios
Userspace networking controla cómo un contenedor se conecta a su Tailnet y al resto de su red. En la mayoría de los casos, puede ignorar los detalles si accede a los contenedores usando sus URLs de WebUI de Tailscale y tiene Tailscale instalado en todos los sistemas clientes.
-
Habilitado: El contenedor opera en un entorno restringido. No puede iniciar conexiones con otros dispositivos Tailnet o usar el DNS de Tailscale pero sigue siendo accesible a través del WebUI de Tailscale y la URL original de WebUI.
-
Deshabilitado: El contenedor tiene acceso completo a Tailnet y puede usar DNS de Tailscale. Puede comunicarse con otros dispositivos Tailnet, pero la URL original de WebUI podría no estar disponible.
- Contenedores configurados como Nodos de Salida siempre tienen la red de usuarios habilitada.
- Contenedores que Usan un Nodo de Salida siempre tienen la red de usuarios deshabilitada.
Compatibilidad del tipo de red
El comportamiento de la integración de Tailscale y la red de espacio de usuario depende del tipo de red del contenedor. Utilice la tabla a continuación para entender las opciones de compatibilidad y acceso:
Tipo de red | Red de usuarios por defecto | ¿Se puede cambiar? | Acceso a la interfaz web (Tailscale) | Acceso WebUI (Original) | Notas |
---|---|---|---|---|---|
host | Deshabilitado | No | No | Sí | La integración con Tailscale no está disponible en modo host |
puente | Deshabilitado | Sí | Sí | Habilitado: Sí Deshabilitado: No | Habilita ambas URLs si está habilitado; solo interfaz web Tailscale si está deshabilitado |
eth0 /br0 /bond0 | Deshabilitado | Sí | Sí | Sí | Ambas URLs accesibles independientemente de la configuración |
contenedor /wg0 | Deshabilitado (no probado) | Sí | Desconocido | Desconocido | Úselo con cautela; no completamente probado |
- Las URLs WebUI de Tailscale solo son accesibles desde dispositivos con Tailscale instalado y unido a tu Tailnet, o con compartición explícita habilitada.
- Para la mayoría de los usuarios, las configuraciones predeterminadas proporcionan acceso seguro y confiable. Las opciones avanzadas están disponibles para necesidades especiales de red.
* "WireGuard" y el logotipo de "WireGuard" son marcas registradas de Jason A. Donenfeld.