VPS 3: Coolify
Posted on January 30, 2025 • 6 minutes • 1109 words • Other languages: English
- ¿Qué es Coolify? (¿y por qué elegirlo?)
- Instala Coolify
- Configuración inicial
- Configuración de HTTPS y dominios
- Configuración del servidor proxy
- Crear un firewall
- Habilitar la autenticación de dos factores (2FA)
- Siguiente lectura
Esta es la tercera parte de mi VPS blog series .
Algunos screenshots mostrados aquí son de Coolify Crash Course | Self Host 101 | Secure Set up .
¿Qué es Coolify? (¿y por qué elegirlo?)
Coolify es una plataforma como servicio (PaaS) de código abierto y autoalojada que te permite implementar y administrar aplicaciones web, bases de datos y servicios directamente en tu propio servidor. Piensa en ella como una alternativa autoalojada a Heroku, pero sin dependencia de un proveedor ni facturas sorpresa.
Características principales
- Implementaciones con un solo clic: Inicia aplicaciones desde repositorios de Git, imágenes de Docker o plantillas predefinidas.
- Propiedad total: Aloja todo en tu VPS, sin dependencias de terceros.
- Compatibilidad con varios servidores: Administra aplicaciones en varios servidores desde un único panel.
- HTTPS automatizado: Integración con Let’s Encrypt incorporada para certificados SSL gratuitos.
- Docker-Native: Funciona a la perfección con contenedores Docker.
¿Por qué Coolify en lugar de otras alternativas?
- Simplicidad vs. Control: Herramientas como Heroku o Render simplifican las implementaciones, pero limitan la personalización. Coolify te brinda facilidad y al mismo tiempo conserva el control total del servidor.
- Rentable: A diferencia de las plataformas pagas, Coolify es 100 % gratuito y de código abierto. Solo pagas por el lugar donde lo ejecutas (tu VPS).
- Evita la complejidad de Kubernetes: Para proyectos pequeños y medianos, Kubernetes (k8s) es excesivo. Coolify ofrece una orquestación liviana sin una curva de aprendizaje pronunciada.
Instala Coolify
Primero, inicia sesión en su VPS como usuario root y ejecuta el script de instalación oficial de Coolify :
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
Este script instala todas las dependencias e inicia Coolify automáticamente. Una vez completado, verás una confirmación de que Coolify se está ejecutando en http://<your-server-ip>:8000
.
Configuración inicial
Accede al panel de control
Navega hasta http://<ip-de-su-servidor>:8000
. Verás la pantalla de configuración de Coolify:
- Introduce un nombre, un correo electrónico y una contraseña.
- Haz clic en Registrarse.
Elección del tipo de servidor
Después de iniciar sesión, se solicitará que configures el servidor:
- Localhost: hace referencia al mismo VPS donde está instalado Coolify. Ideal para pruebas o cargas de trabajo livianas, pero no se recomienda para producción (una carga alta del servidor podría bloquear el panel de control de Coolify).
- Servidor remoto: usa esto si quieres que Coolify administre un VPS independiente (mejor para la resiliencia de la producción).
Para esta serie de blogs, utilizaremos Localhost para simplificar.
Configuración de HTTPS y dominios
Configuración de registros DNS
Para proteger Coolify con HTTPS y asignar un dominio: Crea dos registros DNS A para su dominio (por ejemplo, apps.yourdomain.com
):
- Wildcard subdomain: * →
<your-server-ip>
- Apex domain: @ →
<your-server-ip>
Esto permite que cualquier subdominio (por ejemplo, coolify.apps.yourdomain.com
) se resuelva en el servidor.
Coolify instance domain
En CoolifySettings → Configuration
, configura:
- Dominio de instancia: “https://coolify.apps.yourdomain.com ” (reemplaza con tu dominio).
- Desmarca Validar DNS, ya que puede no funcionar correctamente en algunos casos.
- Desmarca “Actualización automática habilitada” (se recomiendan actualizaciones manuales).
- Guarda los cambios.
Wildcard domain para apps
- Navega a
Servers → Localhost → Configuration
. - En Wildcard Domain, ingresa tu root domain (e.g.,
https://apps.yourdomain.com
). - Guarda para habilitar el enrutamiento automático de subdominios para futuras apps.
Configuración del servidor proxy
¡Asegúrate de que la VPS aún permita la conexión a través de los puertos 80/443 antes de este paso! Cambiar de proxy deshabilitará temporalmente el acceso a través de HTTPS.
- Hasta ahora no hemos configurado ninguna regla de firewall, por lo que deberíamos estar bien.
Cambio a Caddy Proxy
Por defecto, Coolify utiliza Traefik . Es una opción totalmente válida, pero en esta serie de VPS cambiaremos a Caddy por su configuración más sencilla:
- Ve a
Servers → Localhost → Proxy
. - Detenga el proxy actual
- Haz click en Switch Proxy y Selecciona Caddy.
- Reinicia el proxy.
Visite https://coolify.apps.yourdomain.com
. Si carga la página de inicio de sesión, ¡la configuración fue exitosa!
Redirige www a tu dominio canónico
Imponga coherencia redirigiendo www
a su dominio canónico.
- Ve a
Servidores → Localhost → Proxy -> Configuraciones dinámicas
. - Haz clic en Agregar configuración y asígna un nombre (por ejemplo,
www_redirect.caddy
). - Pega esta configuración (reemplace
coolify.apps.yourdomain
con su dominio):www.coolify.apps.yourdomain { redir https://coolify.apps.yourdomain{uri} permanent }
- Reinicie el proxy.
Pruebe visitando www.your-coolify-domain.com
. Debería redirigir sin problemas.
Crear un firewall
Ahora que se puede acceder a Coolify a través de HTTPS, es fundamental bloquear los puertos innecesarios para minimizar los vectores de ataque.
Crear las reglas
- Accede al panel de control del firewall de su VPS: La mayoría de los proveedores de VPS tienen una herramienta de firewall incorporada.
- Permite puertos críticos creando reglas para permitir el tráfico para:
- SSH (puerto 22): obligatorio para el acceso al servidor. (Si ha cambiado su puerto SSH, utilícelo en su lugar).
- HTTP (puerto 80).
- HTTPS (puerto 443).
- Deniegue todos los demás puertos. De manera predeterminada, los firewalls bloquean todo el tráfico que no está permitido explícitamente.
- Aplique el firewall.
Verificar la configuración
- Puertos bloqueados de prueba: Intente acceder a Coolify a través de su antiguo puerto HTTP (por ejemplo,
http://<your-server-ip>:8000
). La conexión debería fallar, lo que confirma que el firewall está activo. - Confirme el acceso HTTPS: Visite
https://coolify.yourdomain.com
. El panel de control debería cargarse normalmente, lo que demuestra que el tráfico ahora se canaliza exclusivamente a través de puertos seguros.
Habilitar la autenticación de dos factores (2FA)
Ahora que la instancia de Coolify está protegida con HTTPS y un firewall, agreguemos una capa fundamental de protección de la cuenta: la autenticación de dos factores (2FA).
¿Por qué habilitar la 2FA?
- Protección contra fuerza bruta: sin 2FA, los atacantes podrían adivinar contraseñas débiles mediante intentos de inicio de sesión repetidos.
- Defensa en profundidad: incluso si su contraseña está comprometida, la 2FA bloquea el acceso no autorizado.
- Crítico para los paneles de control públicos: esencial para cualquier servicio expuesto a Internet.
Configurar 2FA en Coolify
- Acceda a la configuración de seguridad: En
Profile → Two-factor Authentication
. - Habilite 2FA: Escanea el código QR con una aplicación de autenticación.
- Guarde códigos de recuperación: Coolify generará códigos de recuperación de un solo uso. Guárdalos de forma segura.
- Confirmar configuración: Ingresa un código 2FA desde tu aplicación de autenticación para finalizar la activación.
Siguiente lectura
VPS 4: Implementación de un panel de estadísticas en tiempo real