Let’s Encrypt yra automatizuota, atvira sertifikatų institucija, siūlanti nemokamus TLS/SSL sertifikatus. Ši paslauga yra teikiama Internet Security Research Group (ISRG).
Šioje pamokoje pateiksime informaciją, kaip įdiegti Let's Encrypt SSL sertifikatą serveriuose naudojančiuose LAMP (Apache+MariaDB+PHP) arba LEMP (Nginx+MariaDB+PHP) serverio tarnybų rinkinius vienu paspaudimu naudojant certbot diegimo vedlį. Atlikus diegimą, serveris turės galiojantį sertifikatą ir peradresuos visas HTTP užklausas į HTTPS saugų protokolą.
0. Preliminarūs reikalavimai
* Virtualiai dedikuotas serveris su įdiegtu mūsų parengtu Ubuntu 20.04 operacinės sistemos šablonu.
* Įdiegtas
LAMP arba LEMP tarnybų rinkinys.
* Domeno vardas arba subdomenas nukreiptas į serverį.
1. certbot diegimas
Visų pirma turite atlikti certbot diegimą naudojant šią komandą terminale (prisijungus su root naudotoju):
Naudojant LAMP:
apt update && apt install certbot python3-certbot-apache -y
Naudojant LEMP:
apt update && apt install certbot python3-certbot-nginx -y
2. Sertifikato diegimas:
Dabar galime atlikti certbot komandą, kuri atliks sertifikato diegimą. Šią komandą sudaro:
--apache
* Naudojamas Apache web serveris.
--nginx
* Naudojamas Nginx web serveris;
--redirect
* Įjungiamas peradresavimas iš HTTP į HTTPS.
-d mano-svetaine.lt -d www.mano-svetaine.lt
Įdiegiamas SAN tipo sertifikatas. Galite naudoti iki 100 -d domenas įrašų.
-m admin@mano-svetaine.lt
El. pašto adresas naudojamas pranešimams apie sertifikatą.
--agree-tos
Sutikimas su sertifikato diegimo sąlygomis ir taisyklėmis.
Taip pat galite naudoti
certbot --help tam, kad galėtumėte matyti daugiau informacijos apie naudojamas komandas. Informaciją apie SAN sertifikatus rasite
CertFAQ puslapyje.
Pilnas komandos naudojamos LAMP (Apache) pavyzdys:
certbot --apache --redirect -d mano-svetaine.lt -d www.mano-svetaine.lt -m admin@mano-svetaine.lt --agree-tos
Diegimas LEMP (Nginx):
1. Prieš paleidžiant certbot įsitikinkite, kad server_name įrašas yra tinkamai nurodytas. Patikrinimui atsidarykite Nginx konfigūraciją su failų editoriumi:
nano /etc/nginx/conf.d/default.conf
2. Pakoreguokite failą įtraukiant savo domeną pavadinimą:
server {
server_name mano-svetaine.lt www.mano-svetaine.lt;
3. Išsaugokite ir uždarykite failą.
4. Paleiskite certbot Nginx aplinkoje:
# certbot --nginx --redirect -d mano-svetaine.lt -d www.mano-svetaine.lt -m admin@mano-svetaine.lt --agree-tos
3. Patvirtinkite automatinį atnaujinimą
Let's Encrypt sertifikatas yra išduodamas 90 dienų laikotarpiui. certbot mechanizmas atnaujina systemd laikmatį (angl. timer) ir periodinę užduotį (angl crontab) automatiniam sertifikato atnaujinimui.
1. Nustatykite laikmatį:
systemctl list-timers | grep 'certbot\|ACTIVATES'
2. Patikrinkite ar periodinės užduoties įrašas egzistuoja:
ls -l /etc/cron.d/certbot
3. Patikrinkite ar atnaujinimo procesas veikia:
Papildomą informaciją apie
certbot galite rasti oficialioje
svetainėje.