Activar un certificado SSL en tu sitio web es esencial para proteger la información de tus visitantes y mejorar el SEO. Con el plugin Really Simple SSL, puedes forzar HTTPS, corregir contenido mixto y reforzar la seguridad habilitando HSTS y otras cabeceras de seguridad.
En este artículo, te mostraremos cómo hacerlo paso a paso.
Paso 1: Instalar Really Simple SSL
- En tu panel de WordPress, ve a Plugins > Añadir nuevo.
- Busca Really Simple SSL.
- Haz clic en Instalar ahora y luego en Activar.
Una vez activado, el plugin detectará automáticamente si tu certificado SSL está activo y sugerirá configuraciones adicionales.
Paso 2: Forzar HTTPS y corregir contenido mixto
El contenido mixto ocurre cuando algunos recursos de la web (como imágenes, scripts o estilos) aún se cargan con HTTP en lugar de HTTPS, lo que puede causar advertencias de seguridad.
Para solucionarlo:
- Ve a Ajustes > SSL en WordPress.
- Activa la opción «Forzar redirección a HTTPS».
- Habilita «Corrección automática de contenido mixto» para que el plugin reemplace los enlaces HTTP con HTTPS.
- Guarda los cambios y recarga tu sitio.
Si después de esto aún hay contenido mixto, revisa manualmente los enlaces en tu web o usa el plugin Better Search Replace para cambiar todos los enlaces de http://
a https://
.
Paso 3: Habilitar HSTS para mayor seguridad
El HTTP Strict Transport Security (HSTS) obliga a los navegadores a acceder siempre a tu sitio mediante HTTPS, previniendo ataques como el Man-in-the-Middle.
Opción 1: Configuración en .htaccess
(Para Apache)
-
Accede a tu servidor mediante FTP o cPanel.
-
Abre el archivo
.htaccess
ubicado en la raíz de tu instalación de WordPress. -
Agrega el siguiente código al final del archivo:
apache<IfModule mod_headers.c>
Header always set Strict-Transport-Security «max-age=31536000; includeSubDomains; preload»
</IfModule>4. Guarda los cambios y recarga tu web.
Opción 2: Configuración en Nginx
Si tu servidor usa Nginx, agrega esta línea en la configuración:
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;
Luego, guarda los cambios y reinicia el servidor con:
También puedes activar HSTS desde Cloudflare si tu sitio está configurado en esta plataforma.
Paso 4: Agregar otras cabeceras de seguridad
Para mejorar la seguridad de tu sitio, puedes agregar las siguientes cabeceras en .htaccess
o en la configuración de Nginx.
Configuración en .htaccess
(Para Apache)
Añade este código al archivo .htaccess
:
<IfModule mod_headers.c>
# HSTS: Obliga HTTPS
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
# CSP: Protección contra ataques XSSHeader always set Content-Security-Policy «default-src ‘self’; script-src ‘self’ ‘unsafe-inline’; style-src ‘self’ ‘unsafe-inline'»
# X-Frame-Options: Previene ataques de Clickjacking
Header always set X-Frame-Options «SAMEORIGIN»
# X-Content-Type-Options: Evita la detección de MIME no deseada
Header always set X-Content-Type-Options «nosniff»
# Referrer-Policy: Controla cómo se envían las referencias
Header always set Referrer-Policy «strict-origin-when-cross-origin»
# Permissions-Policy: Restringe acceso a APIs del navegador
Header always set Permissions-Policy «geolocation=(), microphone=(), camera=()»
</IfModule>
Configuración en Nginx
Si usas Nginx, agrega esto a la configuración del servidor:
add_header Content-Security-Policy «default-src ‘self’; script-src ‘self’ ‘unsafe-inline’; style-src ‘self’ ‘unsafe-inline'» always;
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;
add_header Permissions-Policy «geolocation=(), microphone=(), camera=()» always;
Luego, reinicia Nginx con:
Paso 5: Verificar que las cabeceras de seguridad están activas
Después de realizar estos cambios, revisa si todo está correctamente configurado usando la herramienta:
Introduce la URL de tu web y asegúrate de que no haya advertencias de seguridad.
Conclusión
Con Really Simple SSL, puedes activar HTTPS fácilmente y corregir contenido mixto en WordPress. Además, agregar HSTS y otras cabeceras de seguridad ayuda a proteger tu web contra ataques cibernéticos, mejorar la privacidad y fortalecer la confianza de los visitantes.
Siguiendo estos pasos, garantizas que tu sitio sea más seguro y cumpla con las mejores prácticas recomendadas. 🚀
⚠️ Precaución: Uso del HSTS y posibles problemas
El HTTP Strict Transport Security (HSTS) es un encabezado de seguridad que obliga a los navegadores a usar siempre HTTPS en tu sitio web, incluso si el usuario intenta acceder mediante HTTP.
Para activarlo en tu servidor Apache, se usa esta línea en el archivo .htaccess
:
apache# HSTS: Obliga HTTPS
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
🚨 Posibles problemas al activar HSTS
Aunque HSTS es una excelente medida de seguridad, puede causar problemas si no se configura correctamente. Aquí te menciono los más comunes:
- No puedes acceder a tu sitio por HTTPS mal configurado
- Si el certificado SSL está caducado o mal instalado, los visitantes no podrán acceder al sitio, ya que HSTS les impide volver a HTTP.
- Solución: Antes de activar HSTS, asegúrate de que tu SSL esté correctamente configurado y no tenga errores.
- El sitio queda bloqueado en el navegador
- Una vez que un navegador detecta HSTS en tu sitio, siempre usará HTTPS y no permitirá acceso por HTTP.
- Solución: Si necesitas desactivar HSTS temporalmente, no basta con quitar la línea del .htaccess. Debes usar este comando en la cabecera antes de eliminarlo: apacheCopiarEditar
Header always set Strict-Transport-Security "max-age=0"
- Problemas con subdominios sin SSL
- Si activaste
includeSubDomains
, todos los subdominios de tu sitio también deberán usar HTTPS. - Solución: Si tienes subdominios sin SSL, no uses
includeSubDomains
, o bien instala un certificado SSL para todos.
- Si activaste
- No puedes volver atrás fácilmente
- Si activaste
preload
, tu sitio entrará en la lista de HSTS Preload de los navegadores, lo que significa que aunque elimines HSTS, los navegadores seguirán aplicándolo. - Solución: Evita usar
preload
si no estás seguro de que lo necesitarás a largo plazo. Si ya lo activaste, debes solicitar la eliminación en hstspreload.org.
- Si activaste
✅ Recomendaciones finales
- Prueba HSTS con un tiempo corto primero: apacheCopiarEditar
Header always set Strict-Transport-Security "max-age=300"
Esto activará HSTS solo por 5 minutos para verificar que todo funciona bien. - Solo usa
includeSubDomains
ypreload
si estás seguro de que todos tus subdominios y servidores usan HTTPS correctamente.
Siguiendo estas precauciones, evitarás problemas al aplicar HSTS y mejorarás la seguridad de tu sitio sin riesgos innecesarios. 🚀