Tener tu sitio web en HTTPS ya no es opcional. Google penaliza en SEO los sitios sin SSL, Chrome los marca como “no seguros” y muchos usuarios abandonan al ver la advertencia roja. La buena noticia: con Let’s Encrypt puedes activar HTTPS gratis en minutos.
En esta guía cubrimos los 3 escenarios reales: hosting cPanel, hosting Plesk y VPS con Certbot. Incluye renovación automática y la solución a los errores más comunes.
¿Qué es Let’s Encrypt?
Let’s Encrypt es una autoridad certificadora (CA) gratuita, automatizada y abierta. Emite certificados SSL/TLS válidos para HTTPS sin costo. Está respaldada por Google, Mozilla, Cisco, AWS, Cloudflare y la Linux Foundation.
Características
- Gratis, sin trucos ni planes pagos.
- Validez de 90 días con renovación automática (esto no es un problema; es por diseño de seguridad).
- Confiado por todos los navegadores y sistemas operativos.
- Validación automática del dominio (DV — Domain Validation).
- Wildcard: puedes pedir certificados
*.tudominio.com.
¿Es realmente seguro frente a un SSL pago?
Sí. Cryptográficamente, un Let’s Encrypt y un certificado pago de $200 USD/año son idénticos. Lo que pagas en un SSL premium es soporte, seguro de garantía y certificados especiales (OV/EV con validación de empresa). Para la gran mayoría de sitios web —incluido e-commerce mediano— Let’s Encrypt es perfecto.
¿Cuándo NO usar Let’s Encrypt?
- EV SSL con barra verde (algunos bancos lo exigen para procesar pagos directos).
- Necesitas el seguro de responsabilidad civil que vienen con SSL pagos.
- Tu plataforma o cliente exige un emisor específico (raro, pero pasa).
Para todos los demás casos —tienda WooCommerce, blog, app SaaS, dashboard interno— Let’s Encrypt es la mejor opción.
Requisitos previos
- Dominio apuntando a tu servidor (registro A o CNAME activo y propagado).
- Puertos 80 y 443 abiertos en el firewall.
- Acceso al panel del hosting o SSH al VPS según el caso.
Si tu DNS aún no propaga, las verificaciones de Let’s Encrypt fallan. Comprueba con:
dig tudominio.com +short
Opción 1: Instalar SSL en cPanel (1 minuto)
cPanel incluye Let’s Encrypt integrado mediante el módulo AutoSSL o Let’s Encrypt™ SSL.
Activación con AutoSSL (lo más común)
- Entra a cPanel → busca SSL/TLS Status.
- Selecciona el dominio (y subdominios) que quieras proteger.
- Click en Run AutoSSL.
- Espera 1-2 minutos: cPanel emite y aplica el certificado.
Activación con Let’s Encrypt™ SSL
Si tu hosting tiene el plugin específico:
- cPanel → Let’s Encrypt™ SSL.
- Issue → selecciona dominio → “Issue”.
- Listo. La renovación es automática.
¿No ves la opción en cPanel?
Tu proveedor de hosting puede tener AutoSSL desactivado. Pídelo al soporte — es gratuito de habilitar. En el hosting cPanel de Moshipp viene activo por defecto en todos los planes.
Opción 2: Instalar SSL en Plesk (2 minutos)
Plesk también integra Let’s Encrypt nativamente.
- Entra a Plesk → Websites & Domains.
- Selecciona el dominio → SSL/TLS Certificates.
- Click en Install a free basic certificate provided by Let’s Encrypt.
- Marca también
www.tudominio.com(recomendado) y opcionalmente correo (mail.tudominio.com). - Acepta términos → Click en Get it free.
- En 30 segundos el certificado está instalado y aplicado automáticamente.
Plesk renueva automáticamente cuando faltan 30 días.
Opción 3: Instalar SSL en VPS con Certbot
Es el método para servidores Linux que tienes tú administrando (Ubuntu, Debian, AlmaLinux, Rocky).
Caso A: Servidor con Nginx (Ubuntu/Debian)
sudo apt update
sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d tudominio.com -d www.tudominio.com
Certbot:
- Detecta tu configuración de Nginx.
- Valida el dominio (debe apuntar al VPS).
- Emite el certificado.
- Modifica el archivo de Nginx para activar HTTPS.
- Te pregunta si quieres redirección automática HTTP → HTTPS (di 2 = sí).
Verifica:
sudo nginx -t && sudo systemctl reload nginx
curl -I https://tudominio.com
Deberías ver HTTP/2 200.
Caso B: Servidor con Apache (Ubuntu/Debian)
sudo apt install -y certbot python3-certbot-apache
sudo certbot --apache -d tudominio.com -d www.tudominio.com
Caso C: AlmaLinux / Rocky Linux
sudo dnf install -y epel-release
sudo dnf install -y certbot python3-certbot-nginx
sudo certbot --nginx -d tudominio.com
Caso D: Modo standalone (sin servidor web aún)
Si vas a instalar el certificado pero todavía no tienes Nginx/Apache configurado:
sudo certbot certonly --standalone -d tudominio.com
El certificado queda en /etc/letsencrypt/live/tudominio.com/. Luego apúntalo manualmente desde tu config:
ssl_certificate /etc/letsencrypt/live/tudominio.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/tudominio.com/privkey.pem;
Renovación automática
Los certificados de Let’s Encrypt duran 90 días. Certbot ya configura un timer o cron automático al instalarse.
Verificar el timer (Ubuntu)
sudo systemctl list-timers | grep certbot
Deberías ver certbot.timer ejecutándose 2 veces al día.
Probar renovación manualmente (dry-run)
sudo certbot renew --dry-run
Si dice Congratulations, all renewals succeeded, todo está bien. Certbot solo renovará cuando falten 30 días o menos para el vencimiento.
Forzar renovación (rara vez necesario)
sudo certbot renew --force-renewal
No abuses del force-renewal
Let’s Encrypt tiene rate limits: 50 certificados por dominio raíz cada 7 días. Si fuerzas renovaciones innecesarias, puedes quedarte bloqueado por una semana.
Wildcard SSL: cubrir todos los subdominios
Un wildcard cubre *.tudominio.com: app.tudominio.com, api.tudominio.com, etc. Útil cuando tienes muchos subdominios.
Requiere validación DNS-01 (no HTTP-01), porque el wildcard no puede validarse por HTTP.
sudo certbot certonly --manual --preferred-challenges=dns \
-d "*.tudominio.com" -d tudominio.com
Certbot te dará un valor TXT para agregar a tu DNS. Hazlo, espera propagación, presiona Enter y termina el proceso.
Para renovación automática del wildcard, configura un plugin DNS (Cloudflare, Route53, etc.). Ejemplo con Cloudflare:
sudo apt install -y python3-certbot-dns-cloudflare
sudo certbot certonly --dns-cloudflare \
--dns-cloudflare-credentials ~/.secrets/cloudflare.ini \
-d "*.tudominio.com" -d tudominio.com
Configuración recomendada de Nginx para mejor SSL
Una vez instalado, mejora el grado SSL del sitio editando el bloque server de Nginx:
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers off;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 1d;
ssl_session_tickets off;
# HSTS (después de validar que todo funciona)
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
# Otros headers de seguridad
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Content-Type-Options "nosniff" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
Recarga Nginx:
sudo nginx -t && sudo systemctl reload nginx
Verifica el grado del SSL en SSL Labs: https://www.ssllabs.com/ssltest/ — deberías obtener A o A+.
Errores comunes y soluciones
”Challenge failed for domain” / “DNS problem”
El dominio no resuelve a la IP del servidor o aún no propagó.
dig tudominio.com +short
# debe responder la IP de tu VPS o hosting
Si responde otra IP, espera 1-24 h a que propague o corrige el DNS.
”Port 80 unreachable”
El puerto 80 está cerrado o bloqueado por firewall.
sudo ufw status
sudo ufw allow 80/tcp
También verifica que no haya otro servicio escuchando en el 80 (sudo lsof -i :80).
”Too many requests” (rate limit)
Pediste demasiados certificados en pocos días. Espera una semana. Esto es típico al hacer pruebas. Usa staging durante pruebas:
sudo certbot --nginx -d tudominio.com --staging
Los certificados staging no son confiables (el navegador da advertencia), pero no cuentan contra el rate limit.
”Certificate not trusted” en navegador
Suele ser uno de:
- El sitio sirve el certificado del dominio equivocado.
- Falta el archivo
fullchain.pem(estás usando solocert.pem). - Algún proxy intermedio (Cloudflare, NGINX upstream) sigue sirviendo HTTP.
Verifica con:
curl -vI https://tudominio.com 2>&1 | grep -i 'subject\|issuer'
Mi sitio carga mitad HTTP, mitad HTTPS (mixed content)
El SSL funciona, pero algunas imágenes o scripts cargan por HTTP. El navegador muestra el candado con advertencia.
Soluciones:
- En WordPress: instala Really Simple SSL y activa “fix mixed content”.
- Manualmente: busca en BD/templates
http://tudominio.comy reemplaza porhttps://. - A nivel servidor: agrega
Content-Security-Policy: upgrade-insecure-requestsal header.
Migrar de HTTP a HTTPS sin perder SEO
Si tu sitio ya está indexado en Google con HTTP:
- Instala el SSL primero.
- Configura redirección 301 de HTTP → HTTPS (no 302).
- Actualiza la URL canónica en Google Search Console (agrega la propiedad HTTPS).
- Sitemap nuevo apuntando a las URLs HTTPS.
- Internal links: actualiza enlaces internos del sitio para apuntar a HTTPS.
- Google penaliza durante 1-2 semanas mientras reindexar; luego se estabiliza.
Para WordPress, plugins como Really Simple SSL automatizan los pasos 2, 5 y 6.
Preguntas frecuentes
¿Por qué Let's Encrypt es gratis si los SSL premium cuestan tanto?
Porque su modelo es automatizado y financiado por patrocinadores (Mozilla, EFF, Cisco, Google, etc.) que se benefician de un internet más seguro. Los SSL pagos cobran por procesos manuales (validación de empresa, seguros), no por la criptografía en sí.
¿Cada cuánto se renuevan los certificados Let's Encrypt?
Cada 90 días. Certbot revisa dos veces al día y renueva automáticamente cuando faltan 30 días. Si todo está bien configurado, nunca debes hacer nada manualmente.
¿Es seguro para una tienda online (e-commerce)?
Sí. Procesar pagos con Let's Encrypt es totalmente seguro. Los métodos pasarela (Wompi, PayU, Mercado Pago) usan sus propios servidores; tu SSL solo cifra la conexión usuario-tu sitio. Para que un cliente confíe, importa el candado verde y que tu sitio cargue rápido — no la marca del SSL.
¿Funciona con dominios .com.co?
Sí. Let's Encrypt emite para cualquier TLD válido. .com.co, .co, .com, .org, .net, .app, .dev — todos funcionan idénticamente.
¿Qué pasa si la renovación falla?
El certificado expirará y el navegador mostrará advertencia roja. Para evitarlo: revisa los logs de Certbot semanalmente (`sudo systemctl status certbot.timer`) y configura un email de alerta en Certbot. En cPanel/Plesk, el panel mismo te avisa por email cuando algo falla.
¿Puedo usar el mismo certificado en varios servidores?
Técnicamente sí, copiando los archivos `fullchain.pem` y `privkey.pem`. Pero NO es la práctica recomendada. Lo correcto es generar uno en cada servidor o usar un load balancer/CDN (como Cloudflare) que termina el SSL.
¿Let's Encrypt afecta el rendimiento del sitio?
El handshake SSL añade unos pocos milisegundos. Con HTTP/2 y session resumption (activos por defecto en Nginx moderno), el impacto es despreciable. Un sitio bien configurado con HTTPS carga igual o más rápido que en HTTP.
Conclusión
Activar SSL con Let’s Encrypt es gratis, rápido y mantiene a Google contento. En cPanel o Plesk lo haces en 1 click; en VPS con Certbot, en 2 minutos. Y una vez configurado, la renovación pasa sola.
Si quieres olvidarte por completo del SSL, los planes de Cloud WordPress y hosting cPanel de Moshipp incluyen Let’s Encrypt activado, monitoreado y con renovación automática. Si tu sitio es un VPS administrado por ti, esta guía es suficiente para tener HTTPS sólido en menos de 30 minutos.
Sigue aprendiendo

cPanel vs Plesk: cuál elegir para tu hosting en 2026
Comparamos cPanel vs Plesk en funciones, precio, facilidad y rendimiento. Descubre cuál panel de hosting conviene a tu proyecto en Colombia.
Leer más
Hosting compartido vs VPS: ¿cuándo es momento de migrar?
Diferencias entre hosting compartido y VPS en recursos, rendimiento, precio y control. Señales claras de que necesitas migrar a un VPS.
Leer más
Cómo migrar de cPanel a Plesk (o viceversa) paso a paso
Guía técnica para migrar sitios entre cPanel y Plesk sin perder datos ni configuraciones. Herramientas oficiales, métodos manuales y validación.
Leer más
