Asegurar la seguridad de su sitio WordPress es muy importante, especialmente si se trata de protegerse de hackers. Hay varias mejoras distintas y las mejores prácticas de seguridad WordPress que se puede aplicar para asegurar la seguridad de su sitio. Si su sitio WordPress funciona con HTTPS una de las mejoras que recomendamos aplicar es un encabezado de seguridad HSTS que puede prevenir los ataques de intermediarios (MitM) y secuestros de cookie.
- HSTS (Seguridad de Transporte Estricta)
- Cómo Añadir HSTS a Su Sitio WordPress
- Verificar el Encabezado HSTS
- El Impacto de HSTS en SEO y Redirecciones
¿Qué Es HSTS (Seguridad de Transporte Estricta)?
HSTS se refiere a la Seguridad de Transporte HTTP Estricta (HTTP Strict Transport Security) y estuvo especificado por IETF en RFC 6797 en 2012. Lo crearon como una manera para reforzar el navegador para que utilice conexiones seguras cuando sitio funciona con HTTPS. Es un encabezado de seguridad (security header) que se añade al servidor web y se refleja en el encabezado de respuesta como Seguridad de Transporte Estricta. HSTS es importante porque puede abordar las siguientes cuestiones:
- Cualquier intento por parte de los visitantes para usar la versión insegura (HTTP://) de una página en su sitio será automáticamente redirigido a la versión segura (HTTPS://).
- Antiguos «favoritos» HTTP y personas usando la versión HTTP de su sitio puedes causar ataques de intermediarios. En estos ataques el atacante altera la comunicación entre las partes y las engaña haciendolas pensar que todavía se comunican entre ellos.
- No permite la anulación de mensajes sobre certificado inválido que por su parte realmente protege al visitor.
- Secuestros de cookie: esto puede pasar si alguien roba un cookie de sesión a través de una conexión insegura. Cookies pueden contener todo tipo de información valiosa como información de tarjetas de crédito, nombres, direcciones, etc.
Cómo Añadir HSTS a Su Sitio WordPress
Técnicamente usted añade HSTS al propio servidor web, que luego se aplica a solicitudes HTTP a su sitio WordPress. Cuando se hace una redirección de HTTP a HTTPS, normalmente se añade una redirección 301. Google oficialmente ha comunicado que se puede usar al mismo tiempo tanto las redirecciones 301 del servidor como el encabezado HSTS.
Aunque nuestros sistemas prefieren la versión HTTPS por defecto, usted puede también aclararlo para otros motores de búsqueda redirigiendo su sitio HTTP a su versión HTTPS e implementando el encabezado HSTS en su servidor. Zineb Ait Bahajji, Equipo de Seguridad Google.
Hay diferentes tipos de directivas y/o niveles de seguridad que se puede aplicar para el encabezado HSTS. Abajo es el más básico que usa la directiva max-age. Esto define el tiempo en segundos por lo cual el servidor web debería entregar a través de HTTPS.
Activar HSTS en Apache
Añada el siguiente código a su archivo de hosts virtuales.
Header always set Strict-Transport-Security max-age=31536000
Activar HSTS en NGINX
Añada el siguiente código a su configuración NGINX.
add_header Strict-Transport-Security "max-age=31536000";
Si usted es un cliente de Kinsta y desea añadir encabezado HSTS a su sitio WordPress puede abrir un ticket de soporte y nosotros lo añadimos para usted. De hecho agregar un encabezado HSTS tiene beneficios de rendimiento. Si alguien está visitando su sitio a través de HTTP simplemente será redirigido a la versión HTTPS.
Precargar HSTS
Hay también la precarga HSTS, que básicamente pone su sitio web y/o dominio en una lista HSTS autorizada que está integrada en el navegador. Google oficialmente crea esta lista y la utilizan Chrome, Firefox, Opera, Safari, IE11 y Edge. Envíe su sitio a la lista de precarga HSTS oficial.
Sin embargo usted tiene que cumplir con algunos requisitos adicionales para que le elijan.
- El servidor debe tener un certificado SSL/TLS válido (TLS vs SSL: ¿Cuál es la diferencia?).
- Redirigir todo el tráfico a HTTPS.
- Servir HSTS en el dominio base.
- Servir todos los subdominios con HTTPS, incluyendo especialmente el subdominio www si existe.
- El vencimiento debe ser al menos 1 año (31536000 segundos).
- La directiva de token „includeSubdomains” debe ser especificada.
- La directiva de token de precarga debe ser especificada.
Esto requiere añadir los subdominios adicionales y las directivas de precarga a su encabezado HSTS. Abajo es un ejemplo del encabezado HSTS actualizado.
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload";
Advertencia: Puede ser un proceso largo y difícil tener su dominio eliminado de la lista precargada así que asegúrese de usar HTTPS a largo plazo.
Verificar el Encabezado HSTS
Existen unas maneras fáciles de revisar si HSTS está funcionando en su sitio WordPress. Se puede lanzar Google Chrome Devtools, pulse la pestaña „Network” y vea la pestaña encabezados. Como se puede ver abajo en nuestro sitio web de Kinsta se aplica el valor HSTS sigueinte: «strict-transport-security: max-age=31536000».
También se puede escanear su sitio WordPress con una herramienta online gratuita securityheaders.io que le hará saber si el encabezado de seguridad de transporte estricta se está aplicando o no.
Soporte de Navegadores HSTS
Según Caniuse, soporte de navegadores para HSTS es muy fuerte, globalmente un 80%, en los Estados Unidos un 95% lo está aplicando. IE11 soporta HSTS desde 2015. El único navegador moderno hoy que no soporta HSTS es Opera Mini.
También recomendamos ver el siguiente artículo de Tim Kadlec sobre HSTS and Let’s Encrypt.
El Impacto de HSTS en SEO y Redirecciones
Una vez que su sitio web haya sido aprobado e incluido en la lista de precarga de HSTS, es posible que observe advertencias en la Google Search Console o cualquier servicio de terceros de redirecciones 307. Esto se debe a que cuando alguien intenta visitar su sitio a través de HTTP una redirección 307 sucede en el navegador, en lugar de una redirección 301 (como se ve a continuación).
Normalmente, una redirección 307 solo se usa para redirecciones temporales. Se utiliza una redirección 301 para las URL que se han movido permanentemente. Entonces, ¿no deberían estar usando una redirección 301? ¿Y qué hay de las ramificaciones relacionadas con SEO de esto?
De hehco la redirección 307 está ocurriendo entre bastidores. Puede ejecutar el sitio a través de una herramienta que verifica la redirección en el nivel del servidor, como httpstatus, y verá que, de hecho, todavía está ocurriendo una redirección 301. Así que no debe preocuparse por el impacto en SEO de los encabezados HSTS.