Kuidas kasutada HTTPS-i farmide SSL-sertifikaatide krüpteerimist

Vaata kategooriaid

Kuidas kasutada HTTPS-i farmide SSL-sertifikaatide krüpteerimist

Ülevaade #

Let's Encrypt on avatud ja automatiseeritud sertifitseerimisasutus, mis kasutab ACME ( Automatic Certificate Management Environment ) protokolli, et pakkuda tasuta TLS/SSL-sertifikaate igale ühilduvale kliendile. Neid sertifikaate saab kasutada veebiserverite ja kasutajate vahelise suhtluse krüptimiseks.

Selles õpetuses räägitakse lühidalt sertifitseerimisasutustest ja sellest, kuidas RELIANOID integreerimine töötab Let's Encryptiga, seejärel vaadake, kuidas RELIANOID kasutab certbot (ACME klient), et luua side saidiga Krüpteerime infrastruktuuri.

RELIANOID Load Balancer 6.0.3 või uuem versioon sisaldab pisikest certbot-ümbrist nimega letencryptz Certbot webrooti funktsionaalsuse kasutamiseks selgitatakse järgmistes ridades, kuidas see ümbris töötab, palun võtke seda arvesse, et muuta see tootmistingimustes töötavaks.

Kuidas krüpteerime valideerimise? #

Webrooti funktsioonide lühikirjeldusena töötab veebirooti pistikprogramm, luues ajutise faili iga teie soovitud domeeni jaoks RELIANOID faili teekond /usr/local/relianoid/app/letsencryptz/webroot/.well-known/acme-challenge/. Seejärel krüptib valideerimisserver HTTP-päringuid selle kinnitamiseks, et iga taotletud domeeni DNS lahendab server, mis töötab letsencryptz-ümbrist, ja ajutine fail valideerimise jaoks on juurdepääsetav. Järgmine diagramm kirjeldab tegelikku näidet:

Krüpteerime RELIANOID

Eelmisel diagrammil RELIANOID Koormuse tasakaalustaja asub avaliku IP-aadressiga ruuteri/tulemüüri taga 185.79.20.147 (näiteks) HTTP ja HTTPS liiklus natted sisemise koormuse tasakaalustajaga VIP 192.168.101.31iga (näiteks), kus koormuse tasakaalustaja on konfigureeritud erinevate 2i taludega:

HTTPSi talu nimi Veebihost kaudu 192.168.101.31:443. See talu vastutab veebimajutuse pakkumise eest, samuti avaldatakse internetis erinevad veebiserverid. Näiteks, test1.relianoid.com, test2.relianoid.com, test3.relianoid.com testivad sellel virtuaalsel teenusel avaldatud veebilehti muu hulgas.
HTTP talu nimi WebhostingRedirect kaudu 192.168.101.31:80. Seda talu kasutatakse ainult ümbersuunamise eesmärgil, see sunnib kogu liikluse HTTP-lt HTTPS-ile.

Eelmine diagramm kirjeldab domeeni test1.relianoid.com SSL-sertifikaadi taotlust Let's Encrypt järgmiselt:

1. Sertifikaaditaotlus saadetakse koormuse tasakaalustajalt ise infrastruktuuri Let's Encrypt.
2. Krüpteerime uue SSL-i sertifikaaditaotluse test1.relianoid.com
3. Krüpteerime DNS-i lahenduse käitamise taotletud hostile: test1.relianoid.com kontrollides, kas tulemus on avalik IP, sama algus IP, mis taotluse algatas.
4. Siinkohal krüpteerime teadaanded aadressile letencryptz skript (webroot cerbot), mis vajab faili a loomiseks HASH avalikul teel http://test1.relianoid.com/.well-know/acme-challenge/ (80 TCP port), kohalik kataloog /usr/local/relianoid/app/letsencryptz/webroot/.well-known/acme-challenge/. Siis letencryptz konfigureerib ajateenuse, et muuta see fail Interneti kaudu kättesaadavaks (talu WebhostingRedirect seda kavatsetakse muuta. Kui talu ei ole juba konfigureeritud letencryptz see VIP ja Port).
6. Niipea kui letencryptz kinnitab ajutise teenuse loomist, lubab krüpteerida servereid, et kontrollida ajalise valideerimisfaili loomist ja HASH sisu on õige.
7. Lõpuks laseme krüpteerida serverid esimesele taotlusele juba loodud sertifikaadiga Üldnimetus (CN) test1.relianoid.com.
8. RELIANOID salvestab juba loodud sertifikaadi kohalikule teele /usr/local/relianoid/config/ ning see on talus konfigureeritav Veebihost.

