Certbot raporton një rinovim të suksesshëm, skedarët në disk mbajnë data të reja, dhe klientët vazhdojnë të gjejnë identitetin e vjetër. SoftEther e mban certifikatën SSL të serverit në konfigurimin e vet në nivel serveri, kështu që një skedar i re në disk nuk ndryshon asgjë derisa fleta dhe çelësi i saj të importohen. Sekuenca më poshtë mbulon një import manual, një mbështjellës që ekzekutohet pas çdo rinovimi, dhe një kontroll që lexon atë që dëgjuesi në të vërtetë paraqet. Çdo hap lë prova që mund t'i krahasoni pas rinovimit të ardhshëm.

Një skedar i rinovuar nuk e ndryshon identitetin e serverit

Lëshimi dhe vendosja janë ngjarje të ndara me mënyra dështimi të ndara. Klienti ACME shkruan skedarë në një drejtori linje dhe regjistron suksesin; SoftEther vazhdon të përdorë certifikatën që u ngarkua për herë të fundit në konfigurimin e tij. Një status daljeje zero përshkruan pra skedarët, jo shërbimin, dhe të dy mund të ndryshojnë përderisa askush nuk shikon. Trajtoni importin si hapin e vendosjes dhe rinovimin si hyrjen e tij.

Ky dallim shpjegon edhe dështimin e pjesshëm konfuz: certifikata e vjetër vazhdon të funksionojë deri në skadimin e saj, kështu që në fillim asgjë nuk duket e prishur. Kur skadon, të gjithë klientët dështojnë njëherësh, çka duket si një ndërprerje dhe jo si një hap vendosjeje i harruar. Kontrolli i identitetit të paraqitur pas çdo rinovimi e kthen atë surprizë në një vëzhgim rutine.

Zgjidhni sfidën që i përshtatet dëgjuesit

Certifikata duhet të emërojë hostin që verifikojnë klientët, prandaj përdorni emrin publik DNS dhe jo një etiketë të brendshme ose një adresë. HTTP-01 kërkon që sfida të përgjigjet në portën 80 për një çast, çka është një dëgjues i përkohshëm dhe kurrë nuk është arsye për të zhvendosur portën e vetë SoftEther. DNS-01 vërteton kontrollin përmes një regjistrimi dhe nuk ka nevojë fare për HTTP hyrës.

Rinovimi pa mbikëqyrje nënkupton një integrim automatizuar DNS me kredenciale të kufizuara në një zonë, jo një regjistrim TXT të shkruar me dorë çdo dy muaj. Një wildcard ndryshon llojin e sfidës, jo nevojën për atë automatizim. Vendoseni këtë përpara se të ekzistojë certifikata e parë, sepse ndryshimi i llojit të sfidës më vonë do të thotë të prekësh konfigurimin e klientit dhe firewalls njëkohësisht.

Mbani artefaktet në rregull sa jeni këtu. Fleta dhe ndërmjetësit vijnë si skedarë të veçantë dhe si një skedar i vetëm zinxhiri i kombinuar, çelësi privat është përsëri i veçantë, dhe importi kërkon zinxhirin me çelësin përkatës, jo një certifikatë publike më vete.

Importoni zinxhirin në nivel serveri

Bëni një kopje rezervë të konfigurimit të serverit dhe konfirmoni se ende arrini ndërfaqen e menaxhimit përpara se të prekni certifikatën. Lidhuni si administrator serveri dhe jo si administrator Virtual Hub, sepse certifikata i përket objektit të serverit. Pastaj ngarkoni zinxhirin dhe çelësin me rrugë absolute, nga skedarë që llogaria që ekzekuton komandën mund të lexojë. Vini re se rrugët janë absolute sepse komanda i zgjidh ato nga drejtoria e punës e procesit që ekzekutoi vpncmd:

ServerCertSet /LOADCERT:/etc/letsencrypt/live/vpn.example.com/fullchain.pem /LOADKEY:/etc/letsencrypt/live/vpn.example.com/privkey.pem

