Let's Encrypt ingyenes tanúsítvány Certbot használatával

Ha készítettél egy CentOS 8 web szervert és nincs rá érvényes tanúsítványod, akkor ha https-en keresztül nyitod meg az oldaladat, akkor a böngésző figyelmeztetni fog, hogy nem biztonságos oldalt nézel meg. Ha nem akarsz tanúsítványt vásárolni, de szeretnél érvényes tanúsítványt használni, akkor ez a leírás pont neked szól.

A web szerver telepítése után általában egy önaláírt tanúsítványt használsz. Sajnos ez nem elég ahhoz, hogy ne riogassa a böngésző a látogatóidat. A Let's Encrypt megoldásával nem üzleti felhasználásra ingyenesen készíthetsz érvényes tanúsítványt. Doksikat, leírást itt találsz az alábbi linkeken:

https://letsencrypt.org/

https://certbot.eff.org/

A Certbot program automatikusan megcsinálja és telepíti a tanúsítványokat. Hátránya, hogy 3 havonta meg kell újítani. Előnye, hogy a megújítást cron-ból meg lehet oldani.

Tehát CentOS 8 rendszeren és Apache web szerver esetén a megoldás így néz ki.

sudo su # root konzol
dnf install mod_ssl openssl # Install httpd ssl modul és openssl
dnf install python3-certbot # Install szükséges python komponens
cd /tmp # Átváltunk a /tmp-re
wget https://dl.eff.org/certbot-auto # Le kell tölteni a certbot-auto programot a tanúsítvány megújításához
mv certbot-auto /usr/local/bin/certbot-auto # Megfelelő helyre másoljuk
chown root. /usr/local/bin/certbot-auto # Átadjuk a root-nak
chmod 0755 /usr/local/bin/certbot-auto # Jogot állítunk

Ha az Apache konfig megfelelő, akkor a meglévő http konfigurációkra automatikusan elkészíti az alap http konfigot. A tanúsítványokat is elpakolja magának. Nagyon egyszerű az egész. Kivéve, ha előre elkészített Apache configod van. Előfordulhat, hogy hibaüzenettel elszáll a program. Azonban beszédesen leírja, hogy melyik konfiggal van problémája és akkor lehet reszelgetni amíg le nem fut. Az automatikus megújításhoz úgyis olyan programra van szükséged amit meg tud kajálni a certbot

certbot-auto --apache

Ha minden oké, akkor indítsuk újra a web szervert parancsot

systemctl restart httpd

A tanúsítvány megújítás tesztelése a következő paranccsal lehetséges:

certbot-auto renew --dry-run

 A tanúsítvány megújítása a következő paranccsal lehetséges:

certbot-auto renew

A cron job valahogy így néz ki. Elég hetente ellenőrizni, ugyanis nem fogja a tanúsítványt megújítani, ha még legalább 3 hétig érvénye a tanúsítvány.

1 0 * * 7 root /usr/local/bin/certbot-auto renew --post-hook "systemctl restart httpd"