Selles etapis kasutatakse HTTPS-i virtuaalse teenuse jaoks uut sertifikaati Let's Encrypt.

Krüpteerime automaatika käsud #

Nagu kirjeldatud, automatiseerib letsencryptz skript teie SSL-sertifikaatide haldamiseks vajalikud toimingud, näiteks loomine, uuendamine, hävitamine või loetlemine. Saadaval olevad käsud leiate altpoolt.

root@zva6k:~# letsencryptz letsencryptzi kirjeldus: letsencryptz on minimaalsete parameetritega Let's Encrypt (certbot) wrapper, mis on valmis haldama Relianoidi https-profiilide Let's Encrypt sertifikaate. Arvesta sellega, et see ümbris kasutab certbot webroot funktsiooni, seega nõuab avalik Let's encrypt arhitektuur ühenduse loomist kohaliku virtuaalse IP ja pordiga (vaikimisi TCP 80), et taotletud domeeni päringut valideerida. Niipea kui parameeter "obtain" on kasutatud, konfigureerib see skript HTTP-farmi, millele Let's encrypt pääseb juurde kontrollimise eesmärgil. See konfiguratsioon tehakse skripti enda poolt automaatselt. Veendu ainult, et kasutatavat virtuaalset IP-d ja HTTP-porti 80 ei kasuta ükski teine ​​koormusega tasakaalustatud farm ning et taotletud domeeni DNS-i lahendus oleks Let's encrypt süsteemist kättesaadav.


kasutamine: /usr/local/relianoid/bin/letsencryptz tegevus: --obtain | --destroy | --renew | --list | --listconf | --help --obtain: Taotle uusi sertifikaate webroot cert-bot mooduli abil.

		käsud: --vip --talu --domeen --domeen --domeen --test --vip: Juba konfigureeritud virtuaalne IP-aadress peaks avaldama ajutise veebiserveri, mis ühendatakse avalike serverite krüptimise teel sertifikaaditaotluse kontrollimiseks. Virtuaalne IP peab olema 80. pordil vaba, et seda saaks kohaliku protsessiga siduda. Kui see pole vaba, siis kasutage valikut --farm.
        		--farm: Farmi nimi, mis konfigureerib ajalise teenuse nimega "letsencryptz". Kui farmi ei kasutata, konfigureeritakse valitud virtuaalses IP-aadressis ajaline farm nimega "letsencryptRelianoid".
        		--domeen: Domeen, mille jaoks sertifikaati taotletakse, nt www.minuettevõte.com.
			--test: Valikuline parameeter, mille kasutamisel küsitakse sertifikaati testimise eesmärgil.

	--destroy: Tühistab ja kustutab näidatud sertifikaadi nime, toiming lükatakse tagasi, kui antud sertifikaat on farmi kasutusel.
		
		käsud: --sertname --certname: Sertifikaadi nimi, selle väärtuse saab hankida toimingust --list.

	--renew: Sertifikaatide kehtivusaja lõppemise eelne uuendamine, käske pole vaja käsud: --test --forcerestart --vip --talu --test: Valikuline parameeter, mille kasutamisel käivitatakse proovkatse ja simuleeritakse sertifikaatide uuendamist. 
			--forcerestart: Valikuline parameeter, kui seda kasutatakse, taaskäivitatakse muudatuste rakendamiseks uuendatud sertifikaate kasutavad talud.
                        --vip: Virtuaalne IP on juba konfigureeritud ajutise veebiserveri avaldamiseks, see ühendatakse avalike serverite krüptimisega sertifikaadi uuendamise kontrollimiseks. Virtuaalne IP peab olema 80. pordil vaba, et seda saaks kohaliku protsessiga siduda. Kui see pole vaba, siis kasutage valikut --farm.
                        --farm: Farmi nimi, mis konfigureerib ajalise teenuse nimega "letsencryptz". Kui farmi ei kasutata, konfigureeritakse valitud virtuaalses IP-aadressis ajaline farm nimega "letsencryptRelainoid".

	--list: Loetleb kõik let's encrypti hallatavad kohalikud sertifikaadid ja nende oleku, käske pole vaja.

	--listconf: LoetlebRELIANOID


