Å gje ut eit nytt laptop-sertifikat under same vanlege namn kjennest som ei erstatning, og alle reknar med at det gamle er dødt. Det er det ikkje. Føregjengaren blir verande eit gyldig sertifikat signert av same styresmakt, og kvar kontroll som slepp inn klientar etter namn vil halde fram med å sleppe det inn. Det som skil ein identitetssjekk frå ein legitimasjonssjekk, er serienummeret, og det er der rettinga høyrer heime.

Start med namnepolitikken serveren brukar

To kontrollar blir blanda saman: å sleppe inn ein klient fordi han hevdar å vere nokon, og å fjerne eitt bestemt sertifikat frå teneste. Den fyrste er ein namnesjekk, den andre er ein tilbakekallingssjekk. Dei svarar på ulike spørsmål, og ei utrulling kan ha den eine utan den andre.

Les serverkonfigurasjonen og noter kva identitetskjelde som er i spel. username-as-common-name gjer det autentiserte brukarnamnet til det effektive namnet for klientspesifikke oppslag. Utan det blir det vanlege namnet til subjektet frå sertifikatet brukt. Uansett kva svaret er, skriv det ned før du rører noka tillatingsliste.

Dei to vegane gir eit anna sett tillatne namn for same sertifikat. Å gjetta her tyder å redigere feil fil og konkludere med at kontrollen ikkje verkar.

Sjekk kva som faktisk slepp inn ein klient

Ein client-config-dir med ei samsvarande fil gir klientspesifikke val; åleine er han ikkje ein innsleppsregel. Innslepp etter namn krev ccd-exclusive, som avviser klientar som ikkje har ei samsvarande fil. Å slå det på i ei aktiv utrulling koplar frå alle som ikkje har ei fil på namnet sitt, så tel filene før du snur noko.

grep -nE 'ccd-exclusive|client-config-dir|username-as-common-name' /etc/openvpn/server/server.conf
ls -1 /etc/openvpn/ccd/

Talet er sjekken: samanlikn kataloglista med identitetane du ventar skal kople til.

Stadfest deretter at kvart filnamn svarar nøyaktig til den effektive identiteten, inkludert store og små bokstavar og mellomrom. Ei fil for office-laptop gjer ingenting for eit sertifikat der subjektet lyder Office-Laptop. Mellomrom på slutten gøymer seg også for ei vanleg liste, og slik blir ei fil som ser ut til å vere der, verande ulest.

Sjekk CRL-en som gatewayen lastar

Ein CRL namngir tilbakekalla sertifikat etter utferdar og serienummer, og det er detaljnivået ein namnesjekk manglar. To sertifikat kan dele eit vanleg namn og skilje seg i serienummer, og berre ei liste på serienivå skil dei.

Stadfest den konfigurerte stien, utferdingsdatoen og feltet for neste oppdatering før du i det heile stolar på fila.

openssl crl -in /etc/openvpn/crl.pem -noout -lastupdate -nextupdate
openssl x509 -in office-laptop.crt -noout -serial -subject

Samanlikn serienummeret i CRL-en med serienummeret på sertifikatet du vil behalde. Den samanlikninga er heile testen, og å gjere henne éin gong med auga er verdt meir enn å stole på eit skript ingen har lese. Distribuer den oppdaterte CRL-en via stien gatewayen allereie les. Ein CRL som ligg i feil katalog handhevar ingenting, og ingen klientlogg vil nemne han.

Erstatt, og prov deretter begge utfalla

Gje ut erstatninga under same vanlege namn, registrer begge serienummera, og tilbakekall først då det gamle. Den rekkjefølgja held ein fungerande identitet tilgjengeleg medan du førebur endringa.

Test erstatninga fyrst: ho skal autentisere og nå alt namnet har krav på. Test deretter det gamle sertifikatet og stadfest at det blir avvist, fordi ei vellukka erstatning ikkje seier noko om tilbakekalling. Viss begge framleis koplar til, blir ikkje tilbakekallingsinndataa lese, eller det gamle serienummeret vart aldri lista. Viss ingen av dei koplar til, har du øydelagt innsleppsregelen og ikkje legitimasjonen.

Økter som allereie er etablerte, er ei eiga sak, sidan tilbakekalling gjeld nye autentiseringar med mindre gatewayen også er konfigurert til å avslutte levande tilkoplingar. Avgjer om umiddelbar fjerning er nødvendig før du lovar det til nokon.

Kva ein namnesjekk aldri kan gjere

Ei tillatingsliste svarar på om denne identiteten kan kople til. Ho kan ikkje seie kva sertifikat identiteten brukte, og ho vil sleppe inn ein eldre legitimasjon så lenge legitimasjonen blir verande gyldig og ikkje tilbakekalla. Det gapet dukkar opp under ei hending, når erstatninga vart gjeven ut for månader sidan og føregjengaren framleis verkar.

Der kontroll på sertifikatnivå er påkravd, bruk ein mekanisme som namngir sertifikatet: CRL-oppføringar, eller ein verifiseringskrok som sjekkar eit fingeravtrykk operatøren vedlikeheld. Begge kostar vedlikehald, og begge er ærlege om objektet dei granskar. OpenVPN 2.6-handboka dokumenterer crl-verify og klientspesifikk innslepp som separate val, nettopp av den grunn.

Skriv ned kva kontroll som gjer kva jobb, og test deretter det negative tilfellet. Ei tilbakekalling du aldri har sett avvise ei tilkopling, er ein konfigurasjon du håpar verkar.

Relaterte artiklar