Saltar a contenido
Caddy

Proxy inverso · TLS (cifrado de comunicaciones) · HTTPS (protocolo web cifrado) · Certificados

📌 v2.11.2 · 2026-03-06

Caddy — El director de tráfico

Gestionaría todas las conexiones, asegura que viajen cifradas con TLS y renueva los certificados automáticamente. Sin Caddy, escribirías direcciones IP y puertos en lugar de nombres.

Como usuario

Qué podrás hacer

  • No necesitas hacer nada. Caddy es transparente: convierte servicio.sc en la conexión correcta al servicio.
  • Todo el tráfico va cifrado con TLS.

Cómo se accederá

Plataforma Cómo
Navegador Transparente — los usuarios nunca interactúan directamente con Caddy
Ubuntu Transparente
Android Transparente
FireTV Transparente

Integración con otros servicios de SmallCountry

Servicio Relación
Authentik forward_auth en cada ruta — Caddy delega la autenticación a Authentik
Pi-hole Resuelve los nombres .sc para que Caddy reciba las peticiones
Todos los servicios Es el proxy inverso de todo SmallCountry — toda petición web pasa por Caddy
CA interna de SmallCountry**** Certificados TLS internos para todos los servicios

Servicios que lo hacen posible

  • Docker — contenedor caddy:2.8.4
Para el administrador (diseño previsto)

Datos del servicio

LXC (contenedor ligero de Proxmox) 102
IP 10.10.10.102
Tier A
Impacto 🔴 Crítico — caída = ningún servicio web responde

Almacenamiento persistente

ZFS (sistema de archivos con integridad de datos) dataset rpool/datos/caddy
Montaje en LXC /opt/caddy/
Subdirectorios config/ data/ logs/
Backup PBS (sistema de copias de seguridad de Proxmox) diario + Caddyfile versionado en Forgejo

Healthcheck

curl -s https://caddy.sc:2019/config/

Logs y diagnóstico

docker logs --tail 100 caddy

Backup manual

zfs snapshot rpool/datos/caddy@manual-$(date +%Y%m%d)

Problemas comunes

  • "Servicio no responde": verificar que Caddy está corriendo y que el backend está up
  • "Certificado inválido": forzar renovación → docker exec caddy caddy reload
Para el arquitecto (diseño previsto)

Relaciones con otros servicios

flowchart LR
    PiHole[Pi-hole DNS] -->|resuelve *.sc| Caddy
    Caddy -->|forward_auth| Authentik[Authentik LXC 105]
    Caddy -->|TLS reverse_proxy| Backends[Todos los backends]
    Backends -->|vmbr2/vmbr3| Services[Servicios de familia, IoT y finca]
    Backends -->|vmbr1| Admin[Servicios de administración]

Configuración de red

Bridge Puerto Acceso desde
vmbr1 443 Red de administración
vmbr2 443 Red de familia
vmbr3 443 Red de IoT / finca

En Pi-hole

*.sc  →  10.10.10.102

En Caddy

servicio.sc {
    forward_auth authentik.sc
    reverse_proxy 10.10.XX.XXX:PORT
}

En Authentik

Provider Proxy — cada servicio usa forward_auth
Grupos asignados Según el servicio: familia / empresa / admin / finca

Orquestación

Componente Path
Rol Ansible roles/caddy/
Playbook deploy-caddy.yml
Módulo OpenTofu modules/caddy/
Semaphore Proyecto caddy, Template deploy
Forgejo Actions .forgejo/workflows/caddy.yml
Repo Forgejo infra-core/
Ficha versionada docs/fichas/programas/caddy.md

Secciones relacionadas

🌐 Enlaces de interés

Sitio oficial · Documentación · GitHub