Configuración de HTTPS en WordPress con Lets Encrypt

Contents

Introducción a HTTPS y Lets Encrypt

En la actualidad, la seguridad y la confianza de los visitantes son pilares fundamentales para cualquier sitio web. Configurar HTTPS en tu instalación de WordPress no solo protege la información que viaja entre el servidor y el usuario, sino que además mejora el SEO y la percepción de profesionalismo.

Lets Encrypt es una autoridad de certificación gratuita, automatizada y abierta, respaldada por organizaciones como Internet Security Research Group (ISRG) y la Electronic Frontier Foundation (EFF). Su herramienta principal, Certbot, facilita la emisión y renovación de certificados SSL/TLS.

Beneficios de HTTPS en WordPress

  • Confidencialidad: Cifra datos sensibles (contraseñas, formularios).
  • Integridad: Protege contra modificaciones maliciosas en tránsito.
  • Autenticación: Verifica la identidad del servidor.
  • SEO: Google favorece sitios seguros con HTTPS.
  • Confianza: El candado en la barra de direcciones mejora la percepción del usuario.

Requisitos Previos

  1. Acceso SSH al servidor (root o usuario con sudo).
  2. Dominio registrado y apuntado al servidor (registro A o CNAME).
  3. Servidor web: Apache o Nginx.
  4. WordPress instalado y funcionando en HTTP.

Instalación y Emisión de Certificado con Certbot

Certbot es el cliente recomendado por EFF para automatizar la interacción con Lets Encrypt. A continuación, los pasos según tu servidor:

1. Agregar repositorio y actualizar

sudo apt update
sudo apt install software-properties-common
sudo add-apt-repository universe
sudo add-apt-repository ppa:certbot/certbot
sudo apt update

2. Instalar Certbot y plugin correspondiente

Servidor Comando de instalación
Apache sudo apt install certbot python3-certbot-apache
Nginx sudo apt install certbot python3-certbot-nginx

3. Emitir el certificado

Certbot puede configurar automáticamente tu servidor web:

  • Para Apache: sudo certbot --apache -d ejemplo.com -d www.ejemplo.com
  • Para Nginx: sudo certbot --nginx -d ejemplo.com -d www.ejemplo.com

Durante la ejecución, se te pedirá un correo electrónico para recuperación y aceptar los Términos de Servicio. Al finalizar, Certbot actualizará la configuración del servidor y recargará el servicio.

Configuración Manual en WordPress

1. Forzar HTTPS en WordPress

  • En wp-config.php, añadir antes de la línea que dice / Thats all, stop editing! /:
    define(FORCE_SSL_ADMIN, true)
    if (strpos(_SERVER[HTTP_X_FORWARDED_PROTO], https) !== false) {
    _SERVER[HTTPS]=on
    }
  • En Ajustes > Generales, actualizar Dirección de WordPress (URL) y Dirección del sitio (URL) para usar https://.

2. Redirección de todo el tráfico

Para evitar contenido mixto y garantizar que todo acceda por HTTPS, añade en la configuración de tu servidor:

Apache (en VirtualHost) Nginx (en server block)


nbspServerName ejemplo.com
nbspRedirect permanent / https://ejemplo.com/


server {
nbsplisten 80
nbspserver_name ejemplo.com
nbspreturn 301 https://hostrequest_uri
}

Renovación Automática

Lets Encrypt emite certificados con validez de 90 días. Certbot instala por defecto un cron job o systemd timer que ejecuta:

sudo certbot renew --quiet

Verifica su estado con sudo certbot renew --dry-run para asegurar que la renovación funcione sin interrupciones.

Solución de Problemas Comunes

  • Error de validación HTTP: Asegúrate de no bloquear .well-known/acme-challenge en tu firewall o reglas de seguridad.
  • Contenido mixto: Usa plugins como SSL Insecure Content Fixer o actualiza enlaces en la base de datos con Better Search Replace.
  • Redirecciones en bucle: Revisa configuraciones de redirección en Apache/Nginx y wp-config.php.

Pruebas y Validación

Para verificar que tu sitio esté correctamente configurado en HTTPS, utiliza:

Buenas Prácticas Adicionales

  • HSTS: Añade en la cabecera HTTP:
    Strict-Transport-Security: max-age=31536000 includeSubDomains preload
  • OCSP Stapling: Mejora tiempos de carga al incluir estado de revocación en el servidor.
  • Actualización periódica: Mantén WordPress, temas y plugins al día.

Conclusión

La configuración de HTTPS en WordPress con Lets Encrypt es un proceso accesible y de gran impacto en la seguridad y reputación de tu sitio. Siguiendo los pasos de instalación, emisión, redirección y renovación automática, asegurarás una experiencia segura y fiable para tus visitantes.

Para más detalles técnicos, consulta la documentación oficial de Certbot en certbot.eff.org y los recursos de configuración de WordPress.org.



Acepto donaciones de BAT's mediante el navegador Brave 🙂



Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *