Kāpēc servera atslēgām un lietotāja akreditācijas datiem vajadzīgi atsevišķi īpašnieki
Vārtejas identitāte un lietotāja atļauja ir dažādi noslēpumi ar atšķirīgām sekām. Trīs jautājumi nosaka, kā katru glabāt, izsniegt un atsaukt.
Atslēga, kas pierāda, ka jūsu vārteja ir tā pati, un akreditācijas dati, kas liecina, ka cilvēks drīkst pievienoties, abi ir noslēpumi, un tur līdzība beidzas. Viens identificē pakalpojumu katram klientam; otrs identificē vienu lietotāju šim pakalpojumam. To sajaukšana ietaupa vienu soli uzstādīšanā un maksā pusi dienas incidenta laikā, jo katra atjaunošana nav tā pati darbība. Atdalīšana ir garlaicīga uzstādīšanā un paliekoša atcerēšanās ziņā, ja to izlaiž.
Divi noslēpumi, divi dažādi īpašnieki
Vārteja glabā privātu atslēgu vai sertifikātu, kura vienīgais uzdevums ir pierādīt savu identitāti rokasspiediena laikā. Klientiem nepieciešams atbilstošs publiskais materiāls, lai to pārbaudītu, un privātā puse viņiem nekad nav vajadzīga. Tieši šī asimetrija padara servera autentifikāciju iespējamu, nepiešķirot katram lietotājam spēju uzdoties par serveri.
Lietotāja materiāls iet pretējā virzienā. Klienta privātā atslēga, klienta sertifikāts vai parole parāda, ka tieši šai personai vai ierīcei tika piešķirta piekļuve. Tiek gaidīts, ka tas tiks izplatīts, kopēts starp ierīcēm un galu galā atsaukts.
WireGuard padara atdalīšanu acīmredzamu, jo katram dalībniekam ir atslēgu pāris: servera privātā atslēga paliek serverī, un konfigurācijas fails, ko dodat lietotājam, satur viņa paša privāto atslēgu plus servera publisko atslēgu. Profils, kas satur servera privāto atslēgu, nav saīsne, tā ir kompromitēšanās, kas gaida failu koplietošanu.
Trīs jautājumi, kas nosaka atdalīšanu
Jautājiet, kam jāspēj lasīt noslēpumu, ko atklāšana ļautu uzbrucējam izdarīt, un vai labojums ir viena atsaukšana vai pakalpojuma pārbūve.
Ja lietotājs to var lasīt un tas pierāda vārtejas identitāti, atbilde uz otro jautājumu ir tāda, ka uzbrucējs var uzdoties par jūsu serveri visu klientu priekšā — tas ir sliktākais iznākums, jo klienti ir veidoti tā, lai uzticētos šai identitātei. Ja tas pierāda tikai vienu lietotāju, atklāšana piešķir šim lietotājam piekļuvi vienam partnerim, un atsaukšana ir parasta darbība. Ja tas ir sertifikācijas iestādes atslēga, atklāšana ir sliktāka par abiem, jo uzbrucējs var radīt identitātes, kurām uzticas katrs galapunkts.
Šīs trīs atbildes dod glabāšanas noteikumu: CA atslēga dzīvo bezsaistē vai seifā, vārtejas atslēga dzīvo uz vārtejas, un lietotāju atslēgas dzīvo pie lietotājiem. Jebkurš izkārtojums, kas visas trīs ērtības dēļ liek vienā direktorijā, ir pārvērtis lēmumu negadījumā.
Kas klientam patiešām vajadzīgs
Klientam vajadzīgs publiskais sertifikāts vai partnera publiskā atslēga, CA materiāls vai pirkstu nospiedums, kuram jāuzticas, sava privātā atslēga un galapunkta informācija. Šajā sarakstā nav nekā, kas piederētu vārtejas privātajai identitātei.
Dokumentācija ir vieta, kur tas noplūst. Rokasgrāmata, kas saka nokopējiet servera direktoriju un izdzēsiet to, kas jums nav vajadzīgs, jau ir iemācījusi nepareizo modeli, jo fails, kas paliek pēc dzēšanas soļa, reti tiek pārbaudīts.
Atsauciet vienu lietotāju, nepieskaroties vārtejai
Tā kā lietotāju identitātes tiek izsniegtas atsevišķi, tās var atsaukt atsevišķi. Uz sertifikātiem balstīta izvietošana atsauc klienta sertifikātu un publicē atjauninātu atsaukšanas sarakstu; WireGuard izvietošana noņem partnera ierakstu no servera konfigurācijas. Neviena no šīm darbībām nemaina pašas vārtejas atslēgu.
Glabājiet izsniegšanas reģistru, citādi nezināsiet, kuru identitāti atsaukt. Izklājlapa ir pietiekama, ja tajā nosaukta persona, ierīce, sērijas numurs vai publiskā atslēga un datums, un ja kāds to uztur pēc tam, kad to izveidojusī persona aiziet.
Tālāk minētās komandas pārbauda klienta sertifikātu un pēc tam atsauc to, izmantojot OpenSSL stila iestādi, kas ir plūsma, ko iesaiņo easy-rsa:
openssl x509 -in client.crt -noout -subject -serial
openssl ca -config openssl.cnf -revoke client.crt
openssl ca -config openssl.cnf -gencrl -out crl.pemPublicējiet jauno sarakstu tur, kur klienti to pārbauda, citādi atsaukšana ir piezīme failā, kas neko nemaina. Ja jūsu vārteja pieņem klienta sertifikātus, neapskatot atsaukšanas sarakstu, sakiet to atklāti, nevis lieciet noprast, ka atsaukšana darbojas.
Glabājiet dublējumkopijas tikpat atsevišķi kā noslēpumus
Pārbūves arhīvā likumīgi ir vārtejas atslēga un CA materiāls, jo bez tiem atjaunošana nevar atjaunot pakalpojumu. Klienta uzstādīšanas paketē to nedrīkst būt, un abus nedrīkst glabāt kopā. Marķējiet katru arhīvu pēc tā, kurš to drīkst glabāt, nevis pēc izveides datuma. Tieši šo marķējumu noguris administrators lasa divos naktī.
Šī atšķirība arī nosaka, kurš drīkst iegūt katru. Vārtejas administrēšana, lietotāju identitāšu izsniegšana un dublējumkopiju lasīšana ir trīs dažādas pilnvaras, un tam, kam vajadzīga viena, automātiski nav vajadzīgas pārējās. Pierakstiet šīs atļaujas un pēc tam pārbaudiet tās pret to, ko jūsu glabātuve patiešām atļauj, jo direktoriju mantojums klusi piešķir vairāk, nekā politika paredz.