En la actualidad, cualquier sitio web debería soportar HTTPS para brindar seguridad a los visitantes del sitio. Para ello, es necesario tener un certificado SSL con su respectiva llave privada (usada por el servidor) y llave pública (usada por el navegador).
Que es Let’s encrypt
Es una CA (autoridad de certificación) gratuita y abierta que nos permite crear certificados para nuestros sitios web. La cual es mantenida por el Internet Security Research Group (ISRG).
Para empezar, se pueden seguir las instrucciones del siguiente enlace: Documentación oficial
Hacerlo de forma manual
En el siguiente ejemplo usaremos Ubuntu
Primero debemos instalar cerbot
sudo apt install certbot
Para crear un certificado ejecutamos cerbot
con el parametro --manual
, especificando el dominio o dominios que desea agregar usando el parametro -d
. En el caso de que sea un wildcard basta con colocar *.
antes del dominio
sudo certbot certonly --manual -d tudominio.com -d *.tudominio.com
En el proceso se debe crear un registro DNS de tipo TXT
Please deploy a DNS TXT record under the name:
_acme-challenge.tudominio.com.
with the following value:
6_9hO9GG6LYBy1EAKG4PhJg7hd5M6Cr8Awwl8BgB_K4
También se debe crear un archivo en /.well-known/acme-challenge
como lo indique la terminal
Create a file containing just this data:
AkrJCpMQXnyJj-ijghDUcegozeNyMbHsz3huwBHnA80.w3b_w3dVBObNakj6Vx8WuThwriqdNyBVbVG6q6P_Hqs
And make it available on your web server at this URL:
http://tudominio.com/.well-known/acme-challenge/AkrJCpMQXnyJj-ijghDUcegozeNyMbHsz3huwBHnA80
Luego de realizar los pasos anteriores quedara el certificado y la llave privada en el folder
/etc/letsencrypt/live/tudominio.com-0001/
Para más información