Todos los sitios necesitan un certificado SSL para acceder mediante HTTPS o Google les va a sancionar. Si bien desde años el mismo Google dijo que preferiría a los sitios con https sobre los que no tienen SSL, hoy en día es una necesidad por lo que las compañías de hosting se han visto en la necesidad de aliarse con compañías como Lets Encrypt para obtener un certificado SSL de manera gratuita y no pagar por él como era antes.

¿Qué es Lets Encrypt?

Lets Encrypt es un proyecto que comenzó con respaldo de la fundación Linux el cual sirve para emitir certificados auténticos y así cualquier sitio web pueda tener un SSL original sin necesidad de pagar una suma anual por la renta y renovación del mismo. La iniciativa Lets Encrypt nace después de que Google, Facebook, WordPress (el 60% de internet) y otras grandes empresas de internet comenzaron a pasar todos sus servicios mediante HTTPS favoreciendo a quien haga lo mismo pues al tener un certificado de seguridad estarás protegiendo a los visitantes de tu web.

¿Qué es un certificado de seguridad SSL?

Un certificado de seguridad valida el dominio, la organización y encripta la información transmitida entre el usuario y servidor. De este modo el hecho de que una entidad certificadora acredite un dominio y la organización nos permiten saber que el sitio web es de una empresa que existe como tal (y no de una página fake o de fraude) y adicionalmente por estar encriptada la información hará mas dificil que pueda ser extraída por algún usuario malintencionado, por ejemplo para evitar el robo de contraseñas o datos de tarjeta de crédito.

Dicho lo anterior ahora queda claro que tenemos que cambiar nuestros sitios web a utilizar SSL pero claro esto puede ser un dolo de cabeza si no lo realizas de la manera correcta ya que inclusive puede desaparecerte del índice de Google y otros buscadores con lo que perderías tu tráfico actual.

Para instalar un SSL legal ante los ojos de Google e Internet tienes la misma opción de siempre que es comprar un certificado e instalarlo en el servidor, sin embargo gracias a que ahora será obligatorio, ahora podemos encontrar en el panel de control de nuestro hosting (llámese CPanel, Plesk Parallels, etc) una opción para instalar un certificado SSL gratis para nuestro sitio web, y en caso de tener varios dominios podremos instalar varios certificados gracias a Lets Encrypt, a continuación te mostraré como hacerlo y echarlo andar.

¿Como instalar un certificado Lets Encrytp desde CPanel?

Lo primero que tienes que hacer es revisar si tu panel de control del hosting tiene habilitada la opción de Lets Encrypt. Si no lo tiene mas abajo te explico como instalar un SSL con cloudflare. Si tu cPanel lo tiene podrás verlo rápidamente en el apartado de SECURITY (seguridad) con el icono de un candado que dice “Lets Encrypt for cPanel“. Le damos clic en ese botón y vamos al apartado de issue a new certificate donde podremos encontrar los dominios alojados en el plan y para los cuales se puede pedir el certificado, seleccionamos el dominio del sitio y damos clic en issue. En la siguiente ventana veremos Installing certificate to: tusitioweb.com y te da la opción de instalar el certificado en los servidores de correo para una encriptación completa. Al terminar el proceso ya tendremos instalado un SSL en nuestro sitio web y podremos acceder a tu sitio web mediante https://tusitioweb.

Sin embargo tendremos que marcar una regla nueva a nivel servidor para redireccionar todo el tráfico del sitio mediante una redirección 301 de http a https lo cual haremos con el siguiente código1 para instalaciones con APACHE o código2 para instalaciones con Nginx. (si no sabes la diferencia entre Apache y Nginx y no quieres leer mucho al respecto solo entra por FTP a tu sitio web y localiza si tiene un archivo .htacces, en caso de que lo tengas lo descargas y lo abres con el bloc de notas y en la parte superior colocarás el código de redirección 301.)

#codigo1 para apache
RewriteEngine On
RewriteCond %{ENV:HTTPS} !on [NC]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://tu_dominio.com/$1 [R=301,L,NE]

#codigo2 para nginx
server {
listen 80;
server_name domain.com www.domain.com;
return 301 https://domain.com$request_uri;
}

Listo, después de de esto cada que entres a tu sitio web estarás redirigiendo a https aunque lo hagas con http y como está marcado un código 301 de redirección pasará todo el potencial (linkjuice) de tu sitio web original a la nueva dirección.

¿Cómo configurar SSL en WordPress?