Letsencryptzi esmakordne käivitamine võtab veidi aega, kuna süsteem installib automaatselt lahendamata sõltuvused ja enne selle kasutamist tehakse ka konfiguratsiooni ülevaade. Let's Encrypt taotleb sertifikaatidega seotud meilikontot või kontaktandmeid. Seda meilikontot kasutatakse kõigi Let's Encrypti süsteemi vastu tehtavate toimingute puhul. Selle meili aadressi saab konfigureerida peamises konfiguratsioonifailis /usr/local/relianoid/config/global.conf , direktiivis $le_email.

Mõned kasutusnäited on toodud allpool.

RELIANOID Krüpteerime sertifikaadi loomise #

See käsk taotleb domeenile test2.relianoid.com uut sertifikaati . Arvestage, et antud VIP on sisemine, mille liiklus tuleks suunata avalikult IP-aadressilt sisemisele. Kui Let's Encrypt ei suuda selle teenusega ühendust luua, lükatakse päring tagasi.

root@zva6k:~# letsencryptz --obtain --vip 192.168.101.31 --domain test2.relianoid.com HOIATUS: Talu nime pole määratud, VIP 192.168.101.31 pordis 80 luuakse ajaline talu nimega letsencryptRelianoid. Talu seadistamine Let's Encrypti jaoks Sertifikaadi nime kontrollimine Sertifikaadi hankimine domeenidele test2.relianoid.com... Silumislogi salvestamine kausta /var/log/letsencrypt/letsencrypt.log Valitud pluginad: Autentikaator webroot, Installer Puudub Uue sertifikaadi hankimine Mittestandardsed teed, ei pruugi teie operatsioonisüsteemi paketihalduri installitud crontabiga töötada Sertifikaaditaotlus domeenidele test2.relianoid.com OK Loodud on sertifikaat nimega test2.relianoid.com PEM-vormingus, mis on HTTPS-profiili jaoks valmis Webrooti konfiguratsiooni hävitamine talule letsencryptRelianoid Kustutatakse juba letsencryptRelianoidi, teenuse letsencryptz konfiguratsioon Talude taaskäivitamine uuendatud sertifikaatidega: 

RELIANOID Krüpteerime sertifikaatide loendi #

Selle käsu täitmine näitab praeguseid sertifikaate, mida haldab RELIANOID Krüpteerime süsteemi.

root@zva6k:~# letsencryptz --list Loetletakse kõik saadaolevad sertifikaadid praeguse konfiguratsiooni jaoks konfiguratsioonikataloogis /usr/local/relianoid/config/letsencrypt/ Silumislogi salvestatakse kausta /var/log/letsencrypt/letsencrypt.log Sertifikaadi nimi: test1.relianoid.com Domeen(id): test1.relianoid.com Aegumiskuupäev: 2019-09-19 10:48:02+00:00 (KEHTIB: 77 päeva) Pem-sertifikaadifail: /usr/local/relianoid/config/test1_relianoid_es.pem Sertifikaadi nimi: test3.relianoid.com Domeen(id): test3.relianoid.com Aegumiskuupäev: 2019-09-26 06:32:52+00:00 (KEHTIB: 83 päeva) Pem-sertifikaadifail: /usr/local/relianoid/config/test3_relianoid_es.pem


Võtke arvesse välja sertifikaadi nimi , letsencryptz wrapper tunneb selle välja ära kui –certname.

RELIANOID Krüpteerime sertifikaadi uuendamise #

Eelmine käsk kontrollib, kas mõni juba loodud sertifikaat vajab uuendamist, sellisel juhul toimub uuendamine automaatselt. Arvestage, et kui uuendatud sertifikaat on kasutusel, on muudatuse rakendamiseks vaja farmi taaskäivitada. Kasutage valikut –forcerestart, kui soovite, et letsencryptz taaskäivitaks kõik vajalikud farmid muudatuste rakendamiseks.

