Diezgan bieži nÄkas strÄdÄt ar SSL sertifikÄtiem. AtcerÄsimies sertifikÄta izveides un instalÄÅ”anas procesu (vispÄrÄjÄ gadÄ«jumÄ lielÄkajai daļai).
Atrodiet pakalpojumu sniedzÄju (vietni, kur mÄs varam iegÄdÄties SSL).
Izveidojiet KSA.
NosÅ«tiet to savam pakalpojumu sniedzÄjam.
Apstipriniet domÄna Ä«paÅ”umtiesÄ«bas.
IegÅ«stiet sertifikÄtu.
KonvertÄjiet sertifikÄtu vajadzÄ«gajÄ formÄ (pÄc izvÄles). PiemÄram, no pem uz PKCS #12.
InstalÄjiet sertifikÄtu tÄ«mekļa serverÄ«.
SalÄ«dzinoÅ”i Ätri, nesarežģīti un saprotami. Å Ä« opcija ir diezgan piemÄrota, ja mums ir ne vairÄk kÄ desmit projekti. Ko darÄ«t, ja to ir vairÄk un tiem ir vismaz trÄ«s vides? KlasiskÄ izstrÄde - iestudÄjums - producÄÅ”ana. Å ajÄ gadÄ«jumÄ ir vÄrts padomÄt par Ŕī procesa automatizÄciju. PiedÄvÄju nedaudz iedziļinÄties problÄmÄ un rast risinÄjumu, kas vÄl vairÄk samazinÄtu laiku, kas tiek patÄrÄts sertifikÄtu izveidei un uzturÄÅ”anai. RakstÄ bÅ«s problÄmas analÄ«ze un neliels ceļvedis atkÄrtoÅ”anai.
Ä»aujiet man veikt rezervÄciju iepriekÅ”: mÅ«su uzÅÄmuma galvenÄ specializÄcija ir .net un attiecÄ«gi IIS un citi ar Windows saistÄ«ti produkti. TÄpÄc ACME klients un visas ar to veiktÄs darbÄ«bas tiks aprakstÄ«tas arÄ« no Windows lietoÅ”anas viedokļa.
Kam tas ir aktuÄli un daži sÄkotnÄjie dati
UzÅÄmums K, ko pÄrstÄv autors. URL (piemÄram): company.tld
Projekts X ir viens no mÅ«su projektiem, pie kura strÄdÄjot nonÄcu pie secinÄjuma, ka, strÄdÄjot ar sertifikÄtiem, tomÄr jÄvirzÄs uz maksimÄlo laika ietaupÄ«jumu. Å im projektam ir Äetras vides: izstrÄde, testÄÅ”ana, iestudÄÅ”ana un ražoÅ”ana. IzstrÄdÄtÄjs un testÄÅ”ana ir mÅ«su pusÄ, iestudÄÅ”ana un ražoÅ”ana ir klienta pusÄ.
ÄŖpaÅ”a projekta iezÄ«me ir tÄ, ka tajÄ ir liels skaits moduļu, kas ir pieejami kÄ apakÅ”domÄni.
RažoÅ”anai tiek izmantots iegÄdÄts aizstÄjÄjzÄ«mes sertifikÄts, Å”eit nerodas jautÄjumi. Bet tas attiecas tikai uz apakÅ”domÄna pirmo lÄ«meni. AttiecÄ«gi, ja ir sertifikÄts *.projectX.tld, tad tas darbosies staging.projectX.tld, bet ne module1.staging.projectX.tld. Bet kaut kÄ negribas pirkt atseviŔķu.
Un tas ir balstÄ«ts tikai uz viena uzÅÄmuma viena projekta piemÄru. Un, protams, ir vairÄk nekÄ viens projekts.
VeicinÄt SSL izdoÅ”anas un uzturÄÅ”anas procesu projektu un visa uzÅÄmuma iekÅ”ÄjÄm vajadzÄ«bÄm.
CentralizÄta sertifikÄtu ierakstu glabÄÅ”ana, kas daļÄji atrisina domÄna verifikÄcijas, izmantojot DNS un sekojoÅ”o automÄtisko atjaunoÅ”anu, problÄmu, kÄ arÄ« atrisina klientu uzticÄ«bas jautÄjumu. TomÄr CNAME partnera/izpildÄ«tÄja uzÅÄmuma serverÄ« ir uzticamÄks nekÄ treÅ”Äs puses resursÄ.
Visbeidzot, Å”ajÄ gadÄ«jumÄ lieliski iederas frÄze ālabÄk ir nekÄ navā.
SSL nodroÅ”inÄtÄja izvÄle un sagatavoÅ”anas darbÄ«bas
Starp pieejamajÄm bezmaksas SSL sertifikÄtu opcijÄm tika apsvÄrti cloudflare un letsencrypt. Å Ä« (un dažu citu projektu) DNS mitina cloudflare, taÄu es neesmu viÅu sertifikÄtu izmantoÅ”anas cienÄ«tÄjs. TÄpÄc tika nolemts izmantot letsencrypt.
Lai izveidotu aizstÄjÄjzÄ«mes SSL sertifikÄtu, jums jÄapstiprina domÄna Ä«paÅ”umtiesÄ«bas. Å Ä« procedÅ«ra ietver DNS ieraksta (TXT vai CNAME) izveidi un pÄc tam tÄ pÄrbaudi, izsniedzot sertifikÄtu. Linux ir utilÄ«ta - certbot, kas ļauj daļÄji (vai dažiem DNS nodroÅ”inÄtÄjiem pilnÄ«bÄ) automatizÄt Å”o procesu. OperÄtÄjsistÄmai Windows no atrasts un pÄrbaudÄ«ts ACME klienta iespÄjas Es apmetos WinACME.
Un domÄna ieraksts ir izveidots, pÄriesim pie sertifikÄta izveides:
Izveidojiet DNS ierakstus manuÄli (automÄtiskÄ atjauninÄÅ”ana netiek atbalstÄ«ta)
DNS ierakstu izveide, izmantojot acme-dns serveri (varat lasÄ«t vairÄk par Å”eit.
DNS ierakstu izveide, izmantojot savu skriptu (lÄ«dzÄ«gi kÄ certbot spraudnim cloudflare).
No pirmÄ acu uzmetiena treÅ”ais punkts ir diezgan piemÄrots, bet ko darÄ«t, ja DNS nodroÅ”inÄtÄjs neatbalsta Å”o funkcionalitÄti? Bet mums ir vajadzÄ«gs vispÄrÄ«gs gadÄ«jums. Un vispÄrÄjais gadÄ«jums ir CNAME ieraksti, jo visi tos atbalsta. TÄpÄc mÄs apstÄjamies 2. punktÄ un ejam, lai konfigurÄtu mÅ«su ACME-DNS serveri.
ACME-DNS servera un sertifikÄtu izsniegÅ”anas procesa iestatÄ«Å”ana
PiemÄram, es izveidoju domÄnu 2nd.pp.ua un izmantoÅ”u to turpmÄk.
ObligÄta prasÄ«ba Lai serveris darbotos pareizi, tÄ domÄnam ir jÄizveido NS un A ieraksti. Un pirmais nepatÄ«kamais moments, ar ko saskÄros, ir tas, ka cloudflare (vismaz brÄ«vÄs lietoÅ”anas režīmÄ) neļauj vienlaicÄ«gi izveidot NS un A ierakstu vienam un tam paÅ”am saimniekdatoram. Nav tÄ, ka tÄ ir problÄma, bet kopÄ tÄ ir iespÄjama. Atbalsts atbildÄja, ka viÅu panelis neļauj to darÄ«t. Nav problÄmu, izveidosim divus ierakstus:
acmens.2nd.pp.ua. IN A 35.237.128.147
acme.2nd.pp.ua. IN NS acmens.2nd.pp.ua.
Å ajÄ posmÄ mÅ«su saimniekam vajadzÄtu atrisinÄt acmens.2nd.pp.ua.
$ ping acmens.2nd.pp.ua
PING acmens.2nd.pp.ua (35.237.128.147) 56(84) bytes of data
Bet acme.2nd.pp.ua tas neatrisinÄsies, jo DNS serveris, kas to apkalpo, vÄl nedarbojas.
Ieraksti ir izveidoti, mÄs turpinÄm ACME-DNS servera iestatÄ«Å”anu un palaiÅ”anu. Tas dzÄ«vos manÄ ubuntu serverÄ« dokers konteineru, taÄu varat to palaist jebkur, kur ir pieejams golangs. Windows arÄ« ir diezgan piemÄrots, bet es joprojÄm dodu priekÅ”roku Linux serverim.
Izveidojiet nepiecieŔamos direktorijus un failus:
$ mkdir config
$ mkdir data
$ touch config/config.cfg
Izmantosim vim ar jÅ«su iecienÄ«tÄko teksta redaktoru un ielÄ«mÄsim paraugu failÄ config.cfg konfigurÄcija.
VeiksmÄ«gai darbÄ«bai pietiek ar vispÄrÄ«go un api sadaļu laboÅ”anu:
Kad jautÄ par saiti uz ACME-DNS serveri, atbildÄ ievadiet izveidotÄ servera URL (https). acme-dns servera URL: https://acme.2nd.pp.ua
AtvÄrumÄ klients izdod ierakstu, kas jÄpievieno esoÅ”ajam DNS serverim (vienreizÄja procedÅ«ra):
[INFO] Creating new acme-dns registration for domain 1nd.pp.ua
Domain: 1nd.pp.ua
Record: _acme-challenge.1nd.pp.ua
Type: CNAME
Content: c82a88a5-499f-464f-96e4-be7f606a3b47.acme.2nd.pp.ua.
Note: Some DNS control panels add the final dot automatically.
Only one is required.
MÄs izveidojam nepiecieÅ”amo ierakstu un pÄrliecinÄmies, ka tas ir izveidots pareizi:
MÄs apstiprinÄm, ka esam izveidojuÅ”i nepiecieÅ”amo ierakstu winacme, un turpinÄm sertifikÄta izveides procesu:
Ir aprakstÄ«ts, kÄ izmantot certbot kÄ klientu Å”eit.
Tas pabeidz sertifikÄta izveides procesu; varat to instalÄt tÄ«mekļa serverÄ« un izmantot. Ja, veidojot sertifikÄtu, plÄnotÄjÄ izveido arÄ« uzdevumu, tad turpmÄk sertifikÄta atjaunoÅ”anas process notiks automÄtiski.