Pollito Blog
January 30, 2025

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?)

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

¿Por qué Coolify en lugar de otras alternativas?

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:

coolify-create-account

Elección del tipo de servidor

Luego de iniciar sesión, se te pedirá configurar tu servidor:

coolify-choose-server

coolify-localhost coolify-remote-server

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):

hostinger-dns

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á:

  1. Instance domain: https://coolify.apps.tudominio.com (reemplazá con tu dominio).
  2. Desmarcá “Validate DNS”, ya que en algunos casos puede no funcionar correctamente.
  3. Desmarcá “Auto Update Enabled” (se recomienda actualizar de forma manual).
  4. Guardá los cambios.

coolify-instance-domain

Wildcard domain para apps

  1. Navegá a Servers → Localhost → Configuration.
  2. En “Wildcard Domain”, ingresá tu dominio raíz (por ejemplo, https://apps.tudominio.com).
  3. Guardá para habilitar el ruteo automático de subdominios para futuras apps.

coolify-wildcard

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.

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:

  1. Andá a Servers → Localhost → Proxy.
  2. Detené el proxy actual. coolify-stop-proxy
  3. Cambiá el proxy y seleccioná Caddy. coolify-switch-proxy
  4. 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.

  1. Andá a Servers → Localhost → Proxy -> Dynamic Configurations.
  2. Hacé clic en Add Configuration y ponele un nombre (por ejemplo, www_redirect.caddy).
  3. Pegá esta configuración (reemplazá coolify.apps.tudominio por tu dominio):
    www.coolify.apps.tudominio {
        redir https://coolify.apps.tudominio{uri} permanent
    }
    
  4. Reiniciá el proxy.

coolify-proxy-dynamic

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

  1. Accedé al panel de firewall de tu VPS: La mayoría de los proveedores tienen una herramienta de firewall integrada.
  2. 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).
  3. Bloqueá todos los demás puertos. Por defecto, el firewall bloquea todo tráfico no permitido explícitamente.
  4. Aplicá la configuración del firewall.

hostinger-firewall

Verificá la configuración

  1. 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.
  2. 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?

Configuración 2FA en Coolify

  1. Accedé a los ajustes de seguridad: En Profile → Two-factor Authentication.
  2. Activá 2FA: Escaneá el código QR con una app autenticadora.
  3. Guardá los códigos de recuperación: Coolify generará códigos de recuperación de un solo uso. Guardalos en un lugar seguro.
  4. Confirmá la configuración: Ingresá un código 2FA desde tu app autenticadora para finalizar la activación.

coolify-2fa

Siguiente lectura

VPS 4: Desplegando un dashboard de estadísticas en tiempo real

Hey, check me out!

You can find me here