Naudokite esamą įmonės CA OpenVPN partneriams
Easy-RSA yra patogumas, o ne reikalavimas. Išduokite atskirus vaidmenis, prijunkite pasitikėjimo įvestis, pristatykite tarpinius sertifikatus ir įrodykite, kuriuos partnerius tunelis priima.
OpenVPN aplinkoje niekas nereikalauja, kad sertifikatas būtų iš Easy-RSA, o parkas, kuris jau turi organizacinį PKI, paprastai neturėtų statyti antro. Tikrasis darbas nėra įrankio pasirinkimas, o sprendimas, ką reiškia išduoti identitetai, kuriuos partnerius tunelis priima ir kaip atnaujinimas bei atšaukimas pasiekia tikrintoją. Peržiūrėkite penkis toliau pateiktus veiksmus iš eilės, nes vėlesnis veiksmas negali pataisyti pirmame priimto vaidmens sprendimo.
Išduokite du vaidmenis vietoj vieno bendro identiteto
Kiekvienam partneriui reikia savo sertifikato ir atitinkamo privataus rakto. Paprašykite PKI komandos serverio identiteto su serverio naudojimu ir atskirų kliento identitetų su kliento naudojimu, kad tunelis rankos paspaudimo metu galėtų juos atskirti.
Priešinkitės trumpiniams, kurie atsiranda spaudžiant terminus. Nukopijuotas žiniatinklio serverio raktas į nešiojamuosius kompiuterius ištrina skirtumą, kuriuo grindžiama vaidmens patikra, o VPN galiniame taške įdiegtas CA parašo raktas vieną kompromituotą hostą paverčia kompromituota hierarchija. PKCS12 paketas gali pernešti galinio taško raktą ir jo grandinę, bet niekada nesuteikia leidimo pakartotinai naudoti to identiteto kitame vaidmenyje.
Prijunkite pasitikėjimo įvestis kiekvienoje pusėje
Klientui ir serveriui kiekvienam reikia pasitikėjimo inkaro, savo identiteto ir aiškaus vaidmens lūkesčio. Kliento fragmentas, kuriame nurodyti visi trys, atrodo taip.
client
ca /etc/openvpn/pki/issuing-root.pem
cert /etc/openvpn/pki/device-17.crt
key /etc/openvpn/pki/device-17.key
remote-cert-tls server
verify-x509-name vpn.corp.example name
crl-verify /etc/openvpn/pki/issuing.crlServerio pusė tai atspindi su remote-cert-tls client ir savo sertifikatu, ir būtent tai neleidžia kliento sertifikato priimti kaip serverio. Vardo patikra yra atskiras sprendimas nuo vaidmens patikros. Skaitykite įdiegtą konfigūraciją, kad pamatytumėte, kuris laukas lyginamas, o ne manykite naršyklės stiliaus pagrindinio kompiuterio vardo atitikimą. Abi pusės taip pat turėtų aiškiai nurodyti, kuriuo išdavėju jos pasitiki, nes bendras failo kelias visame parke nėra tas pats kaip bendra politika.
Pristatykite tarpinius sertifikatus neplečiant pasitikėjimo
Dvi pusės neturi dalytis viena išdavimo grandine. Kai partneris pateikia tarpinio išduotą sertifikatą, tikrinančiai pusei reikia to tarpinio, kad jis būtų prieinamas, ir OpenVPN atskiria pasitikėjimo inkaro įvestį nuo papildomų sertifikatų, naudojamų vietoje pateiktai grandinei užbaigti. OpenVPN 2.6 TLS parinkčių žinynas dokumentuoja abu.
Tarpinis CA pats savaime nėra problema, bet į pasitikėjimo rinkinį įmesta plati įmonės šaknis yra. Kuo platesnis inkaras, tuo daugiau sertifikatų praeina grandinės testą, ir vaidmens patikra to nepaverčia įgaliotų darbuotojų sąrašu. Susiaurinkite inkarą iki išdavėjo, kuris iš tikrųjų pasirašo VPN identitetus, kai hierarchija tai leidžia. Jei neleidžia, dokumentuokite platesnį inkarą kaip sąmoningai priimtą riziką, o ne palikite jį numanomą.
Sutarkite su PKI komanda, kaip atnaujinimas ir atšaukimas pasiekia VPN tikrintojus, įskaitant tai, kurie išdavėjai svarbūs ir kas skelbia sąrašą. Sertifikate įterptas CRL platinimo taškas yra nurodymas, o ne įrodymas, kad kas nors jį gavo.
Nuspręskite, kaip atšaukimas iš tikrųjų ateina
crl-verify verčia tikrintoją kreiptis į failą arba galinį tašką, ir tokia tvarka reikia savininko ir atnaujinimo kelio. Vieną kartą diegiant nukopijuotas sąrašas tyliai nustoja jus saugoti, kai sertifikatas pirmą kartą atšaukiamas.
Užrašykite numatomą plitimo laiką ir išbandykite jį sertifikatu, kurį esate pasirengę atšaukti. Jei sąrašo negalima atnaujinti VPN pagrindiniame kompiuteryje, alternatyva yra trumpesnis galiojimo laikotarpis ir atnaujinimo procesas, kuris iš tikrųjų veikia, o ne prielaida, kad atšaukimas veikia, nes egzistuoja URL.
Įrodykite priėmimą tikru klientu
Prijunkite klientą, kuriam turėtų būti leista, ir patvirtinkite suderintas sertifikato detales žurnale. Tada išbandykite atvejus, kurie turi žlugti: kliento sertifikatas, pateiktas kaip serveris, sertifikatas iš išdavėjo, esančio už pasitikėjimo inkaro, ir atšauktas sertifikatas, jei turite vieną atsarginį.
Užrašykite priimtą išdavėją, vaidmens patikrą ir atšaukimo šaltinį šalia profilio. Tas įrašas yra tai, ko reikia kitam inžinieriui, kai praėjusį mėnesį veikęs įrenginys nustoja jungtis, ir tai taip pat įrodymas, kad įmonės CA naudojamas dokumentuotoje priėmimo riboje, o ne kaip bendrosios paskirties pasitikėjimo sąvartynas.