Savarankiškai pasirašytas ar viešas CA VPN: kas iš tikrųjų keičiasi
Savarankiškai pasirašyti ir vieši sertifikatai VPN tunelį šifruoja taip pat. Tikrasis skirtumas yra kas garantuoja serverį ir kas turi pasitikėti tuo teiginiu.
Pasiekiate VPN sąrankos sertifikatų puslapį, matote nemokamą savarankiškai pasirašytą variantą šalia mokamo viešo CA, ir klausimas skamba kaip saugumo pasirinkimas. Iš tikrųjų tai auditorijos pasirinkimas. Abu variantai šifruoja tunelį tais pačiais primityvais, ir abu tampa beverčiai, jei privatusis raktas nuteka. Juos skiria tai, kas teigia apie serverio tapatybę ir kas gali tą teiginį patikrinti.
Sertifikatas atlieka du darbus, kurie painiojami
Sertifikatas susieja viešąjį raktą su vardu, o raktas atlieka šifravimo ir pasirašymo darbą. Parašas sertifikate yra atskiras pareiškimas: kokia nors institucija patikrino, kad vardas priklauso šiam rakto savininkui. Savarankiškai pasirašytas sertifikatas tą pareiškimą pateikia apie save patį, o tai visai nėra trečiosios šalies teiginys.
Viešosioms svetainėms reikia trečiosios šalies versijos, nes lankytojai ateina be išankstinio ryšio ir pasikliauja naršyklės pasitikėjimo saugykla. VPN klientas nėra svetimas. Jūs duodate jam CA sertifikatą arba prisegate serverio sertifikatą diegiamo profilio viduje, todėl patikra vyksta būtent prieš jūsų pasirinktą instituciją. Jokia komercinė CA neturi dalyvauti, kad ta patikra ką nors reikštų.
Gautos sesijos stiprumas kyla iš rakto dydžio ir šifravimo rinkinio, o ne iš pasirašančiojo. Todėl vadinti savarankiškai pasirašytą sertifikatą "mažiau užšifruotu" paprasčiausiai neteisinga; jis mažiau plačiai garantuotas, o tai kita savybė.
Kur viešas CA užsidirba savo mokestį
Aiškiausias atvejis yra administravimo puslapis. Jei kolegos, rangovai ar bet kas kitas be paruošto profilio turi atidaryti VPN serverio žiniatinklio sąsają be naršyklės įspėjimo, viešai patikimas sertifikatas pašalina tą trintį. Naršyklė jau pasitiki pasirašančiuoju, todėl nėra ko importuoti ir nėra ko aiškinti.
Tas patogumas turi išlaidų, kurias verta įvardyti prieš perkant. Atnaujinimas turi būti automatizuotas, kitaip svetainė sugenda pagal grafiką, vieši sertifikatai atskleidžia prieglobos vardą sertifikatų skaidrumo žurnaluose, o išdavimo spartos limitai baudžia pernelyg uoliai kartojančią scenarijų. Nė viena iš jų nėra priežastis vengti viešo CA, bet tai operacinis darbas, kurį privati CA perkelia kitur.
Ko viešas sertifikatas nedaro, tai autentifikuoja jūsų vartotojus. Kliento tapatybė yra atskiras sprendimas, priimamas kliento sertifikatais, slaptažodžiais ar antruoju veiksniu, o serverį pasirašanti CA nieko nesako apie tai, kam leidžiama prie jo prisijungti.
Kur privati CA tinka VPN
Privačiam VPN su žinomu klientų rinkiniu įprastas pasirinkimas yra valdyti savo CA. CA sukuriate vieną kartą, pasirašote serverio sertifikatą vardu, kurį naudos klientai, ir paskirstote CA sertifikatą kiekviename profilyje. Tada kiekvienas klientas tikrina serverį pagal jūsų instituciją, ir jokia išorinė šalis nesužino prieglobos vardo.
Išlaidos realios, bet ribotos. Naršyklės įspės, kai kas nors atidarys administravimo puslapį tiesiogiai, nes naršyklė neturi priežasties pasitikėti jūsų CA. Profilių platinimas tampa įvedimo dalimi, o CA keitimas reiškia kiekvieno kliento prisilietimą. Tai priimtinos kainos paslaugai su dešimčia ar penkiasdešimčia žinomų vartotojų ir skaudžios viešam galiniam taškui su tūkstančiais.
Viena sąlyga daro visą sutvarkymą galiojantį: patikra turi įvykti. Klientas, sukonfigūruotas ignoruoti sertifikato klaidas, priima bet kurį serverį, pateikiantį bet kokį sertifikatą, todėl tapatybės garantija išnyksta, o šifravimas lieka. Tas nustatymas yra tikrasis silpnumas daugumoje istorijų apie "savarankiškai pasirašytas yra nesaugus".
CA privatusis raktas nusprendžia, ką galėsite daryti vėliau
Staigmena paprastai ateina po mėnesių, kai norite pridėti įrenginį. Išduodant kliento sertifikatą reikia CA privataus rakto, o sudarant atšaukimo sąrašą taip pat. Jei paveldėjote serverį, kuris turi sertifikato ir rakto failus, bet neturi CA rakto, negalite pasirašyti nieko naujo. Jūsų pasirinkimai yra atstatyti PKI ir duoti kiekvienam klientui naują CA sertifikatą arba pereiti prie slaptažodžio autentifikavimo, o tai kitas saugumo modelis ir neatkuria to, kas prarasta.
Toje pačioje teritorijoje gyvena du mažesni spąstai. easy-rsa scenarijai daro prielaidą, kad stovite kataloge, kuriame jie yra, todėl trūkstamo failo klaida paprastai reiškia neteisingą vietą, o ne sugadintą diegimą. Ir dizainas tik su sertifikatais yra visiškai teisėtas: galite reikalauti kliento sertifikatų be iš anksto bendrinamo rakto, jei kiekvienas klientas turi vieną ir serveris tikrina grandinę.
Išduokite vieną sertifikatą vienam įrenginiui, o ne vieną bendrą kliento sertifikatą visai komandai. Tada pamestas nešiojamasis kompiuteris jums kainuos vieną atšaukimą, o ne pakartotinį išdavimą visiems.
Patikrinkite, ką paveldėjote
Prieš planuodami bet kokį pakeitimą, perskaitykite sertifikatą, kurį jau turite:
$ openssl x509 -in server.crt -noout -subject -issuer -dates
subject=CN = vpn.example.net
issuer=CN = vpn.example.net
notAfter=Nov 3 09:00:00 2027 GMT
$ openssl verify -CAfile ca.crt server.crt
server.crt: OK
Jei išdavėjas lygus subjektui, sertifikatas yra savarankiškai pasirašytas, o tai dizaino pasirinkimas, ne defektas. Datos pasako, kada atnaujinimas taps kažkieno problema, o sėkminga patikra pagal CA, kurią ketinate siųsti, patvirtina, kad grandinė veikia anksčiau, nei bent vienas klientas ją išbandys.
Tada rinkitės pagal auditoriją ir platinimą: viešas CA, kai nežinomos naršyklės turi pasitikėti administravimo puslapiu, privati CA, kai kiekvienas klientas gauna jūsų kontroliuojamą profilį. Nė vienas atsakymas nėra labiau užšifruotas už kitą.