VPS 3: Coolify
Posted on January 30, 2025 • 6 minutes • 1076 words • Other languages: English
Esta es la tercera parte de mi serie de blogs sobre VPS .
Algunas capturas de pantalla que se muestran acá son de Coolify Crash Course | Self Host 101 | Secure Set up .
- ¿Qué es Coolify? (¿Y por qué elegirlo?)
- Instalación de Coolify
- Configuración inicial
- Configuración de HTTPS y dominios
- Configuración del servidor proxy
- Crear un firewall
- Habilitá la autenticación de dos factores (2FA)
- Siguiente lectura
¿Qué es Coolify? (¿Y por qué elegirlo?)
Coolify es una plataforma como servicio (PaaS) de código abierto y auto alojable que te permite desplegar y gestionar apps web, bases de datos y servicios directamente en tu propio servidor. Pensalo como una alternativa autoalojada a Heroku, pero sin vendor lock-in ni facturas sorpresa.
Características principales
- Implementaciones con un solo clic: Desplegá apps desde repositorios Git, imágenes Docker o plantillas pre-construidas.
- Propiedad total: Alojá todo en tu VPS, sin dependencias de terceros.
- Compatibilidad con varios servidores: Gestioná apps en múltiples servidores desde un mismo dashboard.
- HTTPS automatizado: Integración incorporada con Let’s Encrypt para certificados SSL gratuitos.
- Docker-native: Funciona de forma nativa con contenedores Docker.
¿Por qué Coolify en lugar de otras alternativas?
- Simplicidad vs. control: Herramientas como Heroku o Render simplifican los despliegues, pero limitan la personalización. Coolify te da facilidad sin perder el control total del servidor.
- Rentable: A diferencia de plataformas de pago, Coolify es 100% gratis y de código abierto. Solo pagás por la infraestructura donde lo alojás (tu VPS).
- Evita la complejidad de Kubernetes: Para proyectos de pequeño a mediano tamaño, Kubernetes (k8s) es excesivo. Coolify ofrece una orquestación liviana sin una curva de aprendizaje tan alta.
Instalación de Coolify
Primero, iniciá sesión en tu VPS como usuario root y ejecutá el script oficial de instalación de Coolify :
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
Este script instala todas las dependencias y arranca Coolify automáticamente. Una vez finalizado, verás una confirmación de que Coolify está corriendo en http://<tu-ip-del-servidor>:8000
.
Configuración inicial
Acceso al panel de control
Abrí tu navegador y navegá a http://<tu-ip-del-servidor>:8000
. Vas a ver la pantalla de configuración inicial de Coolify:
- Ingresá un nombre, email y contraseña.
- Hacé clic en Register.
Elección del tipo de servidor
Luego de iniciar sesión, se te pedirá configurar tu servidor:
- Localhost: Se refiere al mismo VPS donde está instalado Coolify. Es ideal para pruebas o cargas livianas, pero no se recomienda para producción (una carga alta podría colapsar el dashboard de Coolify).
- Remote Server: Elegilo si querés que Coolify gestione un VPS separado (mejor para resiliencia en producción).
En esta serie de blogs, vamos a usar Localhost por simplicidad.
Configuración de HTTPS y dominios
Configuración de registros DNS
Para asegurar Coolify con HTTPS y asignarle un dominio, creá dos registros DNS A para tu dominio (por ejemplo, apps.tudominio.com
):
- Subdominio comodín: * →
<tu-ip-del-servidor>
- Dominio raíz: @ →
<tu-ip-del-servidor>
Esto permite que cualquier subdominio (por ejemplo, coolify.apps.tudominio.com
) resuelva a tu servidor.
Coolify Instance Domain
En la sección Settings → Configuration
de Coolify, configurá:
- Instance domain:
https://coolify.apps.tudominio.com
(reemplazá con tu dominio). - Desmarcá “Validate DNS”, ya que en algunos casos puede no funcionar correctamente.
- Desmarcá “Auto Update Enabled” (se recomienda actualizar de forma manual).
- Guardá los cambios.
Wildcard domain para apps
- Navegá a
Servers → Localhost → Configuration
. - En “Wildcard Domain”, ingresá tu dominio raíz (por ejemplo,
https://apps.tudominio.com
). - Guardá para habilitar el ruteo automático de subdominios para futuras apps.
Configuración del servidor proxy
Asegurate de que tu VPS siga permitiendo conexiones por los puertos 80/443 antes de este paso! Cambiar el proxy deshabilitará temporalmente el acceso por HTTPS.
- Hasta ahora no configuramos reglas de firewall, así que deberíamos estar OK.
Cambio a Caddy Proxy
Por defecto, Coolify usa Traefik . Es una opción válida, pero en esta serie de VPS vamos a cambiar a Caddy por su configuración más simple:
- Andá a
Servers → Localhost → Proxy
. - Detené el proxy actual.
- Cambiá el proxy y seleccioná Caddy.
- Reiniciá el proxy.
Visitá https://coolify.apps.tudominio.com
. Si la página de login carga, ¡tu configuración fue exitosa!
Redirige www a tu dominio canónico
Forzá la consistencia redirigiendo www
a tu dominio canónico.
- Andá a
Servers → Localhost → Proxy -> Dynamic Configurations
. - Hacé clic en Add Configuration y ponele un nombre (por ejemplo,
www_redirect.caddy
). - Pegá esta configuración (reemplazá
coolify.apps.tudominio
por tu dominio):www.coolify.apps.tudominio { redir https://coolify.apps.tudominio{uri} permanent }
- Reiniciá el proxy.
Probá visitando www.tu-dominio-coolify.com
. Debería redirigirte sin problemas.
Crear un firewall
Ahora que Coolify es accesible vía HTTPS, es crucial cerrar puertos innecesarios para minimizar la superficie de ataque.
Crear las reglas
- Accedé al panel de firewall de tu VPS: La mayoría de los proveedores tienen una herramienta de firewall integrada.
- Permití los puertos críticos creando reglas que permitan tráfico para:
- SSH (Puerto 22): Obligatorio para acceder al servidor. (Si cambiaste el puerto de SSH, utilizá ese en su lugar).
- HTTP (Puerto 80).
- HTTPS (Puerto 443).
- Bloqueá todos los demás puertos. Por defecto, el firewall bloquea todo tráfico no permitido explícitamente.
- Aplicá la configuración del firewall.
Verificá la configuración
- Probá los puertos bloqueados: Intentá acceder a Coolify por el antiguo puerto HTTP (por ejemplo,
http://<tu-ip-del-servidor>:8000
). La conexión debería fallar, confirmando que el firewall está activo. - Confirmá el acceso HTTPS: Visitá
https://coolify.tudominio.com
. El dashboard debería cargar normalmente, demostrando que el tráfico ahora se canaliza exclusivamente por puertos seguros.
Habilitá la autenticación de dos factores (2FA)
Ahora que tu instancia de Coolify está asegurada detrás de HTTPS y un firewall, agreguemos una capa crítica de protección de cuenta: la autenticación de dos factores (2FA).
¿Por qué habilitar 2FA?
- Protección contra fuerza bruta: Sin 2FA, los atacantes podrían adivinar contraseñas débiles con intentos repetidos.
- Defensa en profundidad: Incluso si tu contraseña se ve comprometida, 2FA bloquea el acceso no autorizado.
- Crítico para dashboards expuestos a Internet: Esencial para cualquier servicio que esté abierto al público.
Configuración 2FA en Coolify
- Accedé a los ajustes de seguridad: En
Profile → Two-factor Authentication
. - Activá 2FA: Escaneá el código QR con una app autenticadora.
- Guardá los códigos de recuperación: Coolify generará códigos de recuperación de un solo uso. Guardalos en un lugar seguro.
- Confirmá la configuración: Ingresá un código 2FA desde tu app autenticadora para finalizar la activación.
Siguiente lectura
VPS 4: Desplegando un dashboard de estadísticas en tiempo real