Един CA може да подпише два сертификата, които получават една и съща OpenVPN конфигурация за конкретен клиент, и нищо в нито един от двата сертификата не предупреждава никого. Серийните номера се различават, ключовете се различават и пълните субекти също се различават, щом се промени организационна единица. Сървърът определя политиката за всеки клиент чрез едно име и това име е единственото, което трябва да е уникално.

Сървърът определя име, а не сериен номер

При обикновено търсене на сертификат сървърът взема общото име от представения сертификат и търси запис в client-config-dir с това име. Серийният номер никога не влиза в търсенето. Два сертификата, които се различават във всяко поле освен общото име, попадат в един и същ файл, така че втората връзка наследява фиксирания адрес и изпратените маршрути на първото устройство.

Ето как проверката за уникалност от страна на CA минава, докато VPN все още се сблъсква. Двете проверки отговарят на различни въпроси.

Решете какво трябва да бъде ефективното име, преди да подпишете нещо, и го запишете до устройството или акаунта, на който принадлежи. Регистър с име, собственик, предназначение и отпечатък на сертификата покрива повечето внедрявания. Без него архивът на сертификатите е единственият запис кое име на кое устройство принадлежи и този архив не може да различи разрешена подмяна от второ устройство, претендиращо за съществуващо име. Резервирайте името при регистрацията, под ключалка, ако двама оператори могат да издават едновременно.

Кое име всъщност използва съпоставянето

Обикновеното търсене на сертификат използва общото име. Сървър, настроен да съпоставя удостоверено потребителско име, използва вместо това тази стойност, което прави общото име на сертификата без значение за избора на политика. Прочетете работещата конфигурация, за да видите кое съпоставяне е в сила.

Двете съпоставяния могат да присъстват едновременно и тогава резултатът зависи от реда, в който сървърът ги разрешава. Съпоставяне по потребителско име, което се връща към общото име, ще приеме тихо сертификат, който регистърът никога не е одобрявал. Запишете ефективното име до командата, която го е произвела, за да не се налага на следващия оператор да преоткрива реда. Тестването на една връзка за всяко съпоставяне е евтино и решава въпроса.

Каквото и да произведе съпоставянето, това е стойността за резервиране. Резервирането на общи имена в CA, докато сървърът работи с потребителски имена, резервира грешното нещо.

Два CA могат да одобрят едно и също име

VPN услуга може да се доверява на повече от един издаващ орган и всеки орган пази собствена представа кои имена са заети. Два независими CA могат да одобрят едно и също общо име за различни устройства и сървърът приема и двата сертификата без оплакване. Направете опис на всеки орган в доверителния пакет, не само на този, от който обикновено издавате. Отказът се появява първия път, когато се използва сертификат от втория орган.

Същото разсъждение важи за CA, която налага уникалност на пълния субект, а не на общото име.

Два сертификата с общо име, но различни организационни единици имат различни субекти, така че CA не съобщава конфликт, докато сървърът вижда едно име. Проверете настройката, която инструментът ви за издаване действително използва, вместо да предполагате стойност по подразбиране. работата с unique_subject в документацията на openssl ca е съответният ключ там и обвивките около този инструмент обикновено го излагат, вместо да го заменят.

Подновяването е резервирано повторно използване, а не сблъсък

Подновяване, което запазва името, е умишлено повторно използване и регистърът трябва да го каже с прости думи. Запишете стария отпечатък и новия под едно име, за да може рецензентът да различи подмяна от отнемане. Опцията duplicate-cn на сървъра е несвързана: тя управлява едновременни сесии, а не регистрация или резервиране на имена. Решете колко дълго могат да съществуват и двете идентификационни данни и кога старата спира да се приема.

Преди да предадете подмяната, прочетете обратно какво всъщност съдържа сертификатът. Редът на субекта е полето, което сървърът ще съпостави, каквото и да подсказва името на файла.

openssl x509 -in device42.crt -noout -subject -serial -issuer

Отзоваването обикновено идентифицира сертификат под неговия издател, така че пенсионирането на един сериен номер не засяга правилно издадена подмяна от същия орган. Точно това поведение е нужно на чисто подновяване и точно затова отзоваването не може да изчисти име, споделено от две устройства. Проверете ефективното име на политиката и зададения адрес на тестова връзка, преди потребителят да види устройството. След това пенсионирайте старата идентификационна карта нарочно и запишете, че сте го направили.

Подобни статии