Cuando el protocolo HTTP se actualice a su versión 2, todas los sitios webs deberán tener un certificado SSL valido para que las conexiones sean seguras. Los navegadores bloquearan o mostraran explicitamente como “no seguras” las que no lo tengan, penalizando en su posicionamiento y veracidad. Para poder crear fácil y rápidamente los certificados adecuados en nuestros servidores web Apache podemos utilizar OpenSSL o LetsEncript.

La opción más facil es LetsEncript, sobretodo si no queremos perder demasiado tiempo.
Para ello, en sistemas Debian o Ubuntu 16.04 o posterior, tenemos que tener instalado CertBot, así que utilizaremos el siguiente comando:

sudo apt-get install python-letsencrypt-apache

Una vez instalado podemos empezar a crear certificados con este comando, substituyendo dominio.com por el tuyo:
letsencrypt certonly –standalone -d dominio.com -d www.dominio.com

El parámetro –standalone hace que no se realice la configuración de Apache automaticamente, ya que puede dar problemas, y en realidad es muy sencillo de hacer manualmente. A continuación de la opción -d escribiremos el dominio y subdominios.

Ahora iremos al archivo de configuración del sitio en Apache y buscaremos la etiqueta <virtualhost *:80> y cambiaremos el puerto 80 por el 443.

Si tienes configurado correctamente Apache, tendrás un archivo por cada dominio dentro de /etc/apache2/sites-available.

Pues simplemente añadiremos estas lineas, modificando la ruta del certificado por la que te ha generado tu LetsEncript.

SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/midominio.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/midominio.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/midominio.com/chain.pem

Añadiremos la redirección del puerto 80 a 443 (HTTPS/ SSL)


# DOMAIN: midominio.com
# PORT FORWARD FROM 80 TO: 443
<virtualhost *:80>
ServerNamemidominio.com
ServerAlias www.midominio.com
ServerAdmin info@midominio.com
RewriteEngine on
ReWriteCond %{SERVER_PORT} !^443$
RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [NC,R,L]
</virtualhost>
# END DOMAIN: midominio.com

Una vez modificado el fichero y guardado, reiniciaremos el servicio de Apache, y al llamar a tu dominio, ya deberia cargar automaticamente en https.

 sudo service apache2 restart

Ahora debería aparecer en el navegador el candado y “Es seguro” como en la siguiente imagen:

Si no aparece, es posible que tu pagina web contenga enlaces o imágenes apuntando a tu mismo sitio, pero en http y no https. Revisa los src de las imágenes y debería solucionarse.

¿Te ha parecido útil? ¡Compártelo por favor!

 

 

One Reply to “SSL con LetsEncript”

Deja un comentario

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