Activación de HTTPS con Let's Encrypt
Proteja su servidor web con certificados TLS gratuitos de Let's Encrypt. Instale Certbot, obtenga y renueve certificados automáticamente y configure Nginx o Apache para servir tráfico mediante HTTPS con redirecciones HTTP.
Activación de HTTPS con Let's Encrypt es una lección gratuita de Linux Server Deployment & SSH Mastery en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Linux Server Deployment & SSH Mastery, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Linux Server Deployment & SSH Mastery incluye 4 lecciones en total.
Por qué HTTPS es imprescindible
Puede alojar sitios y configurar hosts virtuales, pero servirlos mediante HTTP sin cifrar expone el tráfico a escuchas y manipulaciones. Los navegadores ahora marcan los sitios HTTP como «No seguro».
HTTPS cifra el tráfico mediante un certificado TLS. Gracias a Let's Encrypt, estos certificados son gratuitos y se gestionan automáticamente.
Cómo funciona Let's Encrypt
Let's Encrypt es una autoridad de certificación que emite certificados gratuitos de corta duración (90 días). Para demostrar que controla un dominio, utiliza el protocolo ACME con un desafío automatizado.
Un cliente llamado Certbot se encarga de solicitar, instalar y renovar los certificados por usted.
Requisitos previos
Antes de solicitar un certificado, asegúrese de que:
- El registro DNS A de su dominio apunta a la dirección IP del servidor
- Los puertos 80 y 443 están abiertos en el firewall
- El servidor web está en ejecución y sirve el dominio
El desafío necesita que el puerto 80 sea accesible desde Internet.
sudo ufw allow 'Nginx Full'
dig +short yourdomain.comInstalación de Certbot
Certbot está disponible como paquete, con complementos para Nginx y Apache que automatizan los cambios de configuración.
sudo apt install certbot python3-certbot-nginx
# For Apache:
sudo apt install certbot python3-certbot-apacheObtención de un certificado (Nginx)
El complemento de Nginx obtiene el certificado y modifica el bloque del servidor para usarlo. Indique sus dominios con -d.
Certbot detecta automáticamente el bloque del servidor correspondiente.
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.comObtención de un certificado (Apache)
Para Apache, el flujo de trabajo es idéntico mediante el plugin de Apache. Certbot actualiza su host virtual para habilitar SSL.
sudo certbot --apache -d yourdomain.comForzar redirecciones a HTTPS
Durante la configuración, Certbot pregunta si desea redirigir HTTP a HTTPS — elija que sí. Si omitió este paso, añada manualmente una redirección en el bloque del servidor HTTP.
server {
listen 80;
server_name yourdomain.com;
return 301 https://$host$request_uri;
}Renovación automática
Los certificados caducan después de 90 días, pero Certbot instala un temporizador de systemd (o una tarea de cron) que los renueva automáticamente. Puede probar el proceso de renovación de forma segura con una ejecución de prueba.
sudo certbot renew --dry-run
systemctl list-timers | grep certbotVerificar su certificado
Confirme que HTTPS funciona visitando el sitio y examinando el certificado. Desde la CLI puede enumerar los certificados administrados y comprobar su caducidad.
sudo certbot certificates
curl -svI https://yourdomain.com 2>&1 | grep -i 'subject\|expire'Reforzar TLS
Para obtener la máxima seguridad, ajuste su configuración de TLS: deshabilite los protocolos antiguos, prefiera cifrados robustos y habilite HSTS para que los navegadores utilicen siempre HTTPS.
Herramientas como SSL Configuration Generator de Mozilla generan configuraciones listas para pegar.
ssl_protocols TLSv1.2 TLSv1.3;
add_header Strict-Transport-Security 'max-age=63072000' always;Prácticas recomendadas
Ejecute HTTPS de forma fiable:
- Redirija siempre HTTP a HTTPS
- Pruebe la renovación con
--dry-rundespués de la configuración - Abra los puertos 80 y 443; el 80 es necesario para las renovaciones
- Habilite HSTS y utilice únicamente protocolos TLS modernos
Comprobación rápida
Compruebe sus conocimientos sobre HTTPS.
Resumen
Ha protegido su servidor web con TLS gratuito:
- Instaló Certbot con el plugin de Nginx/Apache
- Obtuvo certificados con
certbot --nginx -d - Forzó las redirecciones de HTTP → HTTPS
- Confirmó la renovación automática con una ejecución de prueba
Ahora sus sitios estáticos y hosts virtuales sirven tráfico cifrado de forma predeterminada.
Preguntas frecuentes
¿La lección «Activación de HTTPS con Let's Encrypt» es gratis?
Sí — el texto completo de «Activación de HTTPS con Let's Encrypt» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Linux Server Deployment & SSH Mastery, actualiza a CoddyKit PRO. El curso de Linux Server Deployment & SSH Mastery incluye 4 lecciones en total.
¿Qué aprenderé en «Activación de HTTPS con Let's Encrypt»?
Proteja su servidor web con certificados TLS gratuitos de Let's Encrypt. Instale Certbot, obtenga y renueve certificados automáticamente y configure Nginx o Apache para servir tráfico mediante HTTPS… Practicas Linux Server Deployment & SSH Mastery con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Linux Server Deployment & SSH Mastery?
No se requiere experiencia previa. Linux Server Deployment & SSH Mastery en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.
¿Cuánto tiempo toma la lección «Activación de HTTPS con Let's Encrypt»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Linux Server Deployment & SSH Mastery?
Sí. Cada lección de Linux Server Deployment & SSH Mastery incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Instalación de Nginx/Apache
- Alojamiento de sitios web estáticos
- Configuración básica de hosts virtuales
- Activación de HTTPS con Let's Encrypt