Спрете един клиент на OpenVPN, без да отменяте сертификата му
Временната блокировка е за сървъра, не за регистъра на CA. Използвайте директивата disable за конкретния клиент, прекратявайте активните сесии и отменяйте само при компрометиране.
Когато лаптоп отиде за седмица на ремонтна маса, обичайният импулс е да се премахне сертификатът му от CA. Този запис е регистърът на издателя, а не временен ключ за достъп. OpenVPN вече има механизъм за всеки отделен клиент за отказ на връзка и използването му запазва историята на CA непокътната. Двете контроли отговарят на различни въпроси и смесването им създава работа, когато устройството се върне.
Два записа, две различни задачи
Базата данни на CA записва какво е подписал издателят и какво е отменил по-късно. Към нея се обръщат процесите по отмяна и всичко, което чете CRL или собственото си копие на регистъра. Правилото за достъп живее на сървъра и се прилага за връзките, които този сървър приема.
Изтриването на запис за издаване не отменя сертификата надеждно и поврежда историята, от която зависят по-късната отмяна или одитът. Контролът от страна на сървъра е по-тесен и обратим. Запишете разликата в бележката за промяната, за да не търси следващият човек отмяна, която никога не се е случила.
Поставете директивата за деактивиране в правилния файл
За общностен сървър, който използва конфигурация за конкретен клиент, документираната директива disable отказва един избран клиент. Тя принадлежи във файла на този клиент под активната client-config-dir, а не в основната конфигурация на сървъра. Потвърдете директорията, която работещият демон реално използва, а след това потвърдете самоличността, която избира файла. Файл, именуван по грешно общо име, изглежда правилен и никога не се чете.
disable
Изборът на съпоставяне има значение тук. Опции като username-as-common-name променят коя самоличност използва търсенето, така че файл, именуван по субекта на сертификата, може да не е приложеният. Четете справката за OpenVPN за инсталираната версия, вместо да предполагате, че дадена директива е валидна във всеки контекст.
Отделете новия достъп от активните сесии
Отказът на следващото ръкостискане не прекратява тунел, който вече е установен. Ако устройството трябва да бъде изключено сега, използвайте също разрешения път за управление на сесии на сървъра за тази конкретна сесия. Иначе клиентът може да продължи да работи, докато сам се свърже отново, а затварянето на капака на лаптопа или излизането от клиента е действие от страна на клиента, което не ви казва нищо за сървъра.
Проверете и двата резултата: активната сесия спира, когато го искате, и ново ръкостискане се отказва. Затворен прозорец на клиента не доказва нищо за политиката на сървъра.
Ако разгръщането няма поддържан начин за прекратяване на активна сесия, запишете тази липса, вместо да измисляте такъв. Блокиран порт на клиента не е същото като политика от страна на сървъра.
Паузата и компрометирането са различни събития
Загубен или откраднат ключ е събитие на отмяна и локална пауза на достъпа не го замества. Други сървъри, които се доверяват на същия CA, няма да споделят това правило за конкретен клиент. Следвайте процеса на отмяна и замяна на издателя и пазете базата данни на CA като авторитетен запис. Временната пауза, за разлика от това, изисква документирана причина и стъпка за възстановяване.
Когато достъпът бъде възстановен, премахнете ограничението чрез компонента, който го притежава, и потвърдете, че нова връзка успява. Запишете и пътя до реда disable, защото по-късна синхронизация на конфигурацията може тихо да го върне. Пазете паузата, нейния собственик и датата в бележките за разгръщане, така че следващият администратор да не намери необяснен ред disable месеци по-късно.