Si tu sitio web está hecho mediante wordpress entonces tendrás que hacer un par de cambios mas antes de pegar brincos de felicidad tras haber instalado el SSL y colocado un 301 a nivel servidor pues aun tendrás que configurar el wordpress. Muy posiblemente después de hacer el 301 ni siquiera puedas ver tu sitio web porque estará en un bucle indefinido sin resolver las DNS así que vamos a lo siguiente. 1) entrar por ftp y localizar el archivo wp-config.php que es el archivo de las configuraciones de wordpress, 2) jústamente un salto de línea despues de <?php  vamos a colocar los siguientes códigos, con lo cual vamos a forzar la integración de SSL para el iniciar sesión y para el panel de administración, adicionalmente vamos a definir desde el wp-config cual es la url de inicio wp_home y cual es la url del sitio wp_siteurl donde deberás cambiar tusitioweb por Tu sitio web claro está (con www o sin www según lo tengas configurado).  Guardamos los cambios y subimos el archivo wp-config actualizado.

define('FORCE_SSL_LOGIN', true);
define('FORCE_SSL_ADMIN', true);
define('WP_HOME', 'https://TUSITIOWEB/');
define('WP_SITEURL', 'https://TUSITIOWEB/');

Instalé certificado SSL pero no sale candado Verde

Lo mas usual si ya hiciste todos los pasos bien es que falte actualizar algunas urls que están apuntando al recursos del sitio mediante http, para lo cual puedes ir a plugins e instalar Velvet Blues Update URLs, lo activas y vas a Herramientas de wordpress , ahí encontrarás el campo OLD  URL donde colocarás tu sitio web sin la S de seguridad y en NEW URL colocarás https, posteriormente marcarás en qué lugares quieres que se cambie http por https, si no estás seguro de en qué secciones marcar que se cambie simplemente marca todas las opciones (menos la de ALL GUIDs) para que cambie en todo lugar http por https y listo con eso tendrás el candado verde de seguridad.

configurar-velvet-blues-update-urls
configurar-velvet-blues-update-urls

Esta opción de usar Velvet Blues tocará la base de datos y el cambio se hará en un abrir y cerrar de ojos así que si no tienes configurados backups de tu base de datos sería bueno que hagas uno :).  Una vez actualizado todo a https simplemente desinstala el velvet blues que ya no lo volverás a usar.

¿Cómo instalar un SSL de Cloudflare?

Supongamos que tu proveedor de hosting aun no tiene Lets Encrypt gratis en su repertorio, pero tu si tienes tu sitio tras cloudflare, entonces puedes instalar un certificado gratuito de Cloudflare para estar en orden con las políticas de Google.  Para esto lo que tenemos que hacer es entrar en Cloudflare (y dar de alta tu sitio en caso de que no lo tengas dado de alta) y seleccionar el sitio, luego dar clic en la opción de Crypto donde veremos el apartado SSL que por default estará en OFF, ahí tenemos varias opciones que son Flexible, Full y Full (strict). Si no tienes un ssl instalado en tu servidor tendrás que usar la opción flexible la cual colocará un SSL gratuito por parte de cloudflare aunque no lo tengas en tu servidor. Después en el último apartado de cloudflare buscamos  Automatic HTTPS Rewrite y le marcamos ON a la opción para que haga en automático https cualquier petición.

Adicionalmente si quieres super asegurarte que todo el tráfico de cloudflare pase por el https puedes ir a page rules (en el menú superior de cloudflare) y establecer una regla de tipo  if the url matches http://*tusitioweb/* then the settings are: Always use HTTPS. con lo cual cualquier petición sobre http se escribirá en https al llegar al servidor.

Cabe destacar que tras hacer cambios en cloudflare tienes que ir a purgar el cache y también purgar el cache de tu sitio wordpress en caso de que tengas instalado algún plugin para ello. Así de fácil y rápido tendrás tu sitio con HTTPS sin instalar plugins raros que estén ni nada extra pues todo lo hemos hecho manual como debe de ser, mas adelante les explicaré qué hacer después de instalar un SSL y tener tu sitio con HTTPS para que mejoren posiciones en Google.

Con esto ya estará tu sitio bajo https que tendrás las ventajas de tener un sitio para transacciones seguras, tendrás mas preferencia por parte de Google, no te tienes que preocupar por renovar el certificado pues se hace la renovación en automático y podrás aprovechas las ventajas de HTTP/2 para tener un sitio mucho mas veloz con las computadoras y dispositivos de hoy en día.

Comenta en el recuadro