Lexoni daljen e komandës në vend që të supozoni sukses, dhe pastaj rilexoni zinxhirin në vend që t'i besoni skedarit që dhatë. Kufiri mes ndërtimeve që importojnë një paketë të plotë PEM dhe ndërtimeve që marrin vetëm certifikatën e parë nuk është dokumentuar në një vend, prandaj kontrolli është ai që e vendos për ndërtimin përpara jush. Numëroni certifikatat që paraqet dëgjuesi; një fletë pa ndërmjetës është firma e një importuesi që konsumoi vetëm bllokun e parë.

Mbani çelësin e importuar të lexueshëm vetëm nga llogaria që ekzekuton serverin, dhe mbani fjalëkalimin e menaxhimit jashtë historikut të shell-it. Për këtë import të parë, shkruani fjalëkalimin në prompt në vend që ta jepni si argument komande. Këto dy zakone nuk kushtojnë asgjë dhe heqin mënyrën më të zakonshme me të cilën një vendosje certifikate zbulon diçka që duhej të mbronte. Bëni këtë përpara importit të parë, jo pas tij.

Lidhni vendosjen, jo rinovimin

Kur importi manual të funksionojë, vendosni pikërisht ata hapa në një mbështjellës të vogël dhe thirreni nga klienti ACME pas një rinovimi të suksesshëm. Certbot vendos RENEWED_LINEAGE dhe RENEWED_DOMAINS për grepin, kështu që mbështjellësi mund të veprojë mbi një certifikatë në një makinë që menaxhon disa. Filtroni sipas linjës në vend që të reagoni ndaj çdo rinovimi në host. Mbështjellësi është kod vendosjeje që ekzekutohet me privilegjet e serverit, prandaj rishikojeni si çdo skript tjetër në atë pozicion.

certbot renew --deploy-hook /usr/local/sbin/softether-deploy.sh

Një grep që ekzekutohet pa mbikëqyrje ka nevojë për depon e vet të mbrojtur të kredencialeve dhe për një sinjal dështimi që arrin te një njeri. Nëse lëshimi ka sukses dhe importi dështon, provoni përsëri importin në vend që të kërkoni një certifikatë tjetër, sepse një kërkesë e dytë e fsheh defektin e vendosjes pas një skedari të re. Dokumentacioni i Certbot për rinovimin e thotë qartë se një ekzekutim që nuk përditëson asgjë është rezultat normal, prandaj grepi është ai që i dallon të dyja.

Krahasoni zinxhirin e paraqitur me skedarin

Lexoni dëgjuesin, jo diskun. Lidhuni me portën e drejtuar nga klientët me emrin e serverit që përdorin klientët, pastaj krahasoni gjurmën e gishtit dhe zinxhirin e dorëzuar me linjën që instali grepi. Dy komanda e mbulojnë këtë, dhe e para tregon gjithashtu nëse ndërmjetësit vijnë fare:

openssl s_client -connect vpn.example.com:443 -servername vpn.example.com -showcerts </dev/null 2>/dev/null | grep -c 'BEGIN CERTIFICATE'
openssl s_client -connect vpn.example.com:443 -servername vpn.example.com </dev/null 2>/dev/null | openssl x509 -noout -subject -dates -fingerprint -sha256

Pastaj bëni një lidhje të re klienti, sepse sesionet e vendosura përpara importit u vërtetuan kundrejt identitetit të mëparshëm dhe nuk provojnë asgjë për të riun. Nëse klientët fiksojnë fletën e vjetër, kanë nevojë për një përditësim të koordinuar edhe kur zinxhiri publik është i vlefshëm, dhe ai detyrë i takon të njëjtit runbook si rinovimi. Një proxy i kundërt përpara shërbimit mund të paraqesë certifikatë të mirë ndërsa dëgjuesi VPN mban ende atë të vjetër, dhe për këtë arsye kontrolli duhet të emërojë portën që klientët arrijnë vërtet. Shënoni gjurmën e gishtit pranë datës së rinovimit, që krahasimi i ardhshëm të jetë kontroll dhe jo akt kujtese.

Artikuj të ngjashëm