Buscar

Seguridad web

Certificado SSL gratis en WordPress con Let’s Encrypt

certificado1

El certificado SSL sin coste de Let’s Encrypt posibilita servir WordPress mediante HTTPS sin ningún desembolso extra. Su creación es automática siempre que el dominio esté vinculado al plan de hosting, así que la labor real se centra en la web: establecer la redirección de HTTP a HTTPS, modificar wp-config.php y reemplazar las URLs antiguas en la base de datos con Better Search Replace.

Hoy en día, resguardar la información que circula entre los usuarios y tu sitio web resulta esencial, por lo que en este artículo te detallaremos qué hace falta para configurar HTTPS en tu sitio web de WordPress y los pasos que debes seguir para que la aplicación funcione únicamente con este protocolo.

Para poder configurar cualquier sitio web con HTTPS, tan solo harían falta 2 elementos:

  • Disponer de un certificado SSL activo en el dominio.
  • Efectuar los ajustes pertinentes en la aplicación para que opere de forma adecuada con el protocolo HTTPS.

El único requisito indispensable para que se genere el certificado SSL es que el dominio añadido al plan de hosting esté apuntando de manera correcta hacia dicho producto. En cuanto se cumpla esta condición, no haría falta que lleves a cabo ninguna tarea adicional por tu parte, ya que el certificado Let`s Encrypt se generará de forma automática.

Si dispones de un plan de hosting con cPanel contratado con nosotros, puedes comprobar si el certificado se ha generado desde la sección «Seguridad» > Estado SSL/TLS», donde podrás ver algo similar a esto:

generar certificado SSL desde cPanel

Asimismo, también puedes comprobar si el certificado está instalado correctamente (y cierta información adicional) desde el propio navegador, simplemente entrando en tu web y pulsando sobre el icono del candado que aparece a la izquierda del dominio:

verificar si el certificado SSL está correctamente instalado

Una vez hayamos verificado que el certificado está instalado correctamente, ya podríamos efectuar los cambios necesarios para que nuestro sitio web opere con HTTPS, algo que tendremos que llevar a cabo en la propia aplicación.

Cambiar WordPress de HTTP a HTTPS

Como ya sabrás, en Raiola Networks estamos especializados en WordPress, por lo que nos centraremos en llevar a cabo el proceso en este CMS en concreto.

Resulta muy aconsejable que hagas una copia de seguridad del sitio web antes de iniciar el proceso, para poder restaurarla si surge algún problema.

Lo primero que debemos hacer es establecer una redirección desde HTTP a HTTPS, de este modo, impedimos que se pueda acceder a la web a través del protocolo inseguro.

Hay varias maneras de configurar esta redirección, nosotros solemos hacerlo a través del fichero «.htaccess«, aunque podrías emplear un plugin que cumpla la misma función si prefieres no introducir código directamente en el archivo.

En este caso, el código que habría que configurar sería el siguiente:

Acuérdate de modificar «dominio.tld» por el dominio que estés configurando (incluyendo las WWW en caso de que las utilice), y nuestra recomendación es que introduzcas el código en la parte superior del fichero, en las primeras líneas, de esta forma te aseguras de que no interfieran el resto de directivas.

En caso de que quieras efectuar la redirección mediante un plugin, podrías usar «https-redirection», el cual puedes descargar de forma gratuita desde el repositorio de WordPress: https://wordpress.org/plugins/https-redirection/

https-redirection plugin WordPress de redirección

Una vez instalado y habilitado el plugin, podríamos entrar en sus ajustes desde la sección «Ajustes >> HTTPS Redirection», donde se nos mostrarán varias casillas que pueden marcarse para habilitar las funciones del plugin.

https-redirection ajustes plugin WordPress

Dicho plugin es muy sencillo y únicamente nos permite activar y modificar 3 puntos:

  • Enable automatic redirection to the «HTTPS»: configura la redirección en el .htaccess de la instalación de forma automática.
  • Apply HTTPS redirection on: tendremos que dejar marcada la opción de «The whole domain» para que la redirección se configure en todo el dominio.
  • Force resources to use HTTPS URL: intenta forzar la carga de HTTPS en todos los recursos y elementos de la instalación (imágenes, archivos css, js, etc.)

En este caso, habría que marcar todas las casillas, y la configuración nos debería quedar como la de la siguiente captura:

Opciones de configuración para redirecciçon

Tras configurar la redirección mediante alguno de estos métodos, podríamos hacer una modificación en el fichero «wp-config.php» que haga que la URL de nuestra instalación de WordPress cargue mediante HTTPS, para ello, tendríamos que añadir las siguientes líneas después de la etiqueta «<?php»:

define(‘WP_HOME’,’https://midominio.com’); define(‘WP_SITEURL’,’https://midominio.com’);

Como en el caso anterior, tendremos que sustituir «midominio.com» por nuestro dominio, y en caso de que utilice WWW, habría que añadirlo de igual forma.

Reemplazar las rutas en la base de datos con Better Search Replace

Una vez configurada la redirección y añadidas las líneas indicadas, nuestra web ya debería de redirigir a HTTPS de forma correcta, no obstante, lo más probable es que sigan existiendo ciertos recursos en la base de datos que intenten cargarse mediante el protocolo HTTP y que generen algunos avisos al visualizar la web en el navegador, por lo que para solucionar esto, habría que reemplazar dichas referencias en la base de datos de la web, de manera que puedan cargarse TODOS LOS RECURSOS con HTTPS.

Para llevar esto a cabo, podemos emplear el plugin de Better Search Replace, el cual podemos descargar gratuitamente desde el repositorio de WordPress: https://wordpress.org/plugins/better-search-replace/

Cuando instalemos y activemos el plugin, podremos ver una nueva sección en el administrador de WordPress desde «Herramientas» > Better Search Replace», en la que podremos ver algo como esto:

Herramientas del plugin para WordPress Better Search Replace

Como puedes observar, hay varias casillas y campos que habría que completar para efectuar el cambio:

  • Buscar: aquí tendríamos que introducir el dominio con HTTP (es la cadena de texto que se buscará en la base de datos).
  • Sustituir: tendremos que poner el dominio con HTTPS (es la cadena de texto que reemplazará a la que hemos buscado).
  • Seleccionar tablas: tendríamos que marcarlas todas.
  • Sin tener en cuenta mayúsculas/minúsculas: esto lo dejaremos desmarcado, tal y como está por defecto.
  • Reemplaza los GUID: La dejamos también desmarcada.
  • Ejecutar como un simulacro: Te permite ejecutar el proceso sin realizar los cambios pertinentes en la base de datos, lo que puede ser una buena opción si queremos verificar antes de nada la cantidad de modificaciones que se van a realizar.

Cuando rellenemos todos los campos, pulsaremos en «Ejecutar búsqueda/sustitución» para iniciar el proceso (en nuestro ejemplo, se dejaría habilitada la opción de «Ejecutar como un simulacro»).

Configurar plugin para WordPress Better Search Replace

Cuando finalice el proceso, se mostrará un texto en la parte superior que nos indicará los cambios que se realizarían en la base de datos si ejecutamos ese reemplazo sin utilizar la opción de «Ejecutar como un simulacro»:

Cambios en la base de datos con Better Search Replace

Si pulsamos en la opción de «Haz click aquí» podremos ver la cantidad de cambios que se han encontrado en cada una de las tablas de la base de datos.

Tablas en la base de datos con Better Search Replace

Por último, en caso de que veamos que todos los campos están correctamente configurados, podemos realizar ya el cambio de forma permanente desactivando la casilla de «Ejecutar como un simulacro» y clicando de nuevo en «Ejecutar búsqueda/sustitución» y nos tendría que aparecer en pantalla un resultado parecido a este.

Sustitución en tablas en la base de datos con Better Search Replace

En caso de que hayamos realizado todos los pasos de la guía correctamente, todos los recursos y elementos de nuestra instalación ya deberían de cargar exclusivamente con HTTPS.

Si queremos comprobar qué recursos y elementos cargan con HTTP en nuestra instalación, podríamos hacer una búsqueda en la propia base de datos de la misma, haciendo referencia a la URL de nuestra web con el protocolo HTTP.

Si tienes un hosting contratado con Raiola Networks, puedes entrar al cPanel y dirigirte a la sección «Bases de datos > phpMyAdmin«, en la cual tendrías que escoger la base de datos de la instalación (puedes verificarla en su fichero «wp-config.php» correspondiente) y hacer la búsqueda desde la sección «Buscar».

phpmyAdmin en cPanel

En caso de que existan coincidencias, habría que reemplazarlas, tal y como hicimos anteriormente mediante el plugin «Better Search Replace». A continuación, os mostramos un ejemplo de una web a la que habría que realizarle dichas modificaciones.

ejemplo de una web con coincidencias para sustituir para HTTPS

Otra opción que podríamos utilizar para verificar qué recursos nos están cargando con HTTP sería la consola de desarrolladores del propio navegador que utilicemos.

En el caso de Google Chrome, se puede abrir fácilmente usando la combinación de teclas “CRTL + MAYUS + I” o “FIN + F12”.

Si nuestra web está configurada para funcionar con HTTPS, y todavía tenemos algún recurso que intenta cargar con HTTP, podemos comprobar qué elementos en específico son los que cargan con el protocolo inseguro desde la pestaña de “Console”.

comprobar que elementos en específico son los que cargan con el protocolo inseguro desde la pestaña de “Console”

Como puedes observar en la captura anterior, la web está preparada para funcionar exclusivamente con HTPPS, no obstante, las imágenes no están configuradas para funcionar con este protocolo, por lo que no llegan a mostrarse correctamente.

Si hemos completado correctamente TODOS los pasos descritos en este artículo, no tendría que cargarse ningún recurso mediante HTTP; sin embargo, si ocurre, puede que algún elemento instalado en tu sitio web esté provocando esa solicitud, por lo que sería necesario localizarlo y cambiar su configuración directamente desde el administrador para tratar de resolverlo.

Preguntas Frecuentes

¿Cómo puedo obtener un certificado SSL gratis para mi WordPress con Let’s Encrypt?

La forma más sencilla es usar el certificado que muchos paneles de hosting ofrecen gratis con Let’s Encrypt. Si tu proveedor no lo incluye, puedes instalar el plugin Really Simple SSL o solicitar el certificado desde el panel de control. También puedes generarlo manualmente con Certbot si tienes acceso SSH, pero requiere conocimientos técnicos.

¿Necesito registrarme o iniciar sesión para usar Let’s Encrypt en WordPress?

No, Let’s Encrypt no requiere registro ni inicio de sesión. Es una autoridad certificadora gratuita y automatizada. Solo necesitas que tu dominio esté apuntando a tu servidor y que puedas demostrar el control sobre él, generalmente mediante un plugin o la herramienta de tu hosting. El proceso es automático y no necesitas crear cuenta alguna.

¿Dónde puedo descargar el certificado SSL de Let’s Encrypt para WordPress?

No se descarga un archivo desde Let’s Encrypt directamente. El certificado se genera en tu servidor mediante un cliente ACME como Certbot o a través del panel de tu hosting. Si usas un plugin como Really Simple SSL, este se encarga de solicitarlo y renovarlo automáticamente. No busques un archivo de descarga en la web de Let’s Encrypt.

¿Let’s Encrypt es realmente gratis y seguro para mi WordPress?

Sí, Let’s Encrypt es completamente gratis y seguro. Emite certificados SSL/TLS reconocidos por todos los navegadores. La seguridad es la misma que la de un certificado de pago, con cifrado de 256 bits. Eso sí, los certificados caducan cada 90 días, pero se renuevan automáticamente si usas las herramientas adecuadas.

¿Te ha resultado útil? Valora este artículo

Sé el primero en valorar este artículo.

Deja un comentario

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