Skip to main content

Command Palette

Search for a command to run...

Guía: Instalar y Configurar Caddy Server en Ubuntu 24.04

Published
3 min read

Si alguna vez has peleado configurando certificados SSL con Nginx o Apache, te va a encantar Caddy. Es un servidor web moderno y un proxy inverso increíblemente rápido que incluye una característica estrella: HTTPS automático y renovaciones automáticas por defecto.

En este tutorial, vamos a instalar la versión oficial de Caddy en nuestro servidor Ubuntu 24.04 (previamente securizado) y lo dejaremos listo para servir nuestra primera web o aplicación.


Paso 1: Instalar dependencias necesarias

Conéctate a tu servidor por SSH con tu usuario administrador (con permisos sudo) y asegúrate de tener instalados los paquetes básicos para poder descargar repositorios externos de forma segura:

sudo apt update
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl

Paso 2: Añadir el repositorio oficial de Caddy

Para asegurarnos de tener siempre la última versión estable, vamos a descargar e instalar la llave GPG oficial de Caddy y a añadir su repositorio a nuestro sistema.

Primero, descarga la llave GPG:

curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg

Luego, añade el repositorio a tu lista de fuentes (sources.list):

curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list

Paso 3: Instalar Caddy

Ahora que el sistema sabe de dónde descargar Caddy, simplemente actualiza la lista de paquetes e instálalo:

sudo apt update
sudo apt install caddy -y

Una vez terminada la instalación, Caddy se inicia automáticamente como un servicio del sistema. Puedes verificar que está corriendo felizmente con:

sudo systemctl status caddy

Paso 4: Abrir los puertos en el Firewall (UFW)

Si seguiste nuestra guía de seguridad anterior, recordarás que cerramos todos los puertos excepto el del SSH. Para que el mundo pueda ver tus páginas web, necesitamos abrir los puertos HTTP (80) y HTTPS (443):

sudo ufw allow 80,443/tcp
sudo ufw reload

Si ahora introduces la IP pública de tu servidor en tu navegador web, verás la página de bienvenida por defecto de Caddy. ¡Funciona!

Paso 5: Conociendo el Caddyfile

Toda la magia de Caddy ocurre en un único archivo de configuración llamado Caddyfile. Se encuentra en la ruta /etc/caddy/Caddyfile.

Para editarlo, usa tu editor de texto favorito:

sudo nano /etc/caddy/Caddyfile

Un ejemplo básico para servir una web estática o hacer un proxy inverso hacia una aplicación (como un bot o una API) sería tan simple como esto:

tudominio.com {
    reverse_proxy localhost:3000
}

Con esas tres simples líneas, Caddy generará el certificado SSL gratis, forzará la conexión a HTTPS y redirigirá el tráfico al puerto interno 3000 de tu servidor.

Siempre que modifiques el Caddyfile, recuerda recargar el servicio para aplicar los cambios sin apagar el servidor:

sudo systemctl reload caddy

¡Y eso es todo! Tienes un servidor web de última generación funcionando de forma segura. Adiós a las renovaciones manuales de certificados y a las configuraciones interminables.

4 views