Como Crear Certificados SSL Gratuitos con Let’s Encrypt

Let’s Encrypt es una sensacional proyecto que nos permite crear y administrar certificados SSL en nuestros servidores, validados por una entidad de seguridad. Esta es una gran ventaja que nos permitirá ahorrar buenos dolares en certificados SSL para nuestros servidores administrados.

**Nota ** Normalmente todos mis servidores son Centos, si usas Debian, hay plugins que te hacen la vida màs fácil, puedes checar la documentación de LetsEncrypt. De aquí en adelante los pasos son para Centos 6, en servidores dedicados, vps o propios, con acceso a root (o utilizando sudo al principio de los comandos) y hospedando multiples sitios como “virtual hosts”.

Comenzamos:

Paso 1: Instalar Let’s Encrypt

Para instalar Let’s Encrypt, simplemente lo clonamos de GitHub:

Usualmente creo un usuario git y pongo todos los repos dentro de /home/git

$ git clone https://github.com/letsencrypt/letsencrypt

Para usarlo, entramos al directorio y llamamos letsencrypt-auto:

$ cd letsencrypt

$ ./letsencrypt-auto --help

Esto instalará todas las dependencias si no las tienes instaladas (python, python lib, keyutils, openssl, gcc, etc).

**Nota** Si te encuentras con un error “virtualenv command not found“:

$ pip install virtualenv

**Sub-Nota** Si al correr el comando, te encuentras con el error: “pip command not found

Descargate pip:

$ wget https://bootstrap.pypa.io/get-pip.py

Instala pip:

$ python get-pip.py

Ahora si, instala virtualenv:

$ pip install virtualenv

y otra vez

$ ./letsencrypt-auto --help

Genial! Estamos listos.

Paso 2. Crear el certificado

Ahora vamos a hacer el certificado:

$ ./letsencrypt-auto certonly --webroot -w /var/www/mysite.com -d mysite.com -d www.mysite.com

Reemplaza /var/www/mysite.com por la ruta a tu sitio web y mysite.com y www.mysite.com por el dominio de tus sitio web.

Este paso te preguntará tu correo y te pedirá que aceptes el acuerdo de licencia.

Listo!

Los certificados están en /etc/letsencrypt/live/mysite.com (Reemplazando mysite.com por el dominio de tu sitio web).

Paso 3. Configurar el certificado SSL

Paso 3.1 Configurar el servidor http apache

Abrimos el archivo /etc/httpd/conf.d/ssl.conf

$ vim /etc/httpd/conf.d/ssl.conf

Agregamos esta línea al principio del archivo:

 NameVirtualHost *:443

Ahora, al final del archivo, agregamos un host virtual con la configuración SSL:


<VirtualHost *:443>
 ServerName mysite.com
  DocumentRoot /var/www/mysite.com
  SSLEngine on
  SSLCertificateFile /etc/letsencrypt/live/mysite.com/cert.pem
  SSLCertificateKeyFile /etc/letsencrypt/live/mysite.com/privkey.pem
  SSLCertificateChainFile /etc/letsencrypt/live/mysite.com/chain.pem
 </VirtualHost>

 

**Nota** Reemplaza mysite.com por el dominio de tu sitio web.

Por último, reiniciamos apache:

$ apachectl restart

Paso 3.2 Configurar IpTables

En caso de que no tengas abierto el puerto 443:

$ iptables -I INPUT -p tcp –dport 443 -j ACCEPT

$ service iptables save

 

Todo listo, ve a https://mysite.com y accederas de manera segura!

**Nota Importante** El certificado expira como a los tres meses, para renovarlo, simplemente vuelve a correr los comandos de letsencrypt-auto

Related Posts

Dos Excelentes Funciones de FFmpeg: Subir Volumen y Recortar Video

Cuando estamos editando videos, dos funciones comunes son modificar el volumen de algun audio y recortar el tamaño del video, para que no aparezca la barra de tareas, por ejemplo. Lo primero que uno hace es buscar algún editor de video o de audio, para realizar estas funciones, los cuales hay muchos y la mayoría […]

Read More

#AseguraTusPasswords

admin

March 31, 2017

Seguridad

No Comment

Tres sencillos pasos para asegurar tus passwords. No olvidemos esta vieja entrada: http://desarrollo.espino.info/faq/tecnica-sencilla-para-passwords-seguros.html

Read More

Leave a Reply

Your email address will not be published. Required fields are marked *