Заедничко CA, одделни врати: една услуга на една датотека за прием
Сертификат што ги поминува проверките на заедничкиот орган не е билет за секоја услуга. Приемот припаѓа во датотека по услуга што ја бара демонот.
Сертификат што се валидира против заеднички орган го поминал тестот на доверба, а не тестот на членство. Овие две одлуки често се спојуваат затоа што двете се случуваат при поврзување, а спојувањето останува невидливо додека во услуга не биде пуштен некој што не треба да биде таму. Решението не е втор орган; тоа е втора одлука, донесена по услуга и запишана таму каде што демонот ја чита. Држете ги двете одделно и најголемиот дел од забуната во оваа област исчезнува.
Доверлив синџир не кажува ништо за членството во услугата
Две услуги можат да прифатат иста издавачка хиерархија, а сепак да имаат различни популации. Еден лаптоп припаѓа на првата и не смее да ја достигне втората, додека други клиенти од истата хиерархија навистина припаѓаат таму. Отстранувањето на органот од таа услуга би ги заклучило сите што ја користат законски, така што работата е прием, а не доверба.
Помага да се замислат два катанеца на една врата. Сертификатот го отвора надворешниот катанец, а одлуката по услуга го отвора внатрешниот; ниту еден не го заменува другиот. Услуга само со надворешен катанец воопшто не спроведува членство, таа само автентификува. Запишете ги двете одлуки пред да смените нешто, зашто политика што постои само во форма на работна врска не може да се ревидира. Следното се однесува на внатрешниот катанец.
Претворете ги изборните препишувања во порта за прием
Директориумот за конфигурација на клиентот обично е погодност: датотеките во него ги препишуваат поставките за клиентите што ги именуваат, а клиент без датотека едноставно работи со стандардните вредности на серверот. Една директива ја претвора таа погодност во порта, така што датотека што недостига значи дека врската е одбиена.
client-config-dir /etc/openvpn/service-a/clients
ccd-exclusive
Заедничкото издание OpenVPN 2.6 ccd-exclusive на својата страница од прирачникот документира токму овој услов, а барањето на именуваната датотека зависи од ефективниот идентитет на клиентот. Другите градби и серверите управувани од производи може да се разликуваат, затоа потврдете ја инсталираната верзија пред да се потпрете на истата семантика на друго место.
Третирајте ја горната патека како пример и проверете го распоредот што е навистина распореден, наместо да создадете директориум што го измислил некој прирачник. Оставете ги постојните проверки на сертификати, проверките на идентитетот на серверот и автентикацијата на сметката точно како што биле, зашто фрагментот додава услов и ништо не отстранува. Подгответе ја промената пред производство, бидејќи одбивање подигнато на погрешно место изгледа како дефект на сертификат и ја насочува истрагата кон органот. Потоа потврдете дека линијата во дневникот за одбиен клиент ја именува датотеката што недостига, а не синџирот.
Еден директориум по услуга, а не еден заеднички список
Членството ѝ припаѓа на услугата што го спроведува, така што секоја услуга го држи својот директориум и своите датотеки. Насочувањето на две услуги кон еден список ги прави да го делат членството без оглед дали некој го сакал тоа или не, а настанатата промена тешко се следи назад до одлука. Заедничкиот орган може да остане заеднички; датотеките за прием не можат. Нивното одвојување исто така значи дека грешка во една услуга не може тивко да прошири друга.
Записот DEFAULT е случајот што ги залажува луѓето. Тој дава резервни поставки кога не се наоѓа именувана датотека, но тоа не е именуваната датотека што ја бара портата, па затоа не може сам да прими клиент. Тестирајте клиент што воопшто нема запис и потврдете го одбивањето; ако тој клиент е примен, резервата се применува и ccd-exclusive не е на сила во таа инстанца.
Ефективниот идентитет одлучува која датотека се чита
Пребарувањето го користи идентитетот со кој клиентот навистина се автентификувал, што обично е заедничкото име на сертификатот. Кога серверот проверува и корисничко име и лозинка и тоа име го пресликува во заедничкото име, датотеката мора да одговара на автентификуваното корисничко име. Несовпаѓањето остава директориум полн со веродостојни имиња на датотеки што никогаш не се избираат.
Читањето е другата половина. Демонот обично се откажува од привилегиите по стартувањето, така што намалената сметка бара пристап за читање до директориумот и секој запис во него. Клиентите не смеат да можат да создадат свој запис преку која било патека што може да се пишува, бидејќи самоуслужниот прием целосно го поништува механизмот. Проверете ги дозволите за монтирање и споделување, а не само режимот на датотеката, бидејќи директориум што изгледа затворен за една сметка може да биде отворен за друга. Потоа потврдете која сметка навистина ја користи процесот што работи, а не која сметка ја спомнува unit датотеката. Двете се исти само кога ништо друго не ги сменило.
Набљудувајте го одбивањето, приемот и отповикувањето одделно
Пробајте идентитет што припаѓа на услугата и потврдете дека се поврзува. Пробајте валиден сертификат без запис и потврдете дека е одбиен. Пробајте идентитет примен во другата услуга и потврдете дека тука не е примен. Запишете ја инстанцата на услугата и ефективниот идентитет покрај секој резултат, бидејќи резултат без тој контекст никој друг не може да го репродуцира.
Повлекувањето е одделна операција од отповикувањето. Уредувањето на датотека за прием отстранува право на една услуга, додека идентитетот останува валиден насекаде на друго место, а компромитиран клуч бара одговор за отповикување од организацијата. Одлучете однапред што се случува со веќе воспоставените сесии, бидејќи ниту уредувањето на директориумот ниту списокот за отповикување не ги завршуваат сами по себе.
Приемот е исто така само првата порта. Приклучувањето кон услуга не кажува ништо за подмрежите, базите на податоци или управувачките интерфејси зад неа, и таа политика за ресурси мора да се напише и тестира одделно.