Hosting WordPress Webempresa

Cómo activar SSL y HTTPS en WordPress

por | Sep 20, 2022 | Seguridad WordPress

Cómo activar SSL y HTTPS en WordPress

Aprende a instalar un Certificado SSL Let’s Encrypt en tu Hosting y como activarlo para distribuir los contenidos bajo protocolo HTTPS WordPress de forma segura.

Te hablo en este artículo de cómo activar HTTPS en WordPress y que tu sitio se muestre de forma más segura en Internet.

La velocidad con la que los cambios se suceden en “la red”, principalmente en materia de seguridad y concretamente en la orientada a las pasarelas de pago, formularios, accesos y otros donde la necesidad de proteger datos sensibles es prioritaria nos lleva inexorablemente al uso de ertificados de seguridad como Lets Encrypt que añadan una capa de protección “extra” con el fin de no exponer información sensible.

Hasta hace poco se creía que el uso de un Certificado SSL (Secured Socket Layer) o “capa de conexión segura” era solo para clientes que tienen un sitio WordPress orientado al comercio electrónico (WooCommerce por ejemplo) y que seguramente necesitan disponer de un certificado SSL para validar la identidad de su sitio web y encriptar toda la información enviada desde y hacia el sitio web.

Google nos ha puesto los pies en nuestro sitio y ha dejado claro que cualquier web publicada en Internet debe utilizar una capa de seguridad mediante protocolo HTTPS, y ahora más que núnca esto también afecta al posicionamiento de los sitios web que no lo utilicen.

Cuando haces uso de un certificado SSL en WordPress (https) instalado en tu Hosting, los datos de los compradores o visitantes estarán totalmente asegurados para todas las transacciones financieras, nombres de usuario y contraseñas, e información de tarjetas de crédito.

Piensa en términos de encriptación o cifrado y así entenderás mejor lo importante que es que tu sitio entregue los datos de consultas o peticiones a tu sitio de forma segura a los clientes, compradores o visitantes.

  ¿Qué es un certificado SSL para WordPress?

 

Se trata de un sistema de cifrado de contenidos o de comunicaciones entre máquinas (navegador y servidor web) denominado SSL (del inglés Secure Sockets Layer) que permite que los extremos, o sea, el navegador del visitante o comprador se entienda con el servidor web que entrega el contenido de forma segura “encriptando los datos de dicha comunicación”.

Cada certificado SSL emitido es único y dispone de una clave pública y una clave privada que sirven juntas para establecer un cifrado de la conexión desde tu sitio. Junto con estas claves también viaja la información que identifica al propietario de dicho certificado con respecto a su sitio web.

El protocolo SSL en WordPress permite cifrar los datos de un sitio web garantizando a los clientes o visitantes que el sitio al que acceden es legítimo y que aplica una capa de seguridad adicional para evitar exponer datos sensibles.

Los datos que se transmiten a través de SSL en WordPress se codifican para garantizar que no puedan ser interceptados por terceros.

No es posible habilitar SSL en WordPress (https) en tu sitio web sin tener un Certificado SSL instalado, ya que dejarás tu sitio web inaccesible.

Si simplemente decides poner el protocolo HTTPS en WordPress como parte de la URL del sitio pero no tienes un certificado SSL instalado y activo, la web empezará a mostrar avisos de sitio no seguro y tus visitantes no podrán acceder con normalidad al sitio web.

Protocolo https en WordPress configurado en Ajustes

El SSL no lo otorga el protocolo sino el Certificado SSL que tengas instalado para cada dominio o subdominio en tu sitio web.

  Porqué no deberías utilizar HTTP en WordPress

 

Principalmente por razones de seguridad ya que es un protocolo de transferencia de datos (hipertexto) sin ninguna capa de seguridad adicional, lo que permite que pueda ser leído o escuchado en cualquier punto de la transmisión o envío desde el servidor al navegador del usuario.

HTTP es un protocolo de transferencia de hipertexto que no está codificado o encriptado ¡no es seguro!

HTTP vs HTTPS

Esto quiere decir que si por ejemplo te logueas desde tu navegador en la url http://m.facebook.com/login/?locale=es_ES en lugar de hacerlo en la url segura https://m.facebook.com/login/?locale=es_ES cualquier atacante o usuario malintencionado que esté escuchando el tráfico de tu router o conexión leer lo que ocurre en el navegador, averiguar el nombre de usuario y la contraseña de tu acceso de Facebook que acabas de escribir en tu navegador con protocolo HTTP.

Al final la distancia que te separa de que tu información sea leída por terceros es esa “S” en el protocolo, que es el acrónimo de Secure (Seguro) para HTTPS (HyperText Transfer Protocol Secure)

  ¿Qué es HTTPS?

 

Se trata de un protocolo de comunicaciones seguro (de ahí la S final) cuyo origen es el conocidísimo HTTP que no es más que un protocolo de transferencia de hipertexto (del inglés Hypertext Transfer Protocol).

HTTPS es la mejora del protocolo “http” añadiéndole una capa de seguridad para permitir que la información enviada o mostrada en un navegador se realice de forma segura mediante la encriptación del tráfico entre el navegador del usuario y el servidor al que se hace la petición de contenido.

Desde hace un tiempo la mayoría de servicios de distribución de información a nivel mundial, como Google, Bing, etc. potencian el uso del protocolo seguro HTTPS y penalizan la visibilidad y posicionamiento de sitios inseguros que aún operan con HTTP en la actualidad.

Existen herramientas online que te permiten comprobar si tu sitio web tiene activado SSL y si el Certificado SSL para que figure como HTTPS está correcto y actualizado.

  • SSLShopper: Ver plugin – Permite la comprobación gratuita del Certificado SSL.
  • Qualys SSL Labs: Ver plugin – Información bastante completa.
  • geocertsSSL: Ver plugin – Resultados rápidos comparados con otros comprobadores.
  • SSL Checker: Ver plugin – Permite descargar los certificados.
  • Comodo SSL: Ver plugin – Pensado para certificados Comodo.
  • DNS Checker: Ver plugin – Infromación bastante completa.

Un ejemplo del resultado de comprobar un dominio que tiene el Certificado SSL correctamente instalado.

Comprobación de certificado SSL online

Si tu sitio presentase contenido mixto es decir, tienes urls internas que usan https:// y están correctas, pero también tienes urls usando http:// que no están correctas, entonces dependiendo del comprobador online que uses te indicará que tienes contenido “no seguro” (mixto) en tu sitio con https y que deberías corregirlo porque entre otras cosas, afectará a tu posicionamiento.

 Google (y otros buscadores) penalizan que distribuyas contenido “no seguro” con protocolo HTTP.

  Certificados SSL Let’s Encrypt para WordPress

 

Puedes ver en este vídeo información general de este tipo de certificados SSL gratuitos donde lo explicamos con mayor detalle.

 

En Webempresa ofrecemos gratuitamente a nuestros clientes la instalación de Certificados SSL Let’s Encrypt para las webs que alojen en sus cuentas de Hosting.

   Activar SSL para WordPress desde un hosting

 

Para instalar un Certificado SSL en WordPress (para clientes de Webempresa) tienes que acceder a tu Área de Cliente y en el menú superior Hosting seleccionar el submenú Certificados

 

Certificados

Haz clic en la imagen para ampliarla  

 

Dentro de este apartado haces clic en el botón azul Gestionar certificados del Hosting contratado. Si tienes varios deberás realizar este proceso para cada dominio que tengas asociado a una cuenta de Hosting.

En la página que se muestra en Nuevos certificados para <tu-dominio> tienes la opción de instalar los certificados SSL Let’s Encrypt o Comodo (este último de pago).

 

Let's Encrypt

Haz clic en la imagen para ampliarla  

 

Haces clic en el botón azul Habilitar AutoSSL para instalar automáticamente un Certificado SSL Let’s Encrypt para el dominio seleccionado.

Verás el siguiente aviso en la parte superior de la pantalla:

Al solicitar el certificado para www.sudominio.tld el certificado funcionará para www.sudominio.tld y sudominio.tld indiferentemente.

No siempre los Certificados se activan al instante, por lo que debes ser paciente, verificar que realizas correctamente los pasos y esperar a que se produzca la magia y tu Certificado SSL quede activo.

Desde que se habilita AutoSSL en la cuenta, hasta que puedas ver tus webs por SSL, pueden pasar hasta 20 minutos mientras se realiza todo el proceso de validación e instalación de los certificados.

No debes por el momento activar la autoconfiguración de SSL para WordPress.

Vete a tu Panel de Hosting > Seguridad > SSL/TLS y en Información SSL comprueba que ahora son visibles los Certificados SSL instalados.

Certificados SSL en wePanel

Si todo está ok por tu parte haces clic en el botón azul Convertir a HTTPS los WordPress seleccionados.

 Este proceso también reemplaza las urls de tu web con HTTP para que pasen a ser HTTPS, por lo que no es necesario que luego tu por tu cuenta ejecutes scripts como searchreplacedb2.php o utilices plugins como Better Search Replace para cambiar urls masivamente.

Concluido el trámite obtendrás un registro (log) en pantalla de los Resultados del cambio a HTTPS en los WordPress seleccionados aplicados en la instalación de WordPress en la que quieres habilitar SSL (https).

 

Log

Haz clic en la imagen para ampliarla  

 

Y un aviso que no debes pasar por alto:

Recuerda vaciar la caché de las instalaciones de WordPress de las que hayas solicitado el cambio a HTTPS, ya que hasta que no vacíes la cache la web seguirá apuntando a HTTP.

Puedes comprobar que certificados SSL tienes instalados y para que dominios, urls temporales (también es válido) desde tu cPanel, Seguridad, SSL/TLS.

Certificado SSL instalado correctamente

   Configurar HTTPs en WordPress

 

Si ya tienes un Certificado SSL instalado y por alguna razón no lo has aplicado a tu sitio web, te explico el proceso para activarlo en una instalación de WordPress.

  1. Accede a tu sitio WordPress como administrador
  2. Vete a Ajustes, Generales
  3. En el campo Dirección de WordPress (URL): cambia http:// por https://
  4. En el campo Dirección del sitio (URL): cambia http:// por https://
Ajustes generales

Haz clic en la imagen para ampliarla  

 

A partir de este cambio, si tu Certificado está correctamente instalado, el sitio WordPress trabajará a través de SSL.

También puedes realizar el cambio modificando el archivo wp-config.php de tu instalación añadiendo los defines:

define('FORCE_SSL_LOGIN', true); define('FORCE_SSL_ADMIN', true);
defines wp-config.php

Haz clic en la imagen para ampliarla  

 

Nota Haz una copia de seguridad del citado archivo antes de modificarlo.

Por último podrías realizar una redirección de http:// a https:// forzando todas las páginas de tu dominio a cargar usando dicho protocolo seguro desde .htaccess colocando el siguiente código:

RewriteEngine On
RewriteCond %{ENV:HTTPS} !on [NC]
RewriteCond %{QUERY_STRING} !wc-api [NC]
RewriteCond %{HTTP_HOST} ^dominio.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.dominio.com
RewriteRule ^(.*)$ https://dominio.com/$1 [R=301,L,NE]
redirección .htaccess

Haz clic en la imagen para ampliarla  

 

Nota Debes sustituir dominio.com por el nombre real de tu dominio.

Ten en cuenta que desde principios de 2017 Google ha optado por premiar y priorizar el posicionamiento orgánico de los sitios web que utilicen SSL, obviamente sin dejar de lado los contenidos.

Tampoco olvides realizar una redirección 301 de todas las páginas HTTP hacia sus versiones HTTPS para evitar que tu posicionamiento se vea afectado y desde tus Herramientas para Desarrolladores de Google realizar el cambio de HTTP a HTTPS teniendo en cuenta que antes debes tener ambas versiones dadas de alta en tu cuenta de Google Search Console.

¿Necesitas redireccionar el tráfico de HTTP a HTTPS o a la inversa en el archivo .htaccess y no sabes cómo? …sigue leyendo.

  Aplica redirecciones en .htaccess

 

Cuando instalas un Certificado SSL debes tener en cuenta que una de las configuraciones importantes a realizar es la redirección de los dominios sin SSL a esos mismos dominios pero con SSL de forma que todo el tráfico sea reconducido hacia la URI correcta, pero bajo HTTPS.

Esto implica añadir una serie de códigos en el archivo .htaccess de la carpeta donde se encuentre la web que quieras dejar funcionando bajo HTTPS.

Lectura recomendada:
.htaccess en cPanel ¿dónde está el archivo?


htaccess WordPress

 

Los códigos de redirecciones globales, en este caso aquellos que van a enviar el tráfico de HTTP hacia HTTPS deben situarse al principio del archivo .htaccess para que sean interpretados en primer lugar.

Te planteo 2 casos de redirección 301 habituales:

  • Redireccionar de HTTP a HTTPS
  • Redireccionar de HTTPS a HTTP

Este último es útil en casos en los que por alguna razón has habilitado SSL en un sitio web, se han producido problemas o errores por una incompleta o incorrecta activación de SSL y necesitas dejar la web temporalmente funcionando de nuevo con HTTP (no SSL) mientras resuelves el incidente.

  Redirecciona de HTTP a HTTPS WordPress

 

Cabe decir que es necesario disponer de un Certificado SSL instalado en el Hosting para poder hacer uso de este protocolo más seguro.

# Enviar trafico HTTP a HTTPS
RewriteEngine On
RewriteCond %{ENV:HTTPS} !on [NC]
RewriteCond %{HTTP_HOST} ^tudominio.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.tudominio.com$
RewriteRule ^(.*)$ https://tudominio.com/$1 [R=301,L,NE]

Habrá casos en los que quieras añadir excepciones en el forzado de la redirección de HTTP a HTTPS (por ejemplo, la página de notificación de Redsys).

Puedes hacerlo añadiendo una línea de código adicional. Si por ejemplo, quieres añadir una excepción para la url https://tudominio.com/?wc-api=WC_redsys tendrás que dejar el código anterior de la siguiente forma:

# Enviar trafico HTTP a HTTPS
RewriteEngine On
RewriteCond %{ENV:HTTPS} !on [NC]
RewriteCond %{QUERY_STRING} !wc-api [NC]
RewriteCond %{HTTP_HOST} ^tudominio.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.tudominio.com$
RewriteRule ^(.*)$ https://tudominio.com/$1 [R=301,L,NE]

Otro ejemplo, si no quieres forzar el uso del HTTPS para la url https://tudominio.com/blog/entrada1.html tendrás que poner un código como el siguiente:

# Enviar trafico HTTP a HTTPS
RewriteEngine On
RewriteCond %{ENV:HTTPS} !on [NC]
RewriteCond %{REQUEST_URI} !/blog/entrada1.html$ [NC]
RewriteCond %{HTTP_HOST} ^tudominio.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.tudominio.com$
RewriteRule ^(.*)$ https://tudominio.com/$1 [R=301,L,NE]

  Redirecciona de HTTPS a HTTP WordPress

 

Puede darse el caso que aún teniendo un Certificado SSL instalado (Comodo, Let’s Encrypt, etc) quieras forzar el tráfico encriptado SSL para que se sirva con HTTP por diversas razones (pruebas con plugins conflictivos, configuración de una pasarela pago que no trabaja bien por HTPPS, etc), en cuyo caso códigos como el siguiente te permitirán pasar de HTTPS a HTTP sin desinstalar el Certificado SSL de tu Hosting.

# Enviar trafico HTTPS a HTTP
RewriteCond %{ENV:HTTPS} on [NC]
RewriteCond %{HTTP_HOST} ^tudominio.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.tudominio.com$
RewriteRule ^(.*)$ http://tudominio.com/$1 [R=301,L,NE]
Estos códigos deben colocarse por encima de cualquier otro código de redireccionamiento, al principio del archivo .htaccess.

 Debes sustituir tudominio.com por el nombre real de tu dominio.

   Comprobar HTTPs en WordPress

 

Desde tu Panel de Hosting puedes ver el estado de los Certificados SSL instalados en base a dominios y subdominios, incluso urls temporales en el caso del alojamiento web de Webempresa, asociados a una cuenta de Hosting que estén añadidos en el Panel de Hosting.

Accede a tu Panel de Hosting y ve al apartado Seguridad, SSL/TLS.

Opción SSL/TLS en wePanel

Accede a la opción Información SSL y escribe el nombre de un dominio/subdominio o mira el listado que se muestra debajo de la caja de búsqueda.

En la columna Certificado podrás ver que dominios/subdominios tienen un Certificado SSL instalado y activo y si está correctamente instalado o no.

Dominios con SSL

  Plugin para activar HTTPs en WordPress

 

Existen plugins como Really Simple SSL para gestionar SSL en WordPress, pero en casos como este, en los que se muestra que es más viable realizar la implementación desde el dashboard, por medio de .htaccess o en el archivos wp-config.php, cargar la instalación con más plugins es innecesario.

Plugin Really Simple SSL

Haz clic en la imagen para acceder al plugin en WordPress.org

Really Simple SSL es una solución “todo en uno” para el uso de SSL en sitios WordPress.

Una vez instalas y activas el plugin, este verifica que exista un Certificado SSL para el sitio web y si detecta problemas con urls que pueden mostrar contenido mixto lo soluciona reemplazando aquellas URLs que tengas http por https en WordPress de forma que el contenido se entrega de forma segura.

  Conclusiones

 

Utilizar un Certificado SSL para que tu WordPress trabaje bajo protocolo HTTPS es muy importante, tanto que buscadores como Google priorizan el indexado de sitios con SSL en perjuicio de aquellos que trabajen todavía con HTTP.

También te puede interesar:

Instalar un Certificado SSL y configurarlo en WordPress es una tarea que no debería llevarte más de 10 minutos por lo que posponerla a tiempos mejores no hará que tu web sea más segura y tampoco que Google la mire con buenos ojos ¿a que estás esperando?

 

A ti te toca ahora determinar cual es la opción más factible para implementar SSL en tu sitio web WordPress para añadir seguridad adicional en las operaciones que implican la manipulación de datos delicados (las pasarelas de pago gestionan los datos de compras en servidores externos ajenos al tuyo) y mejorar tu karma con Google.

¿Te ha resultado útil este artículo?

Hosting Divi - Wp Fácil - Webempresa