Instalación y Configuración de Let’s Encrypt en Ubuntu 24.04 (Certbot)

📖 Descripción General

Este documento describe el procedimiento para instalar y configurar Certbot utilizando el repositorio oficial de Ubuntu 24.04 (APT). Este método es el estándar para entornos donde se prefiere evitar el uso de paquetes Snap y mantener la gestión de dependencias nativa del sistema operativo.

🛠️ Requisitos Previos

  • Servidor: Ubuntu 24.04 LTS.
  • Privilegios: Acceso root o usuario con sudo.
  • DNS: El registro A del dominio debe apuntar a la IP pública del servidor.
  • Firewall: Puertos 80 (HTTP) y 443 (HTTPS) habilitados.

🚀 Procedimiento de Instalación

1. Actualización de Repositorios

Antes de instalar nuevos paquetes, asegúrese de que el índice local de paquetes esté actualizado.

Bash

sudo apt update && sudo apt upgrade -y

2. Instalación de Certbot y Plugins

Ubuntu 24.04 incluye versiones estables de Certbot en sus repositorios oficiales. Instale Certbot junto con el plugin correspondiente a su servidor web:

  • Para Nginx:Bashsudo apt install certbot python3-certbot-nginx -y
  • Para Apache:Bashsudo apt install certbot python3-certbot-apache -y

3. Ejecución y Generación de Certificados

Certbot automatiza la modificación de los archivos de configuración y la obtención del certificado.

Caso Nginx:

Bash

sudo certbot --nginx -d tu-dominio.com -d www.tu-dominio.com

Caso Apache:

Bash

sudo certbot --apache -d tu-dominio.com -d www.tu-dominio.com

🔒 Gestión y Automatización

Renovación Automática

Al instalar vía APT, el sistema crea automáticamente un script en /etc/cron.d/certbot o un servicio de systemd llamado certbot.timer. Este se encarga de renovar los certificados antes de que expiren.

Para verificar que la tarea programada funciona correctamente:

Bash

sudo certbot renew --dry-run

Ubicación de Archivos Críticos

Para auditorías de seguridad en Balam, los certificados se almacenan en:

  • Certificado Fullchain: /etc/letsencrypt/live/tu-dominio.com/fullchain.pem
  • Clave Privada: /etc/letsencrypt/live/tu-dominio.com/privkey.pem

⚠️ Troubleshooting (Resolución de Problemas)

ProblemaCausa ProbableSolución
Connection RefusedPuerto 80 bloqueadoEjecutar sudo ufw allow 80/tcp
Missing PluginNo se instaló el plugin de pythonEjecutar sudo apt install python3-certbot-[nginx/apache]
Rate LimitDemasiados intentos fallidosEsperar 1 hora o usar el flag --test-cert para pruebas

Propiedad de Balam – Documentación Técnica 2026

¿Te gustaría que añadiera una sección sobre cómo configurar la redirección forzosa de HTTP a HTTPS de forma manual en el archivo de configuración?

About balam