Sjølvsignert eller offentleg CA for ein VPN: kva som faktisk endrar seg
Sjølvsignerte og offentlege sertifikat krypterer ein VPN-tunnel på same måte. Den verkelege skilnaden er kven som garanterer for tenaren, og kven som må stole på den påstanden.
Du kjem til sertifikatsida i eit VPN-oppsett, ser eit gratis sjølvsignert alternativ ved sida av ein betalt offentleg CA, og spørsmålet høyrest ut som eit tryggingsval. Det er eigentleg eit publikumsval. Begge alternativa krypterer tunnelen med dei same primitive byggjeklossane, og begge blir verdilause om den private nøkkelen lek. Det som skil dei, er kven som kjem med påstanden om identiteten til tenaren, og kven som er i stand til å kontrollere den påstanden.
Eit sertifikat gjer to jobbar som blir forveksla
Eit sertifikat bind ein offentleg nøkkel til eit namn, og nøkkelen gjer krypterings- og signeringsarbeidet. Signaturen på sertifikatet er ei eiga fråsegn: ein eller annan styresmakt har kontrollert at namnet høyrer til denne nøkkelinnehavaren. Eit sjølvsignert sertifikat kjem med den fråsegna om seg sjølv, noko som slett ikkje er nokon tredjepartspåstand.
Offentlege nettstadar treng tredjepartsversjonen, fordi besøkjande kjem utan noka førehandstilknyting og er avhengige av tillitslageret til nettlesaren. Ein VPN-klient er ikkje ein framand. Du gjev han CA-sertifikatet, eller festar tenarsertifikatet, inne i profilen han installerer, slik at verifiseringa køyrer mot nøyaktig den styresmakta du valde. Ingen kommersiell CA treng å vere involvert for at den kontrollen skal bety noko.
Styrken i den resulterande økta kjem frå nøkkelstorleiken og chifferpakken, ikkje frå signataren. Derfor er det rett og slett feil å kalle eit sjølvsignert sertifikat "mindre kryptert"; det er mindre breitt garantert, noko som er ein annan eigenskap.
Kvar ein offentleg CA tener inn gebyret sitt
Det klåraste tilfellet er administrasjonssida. Viss kollegaer, entreprenørar eller nokon andre utan ein førebudd profil må opne nettgrensesnittet til VPN-tenaren utan ei nettlesaråtvaring, fjernar eit offentleg betrodd sertifikat den friksjonen. Nettlesaren stolar allereie på signataren, så det er ingenting å importere og ingenting å forklare.
Den bekvemmelegheita har kostnader det er verdt å nemne før du kjøper. Fornying må automatiserast, elles bryt nettstaden saman etter ein plan, offentlege sertifikat eksponerer vertsnamnet i gjennomsiktigheitsloggar for sertifikat, og grenser for utstedingsfart straffar eit skript som prøver for ivrig på nytt. Ingen av desse er grunnar til å unngå ein offentleg CA, men det er driftsarbeid som ein privat CA flyttar ein annan stad.
Det eit offentleg sertifikat ikkje gjer, er å autentisere brukarane dine. Klientidentitet er eit eige vedtak, teke med klient sertifikat, passord eller ein andre faktor, og CA-en som signerer tenaren seier ingenting om kven som har lov til å kople til han.
Kvar ein privat CA passar til ein VPN
For ein privat VPN med eit kjent sett klientar er det det vanlege valet å drive sin eigen CA. Du opprettar CA-en éin gong, signerer tenarsertifikatet med eit namn klientane vil bruke, og distribuerer CA-sertifikatet i kvar profil. Kvar klient verifiserer då tenaren mot styresmakta di, og ingen utanforståande får kjennskap til vertsnamnet.
Kostnadene er reelle, men avgrensa. Nettlesarar vil åtvare når nokon opnar administrasjonssida direkte, fordi nettlesaren ikkje har nokon grunn til å stole på CA-en din. Profildistribusjon blir ein del av onboarding, og å rotere CA-en betyr å røre kvar klient. Det er akseptable prisar for ein teneste med ti eller femti kjende brukarar og smertefulle for eit offentleg endepunkt med tusenvis.
Éin føresetnad gjer heile ordninga gyldig: verifiseringa må skje. Ein klient som er konfigurert til å ignorere sertifikatfeil, godtar kvar ein tenar som presenterer eit kva som helst sertifikat, slik at identitetsgarantien forsvinn medan krypteringa blir verande. Den innstillinga er den eigentlege svakheita i dei fleste historiene om at "sjølvsignert er utrygt".
Den private nøkkelen til CA-en avgjer kva du kan gjere seinare
Overraskinga kjem vanlegvis månader seinare, når du vil leggje til ein eining. Å utstede eit klientsertifikat krev den private nøkkelen til CA-en, og det same gjer produksjonen av ei tilbakekallingsliste. Viss du har arva ein tenar som har sertifikat- og nøkkelfilene, men ikkje CA-nøkkelen, kan du ikkje signere noko nytt. Alternativa dine er å byggje PKI-en på nytt og gje kvar klient eit nytt CA-sertifikat, eller å bytte til passordautentisering, som er ein annan tryggingsmodell og ikkje gjenopprettar det som gjekk tapt.
To mindre feller bur i same område. easy-rsa-skripta går ut frå at du står i katalogen som inneheld dei, så ein feil om manglande fil betyr vanlegvis feil stad og ikkje ein skadd installasjon. Og eit design med berre sertifikat er heilt legitimt: du kan krevje klientsertifikat utan ein førehandsdelt nøkkel, føresett at kvar klient har eitt og tenaren verifiserer kjeda.
Utsted eitt sertifikat per eining i staden for eitt delt klientsertifikat for heile teamet. Ein tapt berbar datamaskin kostar deg då éi tilbakekalling i staden for ein nyutstedelse for alle.
Kontroller kva du har arva
Før du planlegg noka endring, les sertifikatet du allereie har:
$ 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
Viss utstedaren er lik subjektet, er sertifikatet sjølvsignert, noko som er eit designval og ikkje ein feil. Datoane fortel deg når fornying blir nokon sitt problem, og ei vellukka verifisering mot CA-en du har tenkt å levere, stadfestar at kjeda verkar før ein einaste klient prøver ho.
Vel deretter etter publikum og distribusjon: offentleg CA når ukjende nettlesarar må stole på administrasjonssida, privat CA når kvar klient får ein profil du kontrollerer. Ingen av svara er meir kryptert enn det andre.