Navodila za izvedbo: ločena uvedba dveh strank OpenVPN
Dve stranki na enem gostitelju OpenVPN potrebujeta ločene poslušalce, bazene, datoteke zaupanja in dostavo preklica, skupaj s sprejemnim testom, ki ju ločuje.
Dve stranki na enem gostitelju zvenita kot še en strežniški blok in druga vrata. Postane drug projekt, ko naštejete vse, kar stranka v resnici ima: poslušalec, bazen tunelov, identiteta, datoteke zaupanja, poti in urnik preklica. Izpustite eno od tega in druga stranka tiho podeduje del prve. Za vsako stranko ustvarite kartico in jo izpolnite, preden se poveže prvi odjemalec.
Vsaki stranki dodelite popolno kartico virov
Rezervirajte celoten nabor skupaj: javna vrata, podomrežje tunela, pot konfiguracije, cilj dnevnikov, ime primerka storitve in naprava. Poimenovanje kot skupina je tisto, kar prepreči klasično kopijo delujoče datoteke, ki še vedno vsebuje bazen ali vmesnik prve stranke. Vrednosti so primeri, ne rezervirana vrata, zato preverite, kaj gostitelj že uporablja. Storitev, ki se zažene, ni isto kot popolna stranka.
Kartico hranite ob konfiguraciji in jo posodobite vsakič, ko se vrednost spremeni. Dokumentacija, ki se oddalji od resničnosti, je slabša kot nobena.
Gradivo zaupanja hranite znotraj vsake stranke
Ločen izdajateljski organ za vsako stranko olajša razmišljanje o meji in hrani podpisni ključ stran od gostitelja, izpostavljenega internetu. Skupna korenina lahko tudi deluje, a skupno sidro ne spremeni dveh storitev v eno domeno članstva. Odločite se, katere verige sprejema vsak poslušalec in katere identitete odjemalcev pooblašča, nato zapišite oboje. Ne odstranjujte potrdil iz verige s poskusi in napakami, dokler se nekaj ne poveže.
Lastni zasebni ključ strežnika spada v zaščiteno datoteko za vsako stranko, ne v imenik predlog, ki se replicira skupaj s konfiguracijo.
Ločite omrežja tako kot procese
Dva procesa na dveh vratih si še vedno delita gostitelja in usmerjevalno tabelo, če ju ne ločite. Potrdite, kaj posluša, preden zaupate zasnovi.
ss -lunp | grep -E '1194|1195'
openssl verify -CAfile customer-a/ca.crt customer-a/client.pemPreverjanje poslušalca pokaže, kateri proces ima v lasti vsaka javna vrata, preverjanje pa pokaže, ali se potrdilo odjemalca veriži na predvideno sidro. Noben izhod ne dokazuje, da odjemalec A ne more doseči podomrežja B, zato določite politiko vira in cilja, povratne poti in vsako namerno skupno storitev. Omrežni imenski prostori ali vsebniki ločujejo kontekste usmerjanja in zmanjšujejo naključno mešanje, vendar so niso popolna meja najemnika sami po sebi. Izberite močnejši mehanizem izolacije, ko to zahteva model groženj.
Dostavite preklic pred predajo
Uvedba potrdila ni popolna, dokler preklic nima poti dostave. Preverite izdajatelja CRL in okno veljavnosti kot del uvajanja.
openssl crl -in customer-a/crl.pem -noout -lastupdate -nextupdate
systemctl status openvpn@customer-aPregled CRL poroča, kdaj je bil seznam izdan in kdaj poteče, stanje storitve pa potrjuje, da primerek, ki ga bere, deluje. Osvežite seznam po urniku izdajateljske politike tudi kadar ni bilo nič novega preklicano, ker lahko potekel CRL zavrne vsakega odjemalca. Objavite popolno datoteko, namesto da bi bralci naleteli na delni zapis, in pred uvedbo preverite podpis. Zabeležite, kdo ima v lasti izdajo, delovanje končne točke in upokojitev, da zaustavitev stranke A ne moti B.
Nato zaženite sprejemni par: dovoljeni odjemalec doseže svojo storitev, poverilnica A pa je zavrnjena s strani poslušalca B. To je meja, izražena kot test.