Let’s Encrypt és una autoritat de certificació (CA) que facilita l’obtenció de certificats TLS/SSL gratuïts i permet així utilitzar HTTPS en servidors web.
En aquest tutorial s’explica com instal·lar NGINX com a servidor web al sistema Ubuntu i després afegir-hi un certificat amb Let’s Encrypt. A continuació, s’explica com renovar automàticament el certificat SSL i, durant tot aquest procés, es farà servir Ubuntu 22.04 LTS amb l’usuari root, tot i que el procediment també es pot aplicar a versions posteriors d’Ubuntu.
Recorda que tens disponible la imatge preinstal·lada de LEMP (Linux, Nginx, MySQL i PHP) a Clouding; pots utilitzar-la per crear un servidor web amb NGINX sense haver de fer la instal·lació manualment.
Requisits
Per continuar amb aquest tutorial, primer cal tenir accés root al servidor VPS. També cal tenir un domini o registre DNS que apunti al servidor de Clouding. A més, el domini ha de tenir un registre de tipus A perquè el procés de creació del certificat funcioni correctament.
Si vols crear un certificat per a més d’un registre, com ara example.com i www.example.com cal tenir tots dos registres creats als servidors de noms del domini.
Instal·lació del servidor web Nginx
El primer pas és instal·lar Nginx:
# apt-get install nginxTot seguit, inicia’l i habilita’l perquè s’iniciï en arrencar el sistema:
# systemctl start nginx && systemctl enable nginxConfiguració de Nginx
Ara configura l’espai web, on tindràs la configuració del lloc web. Pots crear una còpia de la configuració per defecte:
# cp /etc/nginx/sites-available/default /etc/nginx/sites-available/example.com.confDesprés, edita el fitxer de configuració que has creat:
# nano /etc/nginx/sites-available/example.com.confPer modificar el camí del directori web al paràmetre root i afegir els noms DNS a server_name:
listen 80;
listen [::]:80;
server_name example.com www.example.com;
root /var/www/html/example.com/www;Desa els canvis i crea el directori web:
# mkdir -p /var/www/html/example.com/wwwUn cop creat, activa la configuració del lloc de NGINX:
# ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabledDesprés, comprova la configuració; ha de mostrar "syntax is ok":
# nginx -tFinalment, si la comprovació és correcta, acaba la configuració de NGINX reiniciant-lo perquè els canvis tinguin efecte:
# systemctl restart nginxInstal·lació i configuració de Let’s Encrypt amb Nginx
Ara cal configurar Nginx perquè obtingui el certificat creat per Certbot i així poder fer servir els certificats que proporciona Let’s Encrypt. Per fer-ho, tens disponible un article que explica com obtenir-lo i instal·lar-lo a NGINX:
A continuació tens el procediment resumit:
Instal·lació de Certbot per a NGINX:
Primer hauràs d’instal·lar els paquets necessaris de Certbot:
# apt update && apt install python3-certbot-nginx -yObtenció del certificat SSL i configuració automàtica:
Per obtenir el certificat i modificar automàticament la configuració de NGINX, hauràs d’executar l’ordre següent, substituint els noms DNS d’exemple i/o afegint-ne més si cal:
# certbot --nginx -d example.com -d www.example.comConfirma que la configuració automàtica s’ha completat correctament accedint al teu domini amb HTTPS des d’un navegador i comprovant que s’hi mostra un certificat vàlid. També pots utilitzar SSL Checker o un SSL Server Test per verificar el certificat de Let's Encrypt.
Renovació del certificat
Si has seguit aquest procediment, el mateix Certbot s’encarregarà de la renovació automàtica del certificat i no te n’has de preocupar (tens més informació a l’article enllaçat anteriorment).
Esperem que aquest tutorial t’hagi ajudat 🙂. Recorda que, si tens consultes sobre aquesta qüestió o qualsevol altra relacionada amb els teus servidors a Clouding, pots escriure a soporte@clouding.io Som al teu costat per a tot el que necessitis!