Для обновления сертификата SSL требуется новый CSR

У меня есть работающее приложение Tomcat на Centos, которое использует сертификат SSL, срок действия которого скоро истечет.

У меня есть создал CSR с помощью keytool:

keytool -certreq -keyalg RSA -alias my_alias -keystore keystore.jks -file nov19.csr

Затем вставил CSR в Gandi, чтобы получить новый сертификат SSL.

Однако теперь Ганди настаивает на том, чтобы я предоставил свежий (то есть отличный от последнего обновления) CSR.

Насколько я понимаю, это означает, что мне нужно создать новую пару закрытого / открытого ключей - это правильно?

Как мне сделать это, не прерывая доступ к приложению?

0
задан 12 November 2019 в 23:25
2 ответа

Да, нужно сгенерировать новую пару ключей.

Для того, чтобы прервать минимальный сервис, поместите пару ключей в новое клавиатурное хранилище, позаботившись об использовании того же псевдонима, что и раньше. После получения нового сертификата просто переключите файлы клавиатуры на диске.

Tomcat не будет сразу же перезагружать файл. Для того, чтобы спровоцировать перезагрузку, необходимо получить доступ к экземпляру Tomcat через JMX. Если вы можете получить доступ к серверу с помощью ssh и X переадресации, просто запустите:

jconsole

с учетными данными пользователя Tomcat. Вам нужно найти на вкладке MBeans боб, который называется как Catalina:type=ThreadPool,name="jsse-nio-443" и выполнить операцию reloadSslHostConfigs.

Если вы не можете использовать jconsole, есть и другие способы доступа к JMX (в Tomcat Manager также есть сервлет JMXProxy).

0
ответ дан 4 December 2019 в 23:56

Старый сертификат будет продолжать работать до истечения срока его действия. Ваш новый сертификат будет иметь некоторые перекрытия по сроку действия с момента его создания до истечения срока действия старого сертификата (если вы создадите его вовремя).

По сути, вы захотите заставить веб-приложение использовать новый сертификат вместо старого в определенный момент времени - предпочтительно в период с меньшим трафиком. Я не эксперт в хранилищах ключей Tomcat и Java, но подозреваю, что вы можете заставить веб-приложение искать сертификат с другим псевдонимом в том же хранилище ключей; заменить псевдоним, указывающий на старый сертификат, на другой, указывающий на новый сертификат в хранилище ключей; или заменить весь хранилище ключей на новый. Скорее всего, вам нужно будет перезагрузить или перезапустить веб-приложение после внесения этого изменения.

0
ответ дан 4 December 2019 в 23:56

Теги

Похожие вопросы