root@zva6k:~# letsencryptz --renew --vip 192.168.101.31 Kõigi vajalike sertifikaatide uuendamine Silumislogi salvestamine asukohta /var/log/letsencrypt/letsencrypt.log Serti ei ole veel uuendamise tähtaeg Serti ei ole veel uuendamise tähtaeg

RELIANOID Krüpteerime sertifikaadi kustutamise #

See käsk tühistab ja kustutab antud sertifikaadi. Juhul kui süsteem tuvastab, et valitud sertifikaati kasutab hetkel mõni HTTPS-farm, lükatakse toiming tagasi. Ülaltoodud näites lükatakse kustutustoiming tagasi, kuna sertifikaati kasutab farm testhttps.

root@zva6k:~# letsencryptz --destroy --certname test3.relianoid.com Sertifikaadi(te) test3.relianoid.com tühistamine ja kustutamine praeguse konfiguratsiooni jaoks... Seda faili ei saa kustutada, kuna seda kasutab farm(id): testhttps

Niipea kui sertifikaat talust määramata on, tehakse järgmised toimingud:

root@zva6k:~# letsencryptz --destroy --certname test3.relianoid.com Sertifikaadi(te) test3.relianoid.com tühistamine ja kustutamine praeguse konfiguratsiooni jaoks... Silumislogi salvestamine kausta /var/log/letsencrypt/letsencrypt.log Kustutatud sertifikaat(id) test3.relianoid.com teel /usr/local/relianoid/config/test3_relianoid_es.pem

Migreeri Let's Encrypt sertifikaadid kontole RELIANOID #

RELIANOID Koormuse tasakaalustaja salvestab kõik konfiguratsioonifailid certbot kohalikul teel / usr / local / zevenet / config / letsencrypt /. Olemasolevate sertboti konfiguratsioonifailide teisaldamiseks (vaikimisi kataloogis / etc / letsencrypt) teisest serverist RELIANOID, peate oma serveris sellest olemasolevast konfiguratsioonikataloogist tegema ainult tarballi (faili tar.gz) ja lahti pakkima selle sisu RELIANOID Krüpteerime konfiguratsioonitee. Lõpuks kaaluge muutuja muutmist $ le_email toimikus global.conf samale e-posti aadressile, mida on kasutatud eelmistes taotlustes.

Krüpteerime sertifikaatide klastrite toe #

RELIANOID Let's Encrypt plugin on täielikult toetatud RELIANOID Klastri teenus. Kõik Let's Encrypt toimingud salvestatakse konfiguratsioonifaili, mida kopeerib RELIANOID Klastriteenus, nii et kõik rakenduses tehtud toimingud MASTER sõlm kopeeritakse Slaav sõlme automaatselt, kuid kõik toimingud, mis teostatakse Slaav Desünkroniseerimise vältimiseks visatakse krüptimisega seotud sõlm kõrvale.

Krüpteerime sertifikaatide automaatse uuendamise #

RELIANOID Let's Encrypt pluginat saab seadistada kontrollima igapäevaselt, kas mõni sertifikaat vajab uuendamist, juhul kui süsteem uuendab antud sertifikaati automaatselt ja see on mõnes farmis kasutuses, siis taaskäivitatakse farm automaatselt sertifikaadi rakendamiseks muuta.

Automaatse pikendamise konfigureerimiseks toimige järgmiselt:

Looge järgmine cron-fail /etc/cron.d/letsencryptz järgmise sisuga:

root@zva6k:~# cat /etc/cron.d/letsencryptz 00 00 * * * root /usr/local/relianoid/bin/letsencryptz --renew --forcerestart --vip 192.168.101.31

Selle konfiguratsiooni korral teostatakse uuenduskontroll iga päev kell 00:00 (keskööl). Ja VIP 192.168.101.31 kasutatakse pordis 80 kontrollimise eesmärgil Let's Encrypt Systemist.

Tehtud tööd #

Mõned selles artiklis kasutatud viited on järgmised:

Webroot ja Certbot
Kuidas töötab krüptimine?

📄 Laadige see dokument alla PDF-vormingus #

    EMAIL: *