Cómo instalar certificados SSL con Certbot
Clase 12 de 22 • Curso de Despliegue de Aplicaciones Python en la Nube
Contenido del curso
Configuración de Servidores en la Nube para Despliegue
- 6

Cómo elegir recursos de servidor en AWS
03:33 min - 7

Cómo crear cuenta AWS con free tier
07:17 min - 8

Crear una instancia EC2 con Ubuntu en AWS
12:44 min - 9

SSH con llave .pem en Ubuntu AWS
08:41 min - 10

Cómo gestionar Ubuntu con apt y sudo
10:13 min - 11

Cómo DNS convierte tu IP en dominio memorable
13:55 min - 12

Cómo instalar certificados SSL con Certbot
Viendo ahora
Administración y Optimización de Servidores para Producción
- 13

Cómo clonar Django en servidor con SSH y Deploy Keys
14:41 min - 14

Configurar uWSGI como servicio para Django
14:34 min - 15

Conectar NGINX con uWSGI por proxy reverso
04:33 min - 16

Logs específicos por aplicación en Python
11:49 min - 17

Cómo configurar Sentry en Django
08:54 min - 18

Variables de entorno Django en servidor
04:28 min
Integración de Servicios Complementarios para Aplicaciones Python
Automatización y CI/CD para Despliegues Python
Proteger un sitio con HTTPS en el puerto 443 ya es un estándar. Aquí verás, paso a paso, cómo usar Certbot para obtener un certificado SSL gratis de Let's Encrypt en Nginx, habilitar redirecciones a HTTPS y validar la renovación automática sin riesgos.
¿Por qué HTTP en el puerto 80 es inseguro y qué soluciona SSL?
Usar HTTP en el puerto 80 hoy es inseguro. Con SSL, el navegador encripta la información antes de enviarla al servidor. Así, aunque existan servidores intermedios, no podrán leer los datos. Al habilitar HTTPS, el tráfico viaja cifrado y el sitio muestra un certificado válido emitido por Let's Encrypt.
- HTTP 80 es inseguro. La información viaja en texto plano.
- HTTPS 443 protege los datos. Todo se cifra entre navegador y servidor.
- SSL evita que terceros lean la información en tránsito.
¿Cómo instalar Certbot y obtener un certificado de Let's Encrypt en Nginx?
Para generar el certificado se usa Certbot. En servidores Nginx se instala además el complemento específico. Luego, se ejecuta el asistente que solicita un correo electrónico para notificaciones de vencimiento y problemas de seguridad, pide aceptar términos y condiciones y permite optar por compartir métricas de uso.
¿Qué comandos usar para instalar Certbot y el plugin de Nginx?
Ejecuta la instalación con apt.
sudo apt install certbot
sudo apt install python3-certbot-nginx
- Se muestran los paquetes y se confirma la instalación.
- Queda disponible el comando
sudo certbot.
¿Cómo generar y desplegar el certificado con redirección a HTTPS?
Inicia el asistente indicando el servidor web.
sudo certbot --nginx
- Ingresa un correo para alertas de vencimiento y seguridad.
- Acepta términos y condiciones del emisor.
- Opcionalmente permite notificar que el certificado fue creado para fines estadísticos.
- Selecciona el dominio a certificar si hay varios configurados.
- Se genera el certificado y se indican las carpetas donde se crean los archivos.
- Certbot ajusta la configuración de Nginx creando un segundo bloque de servidor que redirige a HTTPS.
- Verifica en el navegador usando
https://que el sitio muestre certificado válido emitido por Let's Encrypt. - Revisa la validez: el ejemplo indica que vence el 29 de enero.
Consejo práctico: valida que el path de configuración mostrado por Certbot coincida con el sitio configurado previamente.
¿Cómo asegurar la renovación automática del certificado?
La renovación se automatiza con Certbot. Aunque el certificado no esté por vencer, puedes simular el proceso para confirmar que todo está correcto y evitar interrupciones del servicio.
¿Qué hace el comando renew con el flag dry_run?
Ejecuta una simulación sin cambios.
sudo certbot renew --dry_run
renewes renovar.- El flag
--dry_runno modifica el servidor. - Simula la renovación del dominio y reporta si sería exitosa.
- Si la simulación resulta bien, cuando el certificado se acerque a su vencimiento se renovará automáticamente.
En síntesis operativa:
- Usa Certbot para emitir y desplegar el SSL en Nginx con
--nginx. - Habilita redirecciones a HTTPS para forzar tráfico cifrado.
- Prueba la renovación automática con
renew --dry_runpara asegurar continuidad.
¿Tienes dudas al configurar Certbot en Nginx o al interpretar los mensajes de renovación? Deja tu pregunta en los comentarios y con gusto te ayudo.