Как установить / обновить / обновить сертификат SSL в Tomcat
Я собираюсь установить / обновить / обновить сертификат SSL на одном из серверов, который имеет следующую конфигурацию
Информация о сервере: Версия сервера: Apache Tomcat/6.0.35 Версия ОС: Linux 2.6.18-371.6.1.el5 Архитектура: amd64 Версия JVM: 1.6.0_30-b30 JVM Поставщик: Sun Microsystems Inc. Расположение Tomcat: /user/local/apache-tomcate-6.0.35
Сгенерируйте новый запрос сертификата SSL: 1. Я создал хранилище ключей с именем папки (/user/local/apache-tomcate-6.0.35/keystore)
Чтобы создать ключ:
sudo keytool -storepass keypassword -keyalg RSA -keysize 2048 -keystore mydomain.keystore -genkey -alias mydomain
Чтобы создать запрос SSL-сертификата:
sudo keytool -storepass keypassword -keystore mydomain.keystore -certreq -keyalg RSA -file mydomain.csr -alias mydomain.com
После успешного выполнения обеих команд я получил папку с хранилищем двух файлов - mydomain.keystore - mydomain.csr
Следующие файлы вложены в письмо, которое я получил вчера
- Cabundle.cert (Что это? Нет упоминаний об этом в вики)
- Zip-файл а. mydomain.crt b. root_certificate.crt c. Trend_Micro_CA.crt d. Affirmtrust_Networking.crt
Установка сертификата:
Согласно информации из другого источника, я скачал два других файла в папку хранилища ключей.
- http://secure.globalsign.net/cacert/ct_root.der
- http://secure.globalsign.net/cacert/sureserverEDU.pem
Импортируйте корневой сертификат ct_root.der: [root@ mydomain keystore]#
sudo keytool -keystore mydomain.keystore -storepass keypassword -importcert -file ct_root.der -trustcacerts -alias globalsignroot
Результат: сертификат уже существует в общесистемном хранилище ключей CA под псевдонимом <3getcybertrustsolutionsincgtecybertrustglobal root>Вы все еще хотите добавить его в свое собственное хранилище ключей? [нет]: да Сертификат был добавлен в хранилище ключей
- Импортируйте верный сертификат об образовании сервера 'sureserverDDU.pem': [root@ mydomain keystore]#
sudo keytool -keystore mydomain.keystore –storepass keypassword -importcert -file sureserverEDU.pem -trustcacerts -alias sureserveredu
Результат: сертификат был добавлен в хранилище ключей
- Импортировать сертификат из электронной почты: согласно вики мне нужно импортировать файл certificate.pem {{{
sudo keytool -keystore mydomain.keystore -storepass keypassword -alias mydomain -import -file mydomain.pem
}}}. В полученном письме нет файла.pem, и если я запускаю [root @ mydomain keystore] #sudo keytool -keystore mydomain.keystore -storepass keypassword -alias mydomain -import -file mydomain.crt
, Я получаю ошибку,
Ошибка Keytool: java.lang.Exceptoin: не удалось установить цепочку из ответа
Проблема:
Вот где я застрял и не знаю, что делать, я предполагаю, что мне нужно создать chain.pem со всеми полученными сертификатами внутри. Если это так, то в каком порядке я должен копировать и вставлять сертификаты?
Честно говоря, я не хочу пробовать что-либо, в чем я не уверен, потому что это живой сервер.
Я буду очень признателен, если кто-нибудь сможет мне помочь / предоставить инструкции о том, как пройти шаг 5 для успешной установки сертификата. Я также запутался, что такое cabundle.crt, что идет с электронной почтой.
Заранее спасибо.
1 ответ
Заметьте, что я опускаю часть "sudo" в каждой команде.
Примечание. Из соображений безопасности не рекомендуется использовать такие команды с -password mypassword
часть, поскольку они могут быть сохранены в вашем файле истории команд.
Ваша команда импорта могла быть неудачной из-за формата ввода mydomain.crt. Проверьте, есть ли у вас формат PEM или DER:
openssl x509 -in mydomain.crt -inform DER
Если произойдет сбой, возможно, он уже в формате PEM, но если нет, то вывод этой команды - это то, что должен быть задан keytool, но вместо этого вы должны использовать всю цепочку.
Cabundle.cert
мог бы уже всю цепочку в порядке. Сделать
grep CERTIFICATE Cabundle.cert
и проверьте, есть ли 2-4 блока BEGIN CERTIFICATE
- END CERTIFICATE
, Если это так, сделайте копию файла и отредактируйте его, чтобы удалить "атрибуты мешков", которые они иногда включают перед каждым сертификатом, который не сочетается с командами импорта. Просто оставьте тарабарщину между линиями BEGIN и END (включая их). Если нет, создайте свой собственный цепочечный файл, объединяющий такие блоки из вашего сертификата, ЦС эмитента и т. Д. До корневого ЦС.
Ваш файл должен выглядеть так:
----BEGIN CERTIFICATE----
MIEooujfalsdlflasdl
....
----END CERTIFICATE----
----BEGIN CERTIFICATE----
MIEooujfalsdlflasdl
....
----END CERTIFICATE----
----BEGIN CERTIFICATE----
MIEooujfalsdlflasdl
....
----END CERTIFICATE----
Повторите последнюю команду импорта с новым файлом:
keytool -keystore mydomain.keystore -alias mydomain -import -file CertificateChain.pem