Divi direktoriji, kas mācību materiālā izskatās līdzīgi, veic pilnīgi atšķirīgus darbus. Viens satur sertifikācijas iestādi: tās privāto atslēgu, sērijas numuru skaitītāju un visu parakstītā ierakstu. Otrs satur to, kas dēmonam nepieciešams, lai startētu un apkalpotu klientus. Abu izvietošana vienā saimniekā zem viena konta ir ērta vienai pēcpusdienai un dārga visā pārējā izvietošanas mūžā, jo dēmons tad darbojas līdzās vienīgajai atslēgai, kas var radīt jebkuru vēlamo identitāti.

Kas ir CA darbvietā

PKI direktorijs ir izsniedzēja stāvoklis, nevis konfigurācija. Tajā ir CA privātā atslēga un sertifikāts, sērijas numura fails, izsniegto sertifikātu indekss un katras identitātes materiāls, kas no tiem izgatavots.

Pieprasījuma parakstīšana maina šo stāvokli, tāpēc darbvieta pieder administratora pārvaldītam kontam saimniekā, kur VPN pakalpojums nedarbojas. Ikviens, kas var nolasīt CA privāto atslēgu, var izsniegt sertifikātu, kam serveris uzticēsies, tāpēc atslēgas aizsardzība ir viss uzticēšanās modelis vienā failā. Tās kopēšana uz otru vietu, lai ietaupītu soli, rada otru lietu, kas jāsargā, un otru, ko aizmirst. Katrs paraksts arī palielina sērijas numuru un pievieno ierakstu indeksam, tāpēc darbvieta ir viena stāvokļa kopija, nevis failu mape.

CA publiskais sertifikāts ir citāds. Tas ir paredzēts izplatīšanai, un to klienti un serveri izmanto, lai pārbaudītu viens otru.

Ko dēmons nolasa startējot

Darbojošs serveris patērē nelielu kopumu: savu sertifikātu, savu privāto atslēgu, CA sertifikātu partneru pārbaudei un jebkuru atslēgu materiālu, ko prasa izvēlētais režīms. Šos ceļus tas nolasa startēšanas laikā un vēlreiz pārlādējot.

Īpašumtiesības jāvērtē pret vienību, kas faktiski startē, nevis pret interaktīvu root čaulu. Deklarētā smilškaste var padarīt daļu failu sistēmas tikai lasāmu vai neredzamu pat tad, ja manuāls tests kā root izdodas.

systemctl show -p User -p Group -p ReadOnlyPaths [email protected]
stat -c '%a %U:%G' /etc/openvpn/server/server.key
runuser -u openvpn -- test -r /etc/openvpn/server/server.key; echo $?

Trešo rindu cilvēki izlaiž. Tā jautā pašam dēmona kontam, vai tas var nolasīt atslēgu, un tā ir vienīgā jautājuma versija, kam ir nozīme pēc privileģiju nomešanas. Nulles izvade kā root neko nepasaka par to, kas notiek pēc nomešanas.

Abus kļūdu ceļus ir vērts atdalīt pirms jebkādu atļauju maiņas. Parakstīšanas kļūda norāda uz PKI direktoriju, tā vecākdirektoriju meklēšanas atļauju un kontu, kas palaiž izsniedzēju. Startēšanas kļūda norāda uz vienību, tās darba direktoriju un ceļiem, kas nosaukti servera konfigurācijā. Visa koka padarīšana lasāmu visiem neatrisina nevienu no tiem un noņem robežu, no kuras abi ir atkarīgi.

Kāpēc CA atslēgas kopēšana uz serveri vēlāk neizdodas

Kopija parasti sākas kā atkļūdošanas solis: kāds vēlas atjaunot klientu VPN saimniekā, tāpēc CA atslēga nonāk /etc/openvpn un atjaunošana darbojas. Tūlītējais uzdevums izdodas, un robeža ir pazudusi.

Tad serveris tiek dublēts, un parakstīšanas iestāde pievienojas dublējumiem. Momentuzņēmums, atbalsta pakete vai konfigurācijas direktorija kopija tagad nes iespēju izsniegt uzticamas identitātes, kamēr vien CA ir derīgs. Kam šī kopija ir, tas var radīt sertifikātu jebkuram servera pieņemtam vārdam, tostarp vārdiem, kas nekad netika izsniegti. Vienīgais šīs izsniegšanas ieraksts ir tas, ko viņi izvēlas paturēt.

Atgūšanās no šā stāvokļa nav faila dzēšanas jautājums. Jums jāizlemj, vai atslēga tika atklāta, jārotē CA, ja tā notika, un jāpārdala uzticēšanās katram partnerim. Atsevišķa darbvieta izvairās no visas sarunas.

Konti, direktoriji, dublējumi

Dodiet izsniedzējam savu kontu un mājas direktoriju, tālu no VPN saimnieka, kur tas ir praktiski. Dodiet dēmonam citu kontu ar lasīšanas piekļuvi izvietotajam materiālam un rakstīšanas piekļuvi nekam, kas izsniedz sertifikātus. Izvietojiet, kopējot publiskos sertifikātus uz āru un nekad nevelkot izsniedzēja privāto stāvokli uz iekšu. Dublējiet abas lomas atsevišķi, jo to jutīgums un atjaunošanas stāsti atšķiras.

Pēc atsaukšanas atjauniniet CRL failu, ko nosauc servera konfigurācija, un pēc tam pārlādējiet pakalpojumu, lai jaunie savienojumi to nolasītu. Easy-RSA dokumentācija aptver darbvietas izkārtojumu un parakstīšanas plūsmu; īpašumtiesību noteikumi ap to joprojām ir lēmums par jūsu saimnieku. Pārbaudiet, ko pakalpojums ielādēja, ar openssl crl -in /etc/openvpn/crl.pem -noout -lastupdate -nextupdate tā vietā, lai pieņemtu, ka pārlāde to paņēma.

Tests, kas pierāda atdalīšanu

Pārbaudiet negatīvo gadījumu, ne tikai darbojošos. Parakstiet sertifikātu no izsniedzēja konta, kā paredzēts, pēc tam apstipriniet, ka tas pats konts nevar palaist pakalpojumu un nolasīt servera privāto atslēgu. Pēc tam apstipriniet, ka dēmona konts nevar nolasīt CA privāto atslēgu.

Šīs trīs pārbaudes aizņem dažas minūtes un pārdzīvo personāla maiņu, jo tās ir apgalvojumi par atļaujām, nevis par ieradumu. Pierakstiet rezultātu ar ceļiem un kontiem, ko tas aptvēra, un datumu, kad tās veicāt. Nākamais cilvēks, kas pārņems šo izvietojumu, citādi atkal atvasinās robežu no mācību materiāla, kurā tās nekad nebija. Datēts ieraksts ir arī tas, kas ļauj nākamajai pārbaudei aizņemt minūtes, nevis pēcpusdienu.

Saistītie raksti