Ebben a cikkben megvizsgáljuk a telepítés és a konfigurálás folyamatát certbot Linux szerveren. Részletesen elmagyarázzuk hogyan szerezhet be egy Let's Encrypt SSL/TLS tanúsítványt az Ön domainjéhez. Leírjuk azt is, hogyan kell telepíteni egy webszerverre (például Nginx vagy Apache), és hogyan kell beállítani az automatikus tanúsítványmegújításokat, hogy biztosítsa a folyamatos biztonságos kapcsolatot a webes erőforrással.
certbot egy ingyenes, nyílt forráskódú eszköz, amelyet az automatikus beszerzésére és megújítására terveztek SSL/TLS tanúsítványok. Döntő szerepet játszik a szerver és a kliens közötti kapcsolat biztosításában, az adatok illetéktelen hozzáféréstől való védelmében. A Certbot leegyszerűsíti az SSL-tanúsítványok telepítését és megújítását. A tanúsítvány nemcsak a biztonságot növeli, hanem a felhasználók bizalmát is növeli a webes erőforrások iránt, ezáltal javítja a webhely hírnevét és a keresőmotorok rangsorolását.
Certbot telepítése
A Certbot alapértelmezés szerint a legtöbb disztribúcióban benne van, így a telepítéshez Debian / Ubuntu rendszerek esetén csak frissítenie kell a csomaglistát:
apt update
Ezután indítsa el a telepítési folyamatot:
apt install certbot
A Certbot támogatja azokat a beépülő modulokat, amelyek megkönnyítik a webszerver tanúsítványának beállítását és konfigurálását. A bővítmények telepítéséhez használja a megfelelő parancsot:
apt install certbot python3-certbot-nginx # for Nginx
apt install certbot python3-certbot-apache # for Apache
A telepítési folyamat ehhez Red Hat rendszerek (pl RHEL, CentOS, Fedora) kissé eltér. Kezdetben hozzá kell adnia az EPEL-tárat:
yum install epel-release
Ezután telepítse az eszközt:
yum install certbot
Hasonlóképpen lehetőség van egy bővítmény kiválasztására egy adott webszerverhez:
yum install python3-certbot-nginx # for Nginx
yum install python3-certbot-apache # for Apache
A telepítés után azonnal folytathatja a tanúsítvány megszerzését.
SSL-tanúsítvány beszerzése
Ebben a részben a tanúsítvány egy adott webszervertől függetlenül történő megszerzésének folyamatát tárgyaljuk, majd az Nginx és Apache tanúsítvány telepítésének folyamatát. Mindazonáltal elengedhetetlen, hogy először megértsük a program szintaxisát és funkcióit. A következőképpen jelenik meg:
certbot command option -d domain
A fő parancsok a következők:
certbot certonly - Lekéri a tanúsítványt, de nem telepíti.certbot certificates - Ez a parancs megjeleníti az összes telepített tanúsítvány listáját.certbot renew - Bővíti a meglévő tanúsítványt.certbot revoke - Visszavonja a meglévő tanúsítványt.certbot delete - Törli a meglévő tanúsítványt.
A leggyakrabban használt lehetőségek a következők:
--nginx - Nginx konfigurációs szkripteket használ a domain ellenőrzéséhez.--apache - Apache konfigurációs szkripteket használ a tartomány ellenőrzéséhez.-d - Azon domainek listája, amelyekhez a tanúsítványt kérik.--standalone - Önálló módot használ a domain ellenőrzéséhez.--manual - Manuális domain ellenőrzést végez.
Ez csak egy példa a leggyakoribb parancsokra és opciókra. A program funkcióinak teljes listáját a súgó részben ismerheti meg:
certbot –help
Most folytatjuk a tanúsítvány beszerzését. Példaként kapunk egy tanúsítványt a virtuális szerver egy ingyenes harmadik szintű tartományhoz, például a yourusername.pserver.space
Először is be kell írnia a parancsot:
certbot certonly
Válaszul a segédprogram arra kéri, hogy válasszon egy módszert a domain tulajdonjogának ellenőrzésére:
Az első lehetőség akkor kényelmes, ha nincs beállított webszerver, vagy nem kíván módosítani egy meglévőt. Ez a módszer létrehoz egy ideiglenes webszervert, amely megerősíti a tartományhoz való jogát. Ideális egyszerű és gyors beállításhoz. A módszer kiválasztásakor fontos, hogy a 80-as port szabadon maradjon.
A második lehetőség akkor előnyös, ha már működik webszerver, és ezzel szeretné ellenőrizni a tartományhoz való jogot. A Certbot speciális fájlokat helyez el a szerver egy mappájába, amelyeket aztán a tanúsító központ ellenőrzi.
Kiválasztjuk az első lehetőséget, és kattintunk a következőre. Ebben a szakaszban a következőkre lesz szüksége:
- Írjon be egy e-mail címet;
- Fogadja el a szolgáltatási feltételeket;
- Elfogadja vagy megtagadja az e-mailek fogadását a vállalat és partnerei nevében;
- Adja meg azt a domain nevet, amelyre a tanúsítványt kiállították.
Miután a Certbot eszközzel befejezte a tanúsítványkibocsátási folyamatot, jelzi annak a könyvtárnak az elérési útját, ahol a kiállított tanúsítvány és az Ön fiókjához tartozó adatok tárolódnak:
Nem kell mást tennie, mint a megszerzett tanúsítványt a kívánt szolgáltatáshoz kapcsolni.
A tanúsítvány telepítése Nginx vagy Apache számára
Ez a szakasz feltételezi, hogy bizonyos alapvető feltételek teljesülnek:
- Már telepített és konfigurált egy webszervert, az Nginxet vagy az Apache-t. Elérhetőnek kell lennie az internetről azon a domain néven keresztül, amelyhez a tanúsítványt be kívánja szerezni;
- Az eszköz telepítése során a megfelelő paranccsal telepített egy bővítményt az Nginx vagy az Apache számára;
- A tűzfal lehetővé teszi a kapcsolatokat a 80-as és a 443-as portokon. Ha ezek a portok zárva vannak a kapcsolatok előtt, a szolgáltatás nem lesz elérhető a bejövő kapcsolatok számára. A tűzfal működésével kapcsolatos további részletekért ezt a következő cikkben tárgyaltuk tűzfal beállítása Linuxon.
Ha minden feltétel teljesült, közvetlenül folytathatja a tanúsítvány kiállítását. Példaként megvizsgáljuk az SSL-tanúsítvány beszerzésének folyamatát egy szerveren az Nginx használatával. Ha azonban Apache webszervert használ, a folyamat teljesen azonos.
A tanúsítvány megszerzéséhez be kell írnia a következő parancsot:
certbot --nginx # for Nginx
certbot --apache # for Apache
Válaszul az eszköz kéri: e-mail címet, hozzájárulást a Let's Encrypt szolgáltatás használati feltételeihez, valamint engedélyt a szolgáltatás és partnerei nevében e-mailek küldésére.
Ezt követően meg kell adnia azt a domain nevet, amelyre a tanúsítványt kiállították. A Certbot automatikusan meg tudja határozni a tartományt, ha az a szerver név mező számára nginx konfiguráció ill Szerver név és a SzerverAlias mert Apache. Ha nincs megadva, a program értesíti, és kéri a domain név manuális megadását. Ezután a segédprogram megkérdezi, hogy engedélyezi-e a kérések HTTP-ről HTTPS protokollra történő átirányítását. Az automatikus átirányítás beállításához válassza a második lehetőséget:
Egy idő után a Certbot értesíti Önt a megadott domain tanúsítványának sikeres beszerzéséről. Ettől kezdve minden bejövő kapcsolat át lesz irányítva a 80-as portról a 443-as portra. Az eszköz megjeleníti azokat a könyvtárakat, amelyekben megtalálja az összes tanúsítványadatot és a Titkosítsuk fiókadatait:
Az üzenet tartalmazza a megszerzett tanúsítvány érvényességi idejét és az összes aktív tanúsítvány kezelésének fontos opcióit is:
- bizonyosan. Ez az opció a tanúsítvány beszerzésére vagy frissítésére szolgál automatikus webszerver-konfiguráció nélkül. A Certbot csak a tanúsítványt kéri vagy frissíti, de nem hajt végre automatikus módosításokat a kiszolgáló konfigurációjában. Korábban ezt a lehetőséget használtuk a tanúsítvány megszerzésére anélkül, hogy webszerverhez kötöttük volna.
- megújítása minden olyan tanúsítvány automatikus megújítására szolgál, amelyet a Certboton keresztül szereztek meg, és amelyek érvényességi idejükön belül vannak. A program minden tanúsítványt ellenőriz, és ha valamelyik 30 napon belül lejár, automatikusan megújítja.
A továbbiakban az útmutatóban megvitatjuk, hogyan lehet beállítani a tanúsítványok automatikus, felhasználói beavatkozás nélküli megújítását háromhavonta.
Automatikus tanúsítvány megújítás a Certbotban
Debian/Ubuntu számára
Ezen operációs rendszerek használatakor a Certbot automatikusan hozzáad egy parancsfájlt a feladatlistához a telepített tanúsítványok automatikus megújításához. A szkript működését a következő paranccsal ellenőrizheti:
systemctl status certbot.timer
A válaszban megjelenik a szolgáltatás állapota, valamint a konfigurációs fájlt tartalmazó könyvtár. Ezt bármelyik szövegszerkesztővel megnyithatja. Ha nincs tapasztalata a szövegszerkesztőkben Linux alatt, javasoljuk, hogy ismerkedjen meg velük áttekintésünk a legnépszerűbb megoldások közül. Ebben az esetben a nano-t fogjuk használni:
nano /lib/systemd/system/certbot.timer
Az összes fontos paraméter kiemelve van:
- A menetrend szerint a szolgáltatás naponta kétszer 00:00 és 12:00 órakor indul;
- A második érték véletlenszerű késleltetést jelez másodpercekben, amely hozzáadódik az időzítő indításához. Ebben az esetben 43,200 12 másodperc (XNUMX óra), ami véletlenszerűbbé teszi az indítást és szétosztja a terhelést;
- Ez a paraméter biztosítja, hogy ha az időzítőt a rendszer leállítása közben kellett volna végrehajtani, akkor az indításkor azonnal aktiválódik.
A tanúsítvány megújításának kényszerített ellenőrzését is futtathatja a következő paranccsal:
certbot renew --dry-run
Ezzel a paranccsal a tanúsítványok nem frissülnek. Ehelyett az eszköz a tanúsítvány megszerzéséhez hasonló műveleteket hajt végre annak lejártakor. Így biztosíthatja a szolgáltatás funkcionalitását az automatikus megújítással kapcsolatban.
CentOS, Fedora és mások számára
Az automatikus frissítések engedélyezésének folyamata a Red Hat család rendszerein némileg eltér. A Debian/Ubuntutól eltérően a CentOS és más rendszerek esetében manuálisan kell hozzáadnia egy feladatot az ütemezőhöz. Ehhez a cron eszköz:
crontab -e
Ezután a megnyíló fájlban adja hozzá a következő sort:
0 12 * * * /usr/bin/certbot renew --quiet
Bontsuk le a parancs fő érveit:
- A végrehajtási idő. Ebben az esetben a parancs minden nap 12:00-kor automatikusan lefut;
- Az SSL/TLS-tanúsítványok Certbot használatával történő megújítására szolgáló parancs;
- Az --csendes A jelző elnyomja a kimenetet, rejtettebbé és kevésbé tolakodóvá téve a folyamatot a rendszernaplókban vagy a megjelenítésben.
A parancs hozzáadása után el kell mentenie a változtatásokat a fájlban.
Csakúgy, mint a Debian/Ubuntu esetében, a tanúsítványmegújítások kényszerített ellenőrzését is kezdeményezheti:
certbot renew --dry-run
A parancs sikeres végrehajtásának eredménye a következőképpen néz ki:
Összegzés
Megvizsgáltuk a Certbot Linux-kiszolgálón történő telepítésének és konfigurálásának átfogó folyamatát. A mellékelt utasítások követésével sikeresen beszerezhet egy SSL/TLS-tanúsítványt a Let's Encrypt-től, telepítheti azt webszerverére, és konfigurálhatja az automatikus megújítást a folyamatos védelem és a webes erőforrások iránti fokozott bizalom érdekében. A Certbot segítségével könnyen létrehozhat megbízható és biztonságos környezetet a felhasználók számára.