====== HTTPS amb Let's Encrypt ======
===== Què és? =====
**Let's Encrypt és una autoritat certificadora gratuïta**.
És a dir, és una organització internacional que permet tenir certificats HTTPS de forma gratuïta.
===== A nominalia, ... =====
Si teniu el pack de dotació.cat i esteu a nominalia podeu activar el HTTPS amb Let's Encrypt.
El primer pas és activar la modalitat de MICROHOSTING ([[eines:dotacio.cat#us_o_com_pujar-hi_fitxers_nivell_basic|microhosting]])
Un cop fet, cal accedir al panell de microhosting (i no al del domini) i des d'allà trobareu les opcions de configuració de HTTPS
===== Al labs, idealment seria... =====
Des del panell de Hestia anem al nostre domini i activem les opcions
Enable SSL for this domain ---
Use Let's Encrypt to obtain SSL certificate
i això ja ho hauria de fer.
Ara bé, a vegades, aquest procés no funciona i s'ha de fer manualment
===== Let's Encrypt manual =====
Let's Encrypt ofereix diverses formes de fer el "challenge" d'autenticació, és a dir, de comprovar que realment ets l'amo del domini pel qual demanes un certificat.
Si el challenge de Hestia no ha funcionat, haurem de fer-ho des de la línia d'ordres, necessitarem:
Ordre a executar:
'' certbot certonly %%--%%manual %%--%%config-dir=. %%--%%work-dir=. %%--%%logs-dir=. -d test1.daw.inspedralbes.cat ''
Eines:
* terminal 1 (per llençar el "challenge")
* terminal 2 (per crear els fitxers necessaris per verificar el challenge)
* panell web de hestia (per "deixar" els certificats)
Com a domini d'exemple agafarem
test1.daw.inspedralbes.cat
==== Obtenció dels certificats ====
Tots els noms de fitxers i rutes s'han d'adaptar al vostre cas, **no feu cut&paste**
Des del terminal 1 farem:
Terminal 1:
* Situar-se a la carpeta privada del domini
* Llençar el challenge
* Copiar els certificats generats al panell de hestia
cd ~/web/test1.daw.inspedralbes.cat/private
certbot certonly --manual --config-dir=. --work-dir=. --logs-dir=. -d test1.daw.inspedralbes.cat
Canvieu //test1.daw.inspedralbes.cat// pel vostre domini
Això us farà una sèrie de preguntes i us dirà que creeu un fitxer. El missatge serà
''
Create a file containing just this data:\\
**OcgjBmvk32sKeV7cCQQJTSFgUcEsag8DwKQuzTgtcyA.mRmh6nhdEMH2YCOsr-iRG6vlFf4oB1DPViahFSRzJJs**
And make it available on your web server at this URL:\\
http://test1.daw.inspedralbes.cat/.well-known/acme-challenge/OcgjBmvk32sKeV7cCQQJTSFgUcEsag8DwKQuzTgtcyZ
\\
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -\\
Press Enter to Continue
''
No apreteu cap tecla fins que hagueu acabat la segona part
Per tant, ara des del **terminal 2** s'han de seguir les instruccions que us ha donat el terminal 1 (crear un fitxer amb un path i un contingut concrets)
Terminal 2:
* Crear la carpeta ''.well-known/acme-challenge/'' a la part pública de la web, és a dir, dins de ''public_html''
* **ATENCIÓ, en els següents passos heu de canviar-ho pels valors que us ha donat en el terminal 1**
* Crear el fitxer''OcgjBmvk32sKeV7cCQQJTSFgUcEsag8DwKQuzTgtcyZ''
* Posar el contingut en el fitxer: ''OcgjBmvk32sKeV7cCQQJTSFgUcEsag8DwKQuzTgtcyA.mRmh6nhdEMH2YCOsr-iRG6vlFf4oB1DPViahFSRzJJs''
Terminal2:
cd ~/web/test1.daw.inspedralbes.cat/public_html
mkdir -p .well-known/acme-challenge
nano OcgjBmvk32sKeV7cCQQJTSFgUcEsag8DwKQuzTgtcyZ
i copiar-hi el contingut
també es podria fer
echo OcgjBmvk32sKeV7cCQQJTSFgUcEsag8DwKQuzTgtcyA.mRmh6nhdEMH2YCOsr-iRG6vlFf4oB1DPViahFSRzJJs > OcgjBmvk32sKeV7cCQQJTSFgUcEsag8DwKQuzTgtcyZ
Un cop creat el fitxer en el lloc corresponent, podem comprovar-hi manualment (obrint el navegador i accedint a la URL que ens ha indicat
http://test1.daw.inspedralbes.cat/.well-known/acme-challenge/OcgjBmvk32sKeV7cCQQJTSFgUcEsag8DwKQuzTgtcyZ
Si tot és correcte, en el terminal 1 apretem ENTER i ens dirà:
''
Successfully received certificate.\\
Certificate is saved at: /home/ebota/web/test1.daw.inspedralbes.cat/private/live/test1.daw.inspedralbes.cat/fullchain.pem\\
Key is saved at: /home/ebota/web/test1.daw.inspedralbes.cat/private/live/test1.daw.inspedralbes.cat/privkey.pem\\
This certificate expires on 2025-03-17.\\
These files will be updated when the certificate renews.\\
NEXT STEPS:\\
- This certificate will not be renewed automatically. Autorenewal of --manual certificates requires the use of an authentication hook script (--manual-auth-hook) but one was not provided. To renew this certificate, repeat this same certbot command before the certificate's expiry date.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
''
==== Copia dels certificats ====
Un cop superat el challenge tindrem dins de la carpeta
./live/test1.daw.inspedralbes.cat/
hi ha diversos fitxers (hi ha un fitxer README que explica què és cadascun)
Haurem de copiar-los al panell de hestia:
S'ha de copiar TOT, incloses les capçaleres com \\''-----BEGIN PRIVATE KEY-----''
Els fitxers s'han de copiar de la següent forma:
* SSL Certificate <- cert.pem
* SSL Private Key <- privkey.pem
* SSL Certificate Authority / Intermediate <- chain.pem
Cliquem a **Save** i si tot ha anat bé i els certificats estan bé, no donarà cap error, i ens mostrarà els detalls del certificat.