Желая перейти к новому Центру сертификации, я хочу разрешить старым клиентам подключаться к VPN на некоторое время перекрытия. Могу ли я сделать это без запуска отдельных экземпляров OpenVPN?
Я вижу, что могу иметь несколько сертификатов ЦС с параметром конфигурации capath
. Но при этом я все еще получаю сообщение об ошибке на стороне сервера:
VERIFY ERROR: depth=0, error=unable to get local issuer certificate:
Похоже, что помимо нескольких сертификатов CA, мне также нужно поддерживать несколько сертификатов сервера (эмитента), как дополнительные сертификаты
опция не совсем подходит для этого. Я не хочу подписывать сертификат одного сервера с двумя разными центрами сертификации .
Как я могу поддерживать клиентов с сертификатами от двух разных центров сертификации в OpenVPN?
проверка клиента
Вы можете указать ссылку на файл ca <путь к файлу>
в конфигурации или вы можете встроить сертификат в
прямо в файле конфигурации. В обоих вариантах может быть более одного сертификата (включая сертификат CA).
Обычно у вас есть такая структура:
-----BEGIN CERTIFICATE-----
... base64 encoded CA cert ...
-----END CERTIFICATE-----
Вы можете легко иметь два сертификата CA, один из которых будет следовать непосредственно за другим:
-----BEGIN CERTIFICATE-----
... base64 encoded CA cert ...
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
... base64 encoded CA cert ...
-----END CERTIFICATE-----
Оба будут будут приняты для проверки клиента.
проверка сервера
Если вы меняете CA для клиентов, вопрос будет в том, что насчет сертификата сервера.
Есть не повлияет на сертификат сервера, поэтому проблем не ожидается.
Это может быть немного сложно, поскольку для сервера может быть только один сертификат. После переключения на новый ЦС «старые» клиенты не увидят его как доверенного. Если у вас есть собственный ЦС, вы можете подписать крестиком (по крайней мере временно) и «поделиться» этим сертификатом ЦС с клиентами, используя опцию cert
(дополнительный сертификат, как в части «проверка клиента»), чтобы они увидели это как доверенный сертификат.
Если вы не можете использовать крестик или просто не хотите этого делать, «старые» клиенты все равно могут использовать собственный ключ / сертификат для аутентификации, но им придется переключить CA cert (сертификат, используемый для подтверждения доверия удаленной стороны). Поскольку сертификат может быть общедоступным (ключ должен быть защищен), вы можете опубликовать новый сертификат, и клиент сможет загрузить его даже "небезопасным" способом / без подключения к VPN.