Cómo autoalojar Headscale en un VPS (Guía completa)
Headscale es una implementación de código abierto del servidor de coordinación de Tailscale, que te permite gestionar tu propia red Tailscale. Esta guía te llevará a través del proceso de autoalojar Headscale en un VPS, facilitando a los desarrolladores y entusiastas de homelabs tomar control sobre sus redes mientras aprovechan la flexibilidad de un Servidor Privado Virtual (VPS).
Elegir tu proveedor de VPS
Antes de sumergirte en la instalación, necesitas seleccionar un proveedor de VPS adecuado. A continuación, se muestra una comparación de algunas de las mejores opciones para alojar Headscale:
| Proveedor | Precio Mensual | Núcleos de CPU | RAM | Almacenamiento | Enlace |
|---|---|---|---|---|---|
| Contabo VPS | 5.99 EUR | 1 | 4 GB | 100 GB SSD | Contabo |
| Hetzner Cloud | 4.15 EUR | 1 | 2 GB | 20 GB SSD | Hetzner |
| DigitalOcean | 6 USD | 1 | 1 GB | 25 GB SSD | DigitalOcean |
| Vultr | 6 USD | 1 | 1 GB | 25 GB SSD | Vultr |
| Linode (Akamai) | 5 USD | 1 | 1 GB | 25 GB SSD | Linode |
Para esta guía, recomendamos usar Hetzner Cloud por su excelente relación calidad-precio y rendimiento, pero siéntete libre de elegir cualquier proveedor según tu preferencia.
Configurando tu VPS
Paso 1: Crear una instancia de VPS
- Regístrate en tu proveedor de VPS seleccionado (por ejemplo, Hetzner).
- Crea una nueva instancia de VPS con al menos 2 GB de RAM para Headscale. Selecciona Ubuntu 20.04 o posterior como tu sistema operativo.
- Accede a tu VPS usando SSH:
ssh root@your_vps_ip
Paso 2: Actualizar el sistema
Actualiza los paquetes del sistema para asegurarte de que estás ejecutando el software más reciente.
apt update && apt upgrade -y
Paso 3: Instalar Docker
Headscale puede ejecutarse de forma eficiente en un contenedor de Docker. Aquí están los pasos para instalar Docker:
- Instalar los requisitos previos:
apt install apt-transport-https ca-certificates curl software-properties-common -y - Agregar la clave GPG oficial de Docker:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - - Configurar el repositorio estable:
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" - Instalar Docker:
apt update && apt install docker-ce -y
Paso 4: Instalar Docker Compose
A continuación, instala Docker Compose para gestionar tu contenedor de Headscale.
curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
Paso 5: Configurar Headscale
-
Crea un directorio para Headscale:
mkdir ~/headscale cd ~/headscale -
Crea un archivo Docker Compose:
version: '3.8' services: headscale: image: headscale/headscale:latest ports: - "8180:8080" volumes: - headscale-data:/var/lib/headscale environment: - HEADSCALE_SERVER_HOST=my-headscale-server - HEADSCALE_SERVER_PORT=http://localhost:8080 volumes: headscale-data: -
Edita las variables de entorno en el archivo Docker Compose para adaptarlas a tu configuración.
Paso 6: Iniciar Headscale
Inicia el servicio de Headscale ejecutando:
docker-compose up -d
Paso 7: Configurar DNS y la configuración del cliente
Necesitas configurar tus ajustes de DNS para permitir que los clientes se conecten a tu Headscale autoalojado.
- Configura un registro A de DNS para tu IP de VPS para permitir que los clientes de Tailscale accedan a tu servidor Headscale.
- Configuración del cliente: Instala Tailscale en tus dispositivos y conéctalos al servidor Headscale usando el DNS configurado.
Conclusión
Has autoalojado con éxito Headscale en un VPS. Esta configuración proporciona control total sobre tu red Tailscale y asegura que todas las conexiones sean privadas y seguras. Para configuraciones avanzadas, consulta el repositorio awesome-selfhosted.
FAQs
¿Cómo mejora Headscale la funcionalidad de Tailscale?
Headscale permite autoalojar tu servidor de coordinación de Tailscale, dándote un mayor control sobre tus configuraciones de red, autenticación y gestión de usuarios. A diferencia del servicio principal de Tailscale, que enruta el tráfico a través de sus servidores, Headscale mantiene tus datos locales y privados. Esto es especialmente beneficioso para empresas o desarrolladores que buscan imponer una estricta privacidad de datos.
¿Cuáles son las implicaciones de seguridad de autoalojar Headscale?
Autoalojar Headscale te da acceso exclusivo y control sobre los datos sensibles manejados por tu red Tailscale. Al gestionar tu servidor, puedes imponer políticas de seguridad personalizadas, actualizar regularmente tu software y prevenir accesos no autorizados. Sin embargo, es fundamental mantener prácticas de seguridad como copias de seguridad regulares, configuraciones de firewall y monitoreo de registros para salvaguardar tu servicio autoalojado.
¿Puedo ejecutar Headscale en un VPS de especificaciones bajas?
Sí, Headscale puede ejecutarse en un VPS de especificaciones bajas, pero el rendimiento puede variar. Típicamente, un VPS con al menos 2 GB de RAM proporciona un rendimiento satisfactorio para una red pequeña a mediana. Si esperas un alto tráfico o tienes numerosos clientes conectados, considera optar por un VPS más robusto para prevenir caídas y asegurar una experiencia fluida. Consulta la comparación completa de VPS para más opciones.