Повторното издавање на сертификат за преносен компјутер под истото заедничко име изгледа како замена, и сите претпоставуваат дека стариот е мртов. Не е. Претходникот останува валиден сертификат потпишан од истиот орган, и секоја контрола што прима клиенти по име ќе продолжи да го прима. Она што ја раздвојува проверката на идентитет од проверката на пристапните податоци е серискиот број, и токму таму треба да биде поправката.

Започнете со политиката за именување што ја користи серверот

Две контроли се мешаат: примање клиент врз основа на тоа што тврди дека е, и отстранување на еден конкретен сертификат од употреба. Првата е проверка на име, втората е проверка на отповикување. Тие одговараат на различни прашања, и распоредувањето може да има една без другата.

Прочитајте ја конфигурацијата на серверот и забележете кој извор на идентитет е во игра. username-as-common-name го прави автентицираното корисничко име ефективно име за пребарувања специфични за клиентот. Без него се користи заедничкото име на субјектот од сертификатот. Каков и да е одговорот, запишете го пред да допрете било каква дозволена листа.

Двата пата даваат различно множество дозволени имиња за истиот сертификат. Погодувањето овде значи уредување на погрешната датотека и заклучување дека контролата не работи.

Проверете што всушност прима клиент

Поврзан со соодветна датотека client-config-dir обезбедува опции специфични за клиентот; сам по себе тој не е правило за прием. Приемот по име бара ccd-exclusive, што одбива клиенти што немаат соодветна датотека. Вклучувањето на тоа во активен распоред ги исклучува сите чие име нема датотека, затоа избројте ги датотеките пред да префрлите нешто.

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

Бројот е проверката: споредете го списокот на директориумот со идентитетите што очекувате да се поврзат.

Потоа потврдете дека секое име на датотека точно одговара на ефективниот идентитет, вклучувајќи го регистарот и растојанијата. office-laptop наменета датотека не прави ништо за сертификат чиј субјект е наведен како Office-Laptop. Празнините на крајот исто така се кријат од обичен список, и така датотека што изгледа присутна останува нечитана.

Проверете го CRL што го вчитува портата

CRL ги именува отповиканите сертификати по издавач и сериски број, што е деталноста што ѝ недостига на проверката на име. Два сертификати можат да делат заедничко име и да се разликуваат по сериски број, и само список на ниво на сериски број ги раздвојува.

Потврдете ја конфигурираната патека, датумот на издавање и полето за следно ажурирање пред воопшто да му верувате на датотеката.

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

Споредете го серискиот број во CRL со серискиот број на сертификатот што сакате да го задржите. Тоа споредување е целиот тест, и еднаш да го направите со очи вреди повеќе отколку да верувате на скрипта што никој не ја прочитал. Дистрибуирајте го ажурираниот CRL по патеката што портата веќе ја чита. CRL во погрешен директориум не спроведува ништо, и ниту еден клиентски дневник нема да го спомене.

Заменете, потоа докажете ги двата исхода

Издајте ја замената под истото заедничко име, запишете ги двата сериски броја и само тогаш отповикајте го стариот. Тој редослед чува работен идентитет достапен додека ја подготвувате промената.

Прво тестирајте ја замената: таа треба да се автентицира и да стигне до сето она за што нејзиното име има право. Потоа тестирајте го стариот сертификат и потврдете дека е одбиен, бидејќи успешната замена не кажува ништо за отповикувањето. Ако и двата уште се поврзуваат, влезот за отповикување не се чита или стариот сериски број никогаш не бил наведен. Ако ниту еден не се поврзува, сте го скршиле правилото за прием, а не пристапните податоци.

Веќе воспоставените сесии се посебно прашање, бидејќи отповикувањето се однесува на нови автентикации, освен ако портата не е конфигурирана да ги прекинува активните врски. Одлучете дали е потребно веднаш отстранување пред некому да го ветите.

Што проверката на име никогаш не може

Листата на дозволени одговара дали овој идентитет може да се поврзе. Не може да каже кој сертификат го користел тој идентитет, и ќе прими постари пристапни податоци додека тие остануваат валидни и неотповикани. Тој јаз се појавува за време на инцидент, кога замената е издадена пред месеци, а претходникот уште работи.

Каде што е потребна контрола на ниво на сертификат, користете механизам што го именува сертификатот: записи во CRL, или кука за верификација што проверува отпечаток што го одржува операторот. Двете бараат одржување, и двете се искрени за објектот што го испитуваат. OpenVPN 2.6 прирачникот документира crl-verify и прием специфичен за клиентот како одделни опции, токму поради таа причина.

Запишете која контрола која работа ја врши, потоа тестирајте го негативниот случај. Отповикување што никогаш не сте го виделе како одбива врска е конфигурација за која се надевате дека работи.

Поврзани статии