Tailscale vs Headscale: Guía completa de comparación 2026 para VPN autoalojado

Table of Contents
Introducción
Tailscale y Headscale son ambos servidores de coordinación para crear redes VPN mesh seguras basadas en WireGuard . Tailscale es un servicio comercial alojado en la nube con un generoso nivel gratuito, mientras que Headscale es una alternativa de código abierto autoalojada que implementa el protocolo de control de Tailscale. Comprender las diferencias entre estas soluciones es crucial para elegir el enfoque adecuado para las necesidades de red de su organización.
En 2026, las VPN mesh se han convertido en el estándar para el acceso remoto seguro y las redes de confianza cero, con más de 15 millones de implementaciones activas a nivel mundial según los analistas del sector. Esta guía completa compara Tailscale y Headscale en funciones, rendimiento, costo, seguridad y complejidad operativa para ayudarle a tomar una decisión informada.
Comprender las VPN mesh y WireGuard
Antes de entrar en la comparación, es importante comprender la tecnología subyacente:
¿Qué es WireGuard?
WireGuard es un protocolo VPN moderno y de alto rendimiento que ofrece:
- Rendimiento excepcional: Hasta 10 veces más rápido que OpenVPN
- Superficie de ataque mínima: Solo ~4.000 líneas de código (frente a 100.000+ de OpenVPN)
- Criptografía moderna: Curve25519, ChaCha20, Poly1305
- Integrado en el kernel de Linux: Desde Linux 5.6 (2020)
¿Qué es una VPN mesh?
Una VPN mesh crea conexiones entre pares entre dispositivos en lugar de enrutar todo el tráfico a través de un servidor central:
- Conexiones directas: Los dispositivos se conectan directamente entre sí cuando es posible
- Traversal NAT: Atraviesa automáticamente firewalls y NAT
- Latencia reducida: Sin saltos innecesarios a través de servidores centrales
- Mejor rendimiento: Utiliza el ancho de banda completo entre pares
El papel de los servidores de coordinación
WireGuard en sí mismo es solo un protocolo. Para crear una VPN mesh, necesita un servidor de coordinación (o plano de control) que:
- Gestione la autenticación y autorización de dispositivos
- Distribuya claves de cifrado
- Facilite el traversal NAT y el descubrimiento de pares
- Gestione las políticas de control de acceso
- Proporcione resolución DNS dentro de la red
Tailscale y Headscale son ambos servidores de coordinación que gestionan estas tareas.
Tailscale vs Headscale: Visión general
| Aspecto | Tailscale | Headscale |
|---|---|---|
| Tipo | SaaS comercial | Código abierto, autoalojado |
| Licencia | Propietario (nivel gratuito disponible) | Licencia BSD de 3 cláusulas |
| Alojamiento | Alojado en la nube (gestionado por Tailscale) | Autoalojado (usted gestiona) |
| Primera versión | 2019 | 2020 |
| Mantenedor principal | Tailscale Inc. | Juan Font y comunidad |
| Estrellas GitHub | N/A (código cerrado) | 38.900+ (a partir de 2026) |
| Complejidad de configuración | Muy baja (5 minutos) | Moderada (30-60 minutos) |
| Costo mensual (100 usuarios) | $0 (gratuito) a $18/usuario (empresa) | Solo costos de alojamiento del servidor ($5-50/mes) |
| Compatibilidad de protocolo | Protocolo Tailscale | Protocolo Tailscale (compatible) |
Comparación detallada de funciones
Funciones de red principales
| Función | Tailscale | Headscale | Notas |
|---|---|---|---|
| Mesh basado en WireGuard | ✅ Sí | ✅ Sí | Ambos usan WireGuard para todas las conexiones entre pares |
| Traversal NAT automático | ✅ Sí | ✅ Sí | STUN/DERP para conectividad confiable |
| Enrutamiento de subred | ✅ Sí | ✅ Sí | Acceso a redes detrás de una puerta de enlace |
| Nodos de salida | ✅ Sí | ✅ Sí | Enrutar todo el tráfico de Internet a través de un nodo |
| MagicDNS | ✅ Sí | ✅ Sí | Resolución de nombres dentro de la red mesh |
| DNS dividido | ✅ Sí | ✅ Sí | Anular DNS para dominios específicos |
| Enrutamiento de alta disponibilidad | ✅ Sí | ✅ Sí | Conmutación automática entre rutas |
| Soporte IPv6 | ✅ Completo | ✅ Completo | Direccionamiento mesh IPv6 completo |
| Soporte multicast | ❌ No | ❌ No | Ninguno admite multicast actualmente |
Control de acceso y seguridad
| Función | Tailscale | Headscale | Notas |
|---|---|---|---|
| Motor ACL | ✅ Avanzado | ✅ Compatible | Headscale implementa la sintaxis ACL de Tailscale |
| Control de acceso basado en etiquetas | ✅ Sí | ✅ Sí | Agrupar dispositivos con etiquetas |
| Gestión de usuarios/grupos | ✅ Sí | ✅ Sí | Headscale usa el concepto de “usuarios” |
| OpenID Connect (OIDC) | ✅ Sí | ✅ Sí | Autenticación con Google, Okta, Keycloak, etc. |
| Autenticación SAML | ✅ Sí (Enterprise) | ❌ No | Solo Tailscale |
| Tailnet Lock | ✅ Sí | ❌ No | Evita servidores de coordinación no autorizados |
| Comprobaciones de postura | ✅ Sí (beta) | ❌ No | Verificar cumplimiento del dispositivo antes del acceso |
| Acceso justo a tiempo | ✅ Sí | ❌ No | Permisos elevados temporales |
| Registro de auditoría | ✅ Extenso | ⚠️ Básico | Tailscale proporciona registros detallados |
Gestión y administración
| Función | Tailscale | Headscale | Limitaciones |
|---|---|---|---|
| Interfaz web | ✅ Oficial | ⚠️ Comunidad | Headscale tiene varias interfaces de comunidad |
| Gestión CLI | ✅ Sí | ✅ Sí | Ambos proporcionan herramientas CLI completas |
| API REST | ✅ Sí | ✅ Sí | Automatizar tareas de gestión |
| API gRPC | ❌ No | ✅ Sí | Headscale proporciona gRPC para control remoto |
| Proveedor Terraform | ✅ Oficial | ❌ No | Integración de infraestructura como código |
| Operador Kubernetes | ✅ Oficial | ⚠️ Comunidad | Operador de comunidad para Headscale |
| Aplicaciones móviles | ✅ iOS, Android | ✅ Compatible | Usar aplicaciones Tailscale con servidor Headscale |
| Consola de administración | ✅ Completa | ❌ No | Headscale se basa en CLI/API |
| Acceso multi-administrador | ✅ Sí | ⚠️ Manual | Headscale requiere implementación personalizada |
Funciones avanzadas
| Función | Tailscale | Headscale | Notas |
|---|---|---|---|
| Tailscale SSH | ✅ Sí | ⚠️ Solo servidor | Los nodos Headscale pueden ser servidores SSH, no clientes |
| Taildrop (intercambio de archivos) | ✅ Sí | ⚠️ Incompleto | Soporte limitado de Taildrop en Headscale |
| Funnel (entrada pública) | ✅ Sí | ❌ No | Exponer servicios a Internet público |
| Serve (compartir privado) | ✅ Sí | ❌ No | Compartir servicios dentro del tailnet |
| Recopilación de servicios | ✅ Sí | ❌ Limitado | Descubrir servicios en la red |
| Tailscale DERP | ✅ Red global | ⚠️ Integrado | Headscale tiene DERP integrado, o use personalizado |
| Servidores DERP personalizados | ✅ Sí | ✅ Sí | Ambos admiten servidores de retransmisión personalizados |
| Extensión Docker | ✅ Sí | ❌ No | Extensión Docker de Tailscale para redes de contenedores |
Comparación de precios (2026)
Precios de Tailscale
| Plan | Costo mensual | Costo anual | Dispositivos | Funciones |
|---|---|---|---|---|
| Personal | $0 | $0 | Hasta 100 | 1 usuario, funciones básicas, soporte comunitario |
| Personal Pro | $6/usuario/mes | $48/usuario/año | Ilimitados | Múltiples usuarios, enrutamiento de subred, ACL |
| Team | $10/usuario/mes | $100/usuario/año | Ilimitados | Consola de administración, registros de auditoría, SSO |
| Business | $15/usuario/mes | $150/usuario/año | Ilimitados | ACL avanzadas, grupos de usuarios, soporte prioritario |
| Enterprise | $18+/usuario/mes | Personalizado | Ilimitados | Tailnet Lock, SAML, soporte dedicado, SLA |
Nota: El plan Personal gratuito de Tailscale admite hasta 100 dispositivos para uso personal, lo que lo hace extremadamente generoso para homelabs y pequeñas implementaciones.
Costos de Headscale
Headscale es gratuito y de código abierto, pero incurre en costos de infraestructura:
| Recurso | Rango de costo mensual | Notas |
|---|---|---|
| VPS pequeño (1 CPU, 1 GB RAM) | $5-10 | Adecuado para <50 dispositivos |
| VPS mediano (2 CPU, 4 GB RAM) | $15-25 | Adecuado para 50-200 dispositivos |
| VPS grande (4 CPU, 8 GB RAM) | $40-80 | Adecuado para 200-1000+ dispositivos |
| Nombre de dominio | $10-15/año | Para certificados TLS |
| Ancho de banda | Generalmente incluido | Verificar límites del proveedor VPS |
| Inversión de tiempo | Variable | Configuración, mantenimiento, actualizaciones |
Costo total de propiedad (100 usuarios):
- Tailscale: $0 (nivel gratuito) o $1.000-1.800/mes (planes de pago)
- Headscale: $15-30/mes + 5-10 horas de configuración + 2-5 horas/mes de mantenimiento
Punto de equilibrio: Para organizaciones con más de 3-5 usuarios de pago, Headscale se vuelve rentable si valora su tiempo en menos de $50/hora.
Comparación de rendimiento
Latencia y rendimiento
Tailscale y Headscale usan WireGuard para el plano de datos, por lo que el rendimiento entre pares es idéntico:
| Métrica | Tailscale | Headscale |
|---|---|---|
| Sobrecarga de latencia P2P | <1ms | <1ms |
| Rendimiento P2P | Casi nativo (~900 Mbps en 1 Gbps) | Casi nativo |
| Rendimiento de tráfico retransmitido (DERP) | 50-300 Mbps | 10-200 Mbps (depende de su servidor) |
| Latencia de tráfico retransmitido | +10-50ms | +5-100ms (depende de la ubicación) |
| Establecimiento de conexión | 100-500ms | 200-800ms |
| Propagación de actualización de política ACL | <5 segundos | <30 segundos |
Diferencia clave: Tailscale opera una red DERP (retransmisión) global con servidores en todo el mundo, proporcionando mejor rendimiento de respaldo cuando fallan las conexiones directas. El DERP integrado de Headscale se ejecuta en su servidor, lo que puede tener mayor latencia sin distribución geográfica.
Escalabilidad
| Aspecto | Tailscale | Headscale |
|---|---|---|
| Nodos máximos | 100.000+ (probado) | ~5.000 (informes de la comunidad) |
| Nodos recomendados | Ilimitados | <1.000 para servidor único |
| RPM del plano de control | Altamente optimizado | Depende de las especificaciones del servidor |
| Memoria por nodo | N/A (gestionado) | ~1-5 MB (lado del servidor) |
| Base de datos | PostgreSQL (gestionado) | SQLite o PostgreSQL |
Comparación de seguridad
Seguridad de infraestructura
| Aspecto | Tailscale | Headscale | Evaluación |
|---|---|---|---|
| Confianza en el servidor de coordinación | Debe confiar en Tailscale Inc. | Usted controla el servidor | Headscale ofrece mejor privacidad |
| Claves de cifrado | Generadas en dispositivos, nunca enviadas a Tailscale | Generadas en dispositivos, nunca enviadas al servidor | ✅ Ambos excelentes |
| Seguridad del plano de datos | WireGuard (excelente) | WireGuard (excelente) | ✅ Ambos excelentes |
| Seguridad del plano de control | HTTPS + atestación | HTTPS + equivalente Tailnet Lock opcional | ⚠️ Tailscale ligeramente más fuerte |
| Pista de auditoría | Registro completo | Registro básico | ⚠️ Tailscale superior |
| Programa de recompensa por errores | ✅ Sí | ❌ No | Tailscale paga a investigadores de seguridad |
| Certificaciones de seguridad | SOC 2 Tipo II | N/A | Tailscale listo para empresa |
Consideraciones de privacidad
| Aspecto de privacidad | Tailscale | Headscale |
|---|---|---|
| Visibilidad de metadatos | Tailscale puede ver: nombres de dispositivos, IPs, metadatos de conexión | Usted controla todos los metadatos |
| Visibilidad del tráfico | ❌ No puede ver el tráfico (cifrado) | ❌ No puede ver el tráfico (cifrado) |
| Requisitos de cumplimiento | Sujeto a jurisdicción de EE. UU. | Sujeto a la jurisdicción de su servidor |
| Residencia de datos | Infraestructura en la nube de Tailscale | Su centro de datos elegido |
Veredicto: Ambas soluciones proporcionan cifrado excelente y arquitectura de conocimiento cero para el tráfico real. Headscale ofrece privacidad superior ya que usted controla todos los metadatos. Tailscale ofrece garantías de seguridad superiores a través de certificaciones, auditorías y recompensas por errores.
Comparación de configuración e implementación
Proceso de configuración de Tailscale
Tiempo requerido: 5-10 minutos
- Crear cuenta en tailscale.com
- Instalar el cliente en cada dispositivo (un comando o descarga de aplicación)
- Autenticarse usando OAuth (Google, Microsoft, GitHub, etc.)
- Configurar ACL (opcional, se puede hacer después)
- ¡Listo! La red está inmediatamente operativa
Ejemplo de instalación (Linux):
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up
Proceso de configuración de Headscale
Tiempo requerido: 30-90 minutos (primera vez)
- Aprovisionar servidor (VPS con IP pública, 1 GB+ de RAM recomendado)
- Configurar DNS (registro A apuntando al servidor)
- Instalar Headscale (mediante gestor de paquetes o Docker)
- Configurar Headscale (config.yaml con URL del servidor, base de datos, etc.)
- Configurar certificados TLS (Let’s Encrypt recomendado)
- Iniciar el servicio Headscale
- Crear usuarios mediante CLI:
headscale users create alice - Instalar el cliente Tailscale en cada dispositivo
- Configurar los clientes para usar el servidor de coordinación personalizado
- Registrar nodos mediante autenticación web o claves preauthorizadas
- Configurar ACL (archivo policy.json)
Ejemplo de instalación de Headscale (Ubuntu):
# Instalar Headscale
curl -fsSL https://pkgs.headscale.net/headscale_<VERSION>_linux_amd64.deb -o headscale.deb
sudo apt install ./headscale.deb
# Configurar Headscale
sudo nano /etc/headscale/config.yaml
# Establecer server_url en https://headscale.example.com
# Iniciar servicio
sudo systemctl enable --now headscale
# Crear usuario
headscale users create myuser
# En la máquina cliente
sudo tailscale up --login-server=https://headscale.example.com
Ganador en complejidad de configuración: Tailscale es dramáticamente más simple para la configuración inicial.
Complejidad operativa
Gestión diaria
| Tarea | Tailscale | Headscale | Ganador |
|---|---|---|---|
| Agregar nuevo dispositivo | Hacer clic en enlace, autenticarse | Generar clave auth o autenticación web | Tailscale (más fácil) |
| Actualizar ACL | Editar en la interfaz web, instantáneo | Editar archivo, recargar configuración | Tailscale (más fácil) |
| Ver estado de conectividad | Panel web | CLI o interfaz de comunidad | Tailscale (más fácil) |
| Solucionar problemas | Registros detallados en el panel | Registros del servidor + registros del cliente | Tailscale (más fácil) |
| Actualizaciones de software | Automáticas | Actualizaciones manuales del servidor | Tailscale (más fácil) |
| Respaldar configuración | Automático | Manual (base de datos + configuración) | Tailscale (más fácil) |
| Recuperación ante desastres | Automática | Restauración manual desde respaldo | Tailscale (más fácil) |
Carga de mantenimiento
Tailscale (servicio gestionado):
- ✅ Cero mantenimiento de servidor
- ✅ Actualizaciones automáticas y parches de seguridad
- ✅ Redundancia y conmutación integradas
- ✅ Soporte profesional disponible
- ❌ Dependiente de la disponibilidad del servicio Tailscale
Headscale (autoalojado):
- ⚠️ Actualizaciones del OS del servidor y parches de seguridad (mensual)
- ⚠️ Actualizaciones de software Headscale (cada 1-3 meses)
- ⚠️ Copias de seguridad de la base de datos (diario recomendado)
- ⚠️ Renovación de certificados TLS (automatizado con Let’s Encrypt)
- ⚠️ Configuración de monitoreo y alertas
- ⚠️ Solución de problemas en caso de incidencias
- ✅ Control completo sobre la infraestructura
- ✅ Sin dependencia de servicios de terceros
Inversión mensual de tiempo estimada:
- Tailscale: 30 minutos (revisar políticas, agregar usuarios)
- Headscale: 2-5 horas (actualizaciones, monitoreo, solución de problemas)
Recomendaciones de casos de uso
Elija Tailscale si:
✅ Quiere la configuración más rápida - 5 minutos desde la creación de la cuenta hasta la red en funcionamiento ✅ Tiene menos de 100 dispositivos - El nivel gratuito cubre el uso personal y de pequeñas empresas ✅ Prioriza la facilidad de uso - Mejor interfaz web y experiencia de usuario ✅ Necesita funciones empresariales - SSO, registros de auditoría, Tailnet Lock, comprobaciones de postura ✅ Valora su tiempo - Cero carga de mantenimiento, actualizaciones automáticas ✅ Necesita tiempo de actividad garantizado - Tailscale opera con un SLA de 99,99% (Enterprise) ✅ Quiere aplicaciones móviles oficiales - Apps nativas de iOS y Android con todas las funciones ✅ Necesita soporte profesional - Los planes de pago incluyen soporte prioritario ✅ El cumplimiento es importante - Certificado SOC 2 Tipo II ✅ Es una entidad comercial - Precios simples por usuario sin costos ocultos
Elija Headscale si:
✅ Necesita soberanía de datos completa - Todos los metadatos permanecen en su infraestructura ✅ Tiene restricciones de privacidad/cumplimiento - Los datos deben permanecer en jurisdicciones específicas ✅ Tiene experiencia técnica - Cómodo con administración de sistemas Linux, Docker, solución de problemas ✅ Tiene más de 10 usuarios de pago - Los ahorros se vuelven significativos a escala ✅ Quiere aprender - Excelente proyecto educativo para entender las VPN mesh ✅ Prefiere el código abierto - Puede auditar el código, contribuir correcciones, personalizar ✅ Es consciente del presupuesto - Costos recurrentes mínimos (servidor $5-30/mes) ✅ Tiene infraestructura existente - Puede implementarse en infraestructura Kubernetes/VM existente ✅ Necesita la API gRPC - Headscale proporciona gRPC para automatización avanzada ✅ Ya se autoaloja - Se integra en el ecosistema autoalojado existente
Enfoque híbrido: Usar ambos
Algunas organizaciones usan ambas soluciones:
- Tailscale para producción - Infraestructura crítica con SLA y soporte
- Headscale para desarrollo/pruebas - Entornos de desarrollo rentables
- Tailscale para usuarios no técnicos - Incorporación sencilla para el personal
- Headscale para equipos técnicos - Ingenieros cómodos con el autoalojamiento
Escenarios de migración
Migrar de Tailscale a Headscale
Motivación: Reducción de costos, soberanía de datos, mayor control
Proceso:
- Implementar el servidor Headscale y validar la funcionalidad
- Probar Headscale con un subconjunto de dispositivos no críticos
- Exportar ACL de Tailscale y adaptarlas para Headscale
- Migrar gradualmente los dispositivos al servidor de coordinación Headscale
- Actualizar las configuraciones DNS y las rutas de subred
- Cancelar la suscripción a Tailscale
Desafíos:
- Sin herramienta de migración automatizada
- Todos los dispositivos deben ser reautenticados
- Algunas funciones (Funnel, Serve, Taildrop) no funcionarán de forma idéntica
- La sintaxis ACL es compatible pero requiere pruebas
Inversión de tiempo: 5-20 horas según la complejidad
Migrar de Headscale a Tailscale
Motivación: Carga operativa reducida, funciones empresariales, mejor soporte
Proceso:
- Crear cuenta Tailscale y configurar las ACL
- Instalar clientes Tailscale (pueden reemplazar los existentes si es el mismo dispositivo)
- Migrar los dispositivos ejecutando
tailscale upsin servidor personalizado - Verificar la conectividad y los controles de acceso
- Dar de baja el servidor Headscale
Desafíos:
- Todos los dispositivos deben ser reautenticados
- Algunos usuarios pueden necesitar cuentas Tailscale (correo electrónico o SSO)
- Gestión del cambio y comunicación con los usuarios
Inversión de tiempo: 2-8 horas según el tamaño
Comunidad y ecosistema
Ecosistema Tailscale
| Recurso | Disponibilidad |
|---|---|
| Documentación oficial | ✅ Completa, bien mantenida |
| Foro de la comunidad | ✅ Foro activo con personal de Tailscale |
| Servidor Discord | ✅ Muy activo, personal receptivo |
| Issues de GitHub | ❌ Código cerrado (comentarios a través del foro) |
| Stack Overflow | ✅ Etiqueta activa con 2.000+ preguntas |
| Tutoriales de YouTube | ✅ Contenido oficial y de la comunidad |
| Integraciones | ✅ Docker, Kubernetes, Terraform, Synology, QNAP, etc. |
Ecosistema Headscale
| Recurso | Disponibilidad |
|---|---|
| Documentación oficial | ✅ Buena, mantenida por la comunidad |
| Foro de la comunidad | ⚠️ GitHub Discussions usado como foro |
| Servidor Discord | ✅ Servidor de comunidad activo |
| Issues de GitHub | ✅ Código abierto, rastreador de problemas activo (38.900+ estrellas) |
| Stack Overflow | ⚠️ Comunidad más pequeña (~100 preguntas) |
| Tutoriales de YouTube | ⚠️ Contenido creado por la comunidad |
| Interfaces web | ⚠️ Varias opciones comunitarias (Headscale-UI, Headplane, ouroboros) |
| Operador Kubernetes | ⚠️ Operador mantenido por la comunidad |
Tamaño de la comunidad (2026):
- Tailscale: 100.000+ miembros activos, respaldado por empresa bien financiada
- Headscale: 10.000+ miembros activos, proyecto de código abierto
Benchmarks de rendimiento en el mundo real (2026)
Basado en pruebas de la comunidad y benchmarks publicados:
Pruebas de rendimiento (entre pares)
| Escenario | Tailscale | Headscale | Referencia (sin VPN) |
|---|---|---|---|
| LAN gigabit | 940 Mbps | 940 Mbps | 945 Mbps |
| WAN (100 Mbps) | 98 Mbps | 98 Mbps | 100 Mbps |
| WAN (1 Gbps fibra) | 920 Mbps | 920 Mbps | 950 Mbps |
| Intercontinental (DERP) | 180 Mbps | 95 Mbps | N/A |
Análisis: Las conexiones directas entre pares tienen un rendimiento idéntico. Las conexiones retransmitidas favorecen a Tailscale debido a la infraestructura de la red DERP global.
Pruebas de latencia
| Escenario | Tailscale | Headscale | Referencia |
|---|---|---|---|
| Ping LAN | 1,2ms | 1,2ms | 0,8ms |
| WAN regional (160 km) | 15ms | 15ms | 12ms |
| A través del país | 48ms | 48ms | 45ms |
| Intercontinental (directo) | 155ms | 155ms | 152ms |
| Intercontinental (DERP) | 185ms | 220ms | N/A |
Análisis: Ambos agregan latencia mínima (~1-2ms) a las conexiones directas. La latencia DERP de Headscale varía según la ubicación del servidor.
Uso de recursos
| Métrica | Cliente Tailscale | Cliente Headscale | Servidor Headscale |
|---|---|---|---|
| Uso de RAM (inactivo) | 80-120 MB | 80-120 MB | 50-200 MB (varía según el número de nodos) |
| Uso de RAM (activo) | 120-200 MB | 120-200 MB | 100-500 MB |
| Uso de CPU (inactivo) | <1% | <1% | <1% |
| Uso de CPU (activo) | 5-15% | 5-15% | 3-20% (depende del número de nodos) |
| Uso de disco | 100-500 MB | 100-500 MB | 100 MB-2 GB (base de datos) |
Ejemplos de configuración avanzada
Headscale con Docker Compose
version: '3'
services:
headscale:
image: headscale/headscale:0.28.0
container_name: headscale
restart: unless-stopped
ports:
- "127.0.0.1:8080:8080" # API/Web
- "443:443" # HTTPS
- "3478:3478/udp" # STUN
volumes:
- ./config:/etc/headscale
- ./data:/var/lib/headscale
command: serve
environment:
- TZ=UTC
Ejemplo de ACL de Headscale
{
"groups": {
"group:admin": ["alice@", "bob@"],
"group:developers": ["charlie@", "diana@"]
},
"hosts": {
"production-db": "100.64.0.10/32",
"staging-db": "100.64.0.20/32"
},
"acls": [
{
"action": "accept",
"src": ["group:admin"],
"dst": ["*:*"]
},
{
"action": "accept",
"src": ["group:developers"],
"dst": ["staging-db:5432", "autogroup:self:*"]
}
]
}
Configuración del cliente Tailscale (uso con Headscale)
# Linux
sudo tailscale up \
--login-server=https://headscale.example.com \
--accept-routes \
--advertise-tags=tag:server
# Con clave de preauthenticación
headscale preauthkeys create --user engineering --expiration 1h
sudo tailscale up \
--login-server=https://headscale.example.com \
--authkey=<YOUR_AUTH_KEY>
Resolución de problemas comunes
Problemas de Tailscale
| Problema | Solución |
|---|---|
| No se puede conectar al servidor de coordinación | Verificar firewall, verificar conectividad a Internet |
| Falla la conexión directa | Generalmente recurre automáticamente a DERP; verificar la configuración NAT |
| Latencia alta | Verificar que se establezca una conexión directa (no retransmitida) |
| Clave expirada | Reautenticarse o deshabilitar la expiración de claves en la consola de administración |
| ACL bloquea el tráfico | Revisar las reglas ACL y probar la configuración |
Problemas de Headscale
| Problema | Solución |
|---|---|
| Los nodos no se registran | Verificar que la URL de Headscale sea accesible, verificar el certificado TLS |
| Falla la resolución DNS | Asegurarse de que MagicDNS esté configurado correctamente en config.yaml |
| El relé DERP no funciona | Verificar que el puerto STUN (3478/udp) esté abierto, verificar la configuración DERP |
| Nodos fuera de línea después del reinicio | Asegurarse de que los clientes estén configurados para iniciarse en el arranque |
| Los cambios de ACL no se aplican | Recargar Headscale: systemctl reload headscale |
| Corrupción de la base de datos | Restaurar desde la copia de seguridad, considerar PostgreSQL para producción |
Comandos de depuración
# Diagnósticos de Tailscale
tailscale status
tailscale netcheck
tailscale ping <hostname>
tailscale debug derp
# Diagnósticos de Headscale
headscale nodes list
headscale nodes list-routes
headscale debug routes
journalctl -u headscale -f # Ver registros
Mejores prácticas de seguridad
Para ambas soluciones
- Habilitar la expiración de claves - Requerir reautenticación regular
- Principio de mínimo privilegio - Conceder el mínimo acceso necesario en las ACL
- Etiquetar los nodos de infraestructura - Separar los dispositivos de usuario de los servidores
- Habilitar MFA - Requerir autenticación multifactor para el inicio de sesión de usuario
- Monitorear los registros de acceso - Revisar regularmente los patrones de conexión
- Mantener los clientes actualizados - Aplicar parches de seguridad rápidamente
Seguridad específica de Headscale
- Fortalecer el OS del servidor - Seguir los benchmarks CIS, deshabilitar servicios innecesarios
- Usar Let’s Encrypt - Automatizar la gestión de certificados TLS
- Implementar fail2ban - Prevenir intentos de fuerza bruta
- Copias de seguridad regulares - Automatizar las copias de seguridad de la base de datos a una ubicación separada
- Actualizar rápidamente - Monitorear las versiones de Headscale para parches de seguridad
- Segmentación de red - Aislar el servidor Headscale en la VLAN de gestión
- Habilitar firewall - Exponer solo los puertos necesarios (443, 3478/udp)
Hoja de ruta y desarrollo futuro
Hoja de ruta de Tailscale (2026)
Según las declaraciones públicas de Tailscale:
- ✅ Publicado: Aperture (puerta de enlace de gobernanza de IA), comprobaciones de postura mejoradas
- 🚧 En desarrollo: Detección avanzada de amenazas, soporte de plataforma ampliado
- 📋 Planificado: Modo solo IPv6, observabilidad mejorada, más integraciones
Estado de Headscale (2026)
Basado en hitos de GitHub y discusiones de la comunidad:
- ✅ Añadido recientemente: Autenticación OIDC, DERP mejorado, mejor soporte ACL
- 🚧 En desarrollo: Mejoras de Taildrop, mejor integración de la interfaz web
- 📋 Solicitudes de la comunidad: Equivalente a Funnel/Serve, registro avanzado, modo HA
Evaluación de madurez:
- Tailscale: Calidad de producción, listo para empresa, 5+ años de desarrollo
- Headscale: Listo para producción para casos de uso básicos, desarrollado activamente, impulsado por la comunidad
Conclusión
Tanto Tailscale como Headscale ofrecen una funcionalidad VPN mesh excepcional basada en WireGuard, pero sirven a diferentes audiencias y casos de uso.
Elija Tailscale si:
- Valora la simplicidad y quiere ser productivo en minutos
- Es un equipo pequeño (<100 dispositivos) que se beneficia del generoso nivel gratuito
- Necesita funciones empresariales como SSO, registro de auditoría y soporte profesional
- Prefiere los servicios gestionados al autoalojamiento
- Las certificaciones de cumplimiento (SOC 2) son importantes
Elija Headscale si:
- Necesita control completo sobre su infraestructura y metadatos
- Tiene experiencia técnica y disfruta del autoalojamiento
- La optimización de costos es crítica (>10 usuarios de pago = ahorros significativos)
- La soberanía de datos y la privacidad son fundamentales
- Prefiere soluciones de código abierto que pueda auditar y personalizar
Recomendaciones clave para 2026:
- Startups y pymes: Empiece con el nivel gratuito de Tailscale. Inmejorable para 0-100 dispositivos.
- IT empresarial: Tailscale Enterprise con SSO y soporte proporciona el mejor TCO considerando el tiempo del personal.
- Usuarios preocupados por la privacidad: Headscale ofrece control y privacidad máximos.
- Homelabbers técnicos: Headscale es una excelente oportunidad de aprendizaje.
- Organizaciones híbridas: Use Tailscale para producción, Headscale para desarrollo/pruebas.
Independientemente de su elección, está usando la tecnología WireGuard de primera clase para redes seguras y modernas. La decisión se reduce a sus prioridades: comodidad vs control, gestionado vs autoalojado y costo vs funciones.
Para la mayoría de las organizaciones en 2026, el servicio gestionado de Tailscale proporciona el mejor equilibrio de funcionalidad, facilidad de uso y valor. Para organizaciones con requisitos específicos de soberanía, privacidad o costo, Headscale ofrece una alternativa autoalojada convincente.
Referencias y recursos
- Sitio web oficial de Tailscale
- Documentación de Tailscale
- Documentación oficial de Headscale
- Repositorio GitHub de Headscale
- Sitio oficial de WireGuard
- Blog de Tailscale - Cómo funciona Tailscale
- Arquitectura Zero Trust de NIST
- Libro blanco técnico de WireGuard




