Выполнить:
keytool -genkey -keyalg RSA -keystore Jenkins.jks -alias [Name of website] -keysize 2048
Ответьте на вопросы, помня, что First and last name
- это URL-адрес веб-сайта и должен быть в нижнем регистреПример:
build.jenkins-ci.org
State or province
не может быть сокращено.
Run:
keytool -certreq -Keystore jenkins.jks -alias [Name of website] -file jenkins.csr -keysize 2048
Отправьте Jenkins.csr
вашему поставщику сертификатов и запросите сертификат PKCS # 7который имеет расширение .p7b
и начинается с:
-----BEGIN PKCS #7 SIGNED DATA-----
Примечание. Пробные сертификаты обычно недоступны в формате .p7b
, но вы можете комбинировать файлы .cer
с помощью этого инструмента, который сообщилуспех, но у меня не получилось.(https://www.sslshopper.com/ssl-converter.html)
Выполнить:
keytool -import -trustcacerts -file jenkins.p7b -keystore jenkins.jks -alias [Name of website]
Заменить узел arguments
в Jenkins.xml следующим образом.
<arguments>-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" --httpPort=-1 --httpsPort=443 --httpsKeyStore="%BASE%\Cert\Jenkins.jks" --httpsKeyStorePassword=[Cert password from step 1]</arguments>
Устранение неполадок:
- Если Jenkins не запускается, прочитайте последние строки из
Jenkins.err.log
. - Если Jenkins не запустился из-за проблемы с
Jenkins.xml
, замените символы –
(странный дефис Windows)с фактическим -
(дефис ASCII). - Если Jenkins запускается, но сертификат по-прежнему читается как плохой, убедитесь, что
[Name of website]
является фактическим URL-адресом без примера https:
: https://build.jenkins-ci.org
будетbuild.jenkins-ci.org
. - Если проблема не в этом, проверьте файл
.jks
, используя KeyStore Explorer
. «Иерархия сертификатов» должна показать, что каждый сертификат вложен в другой; это иллюстрирует цепочку сертификатов.Если он показывает сертификаты рядом друг с другом, значит, он неверен. - Если он не запускается на конкретном порту, например, 443. Убедитесь, что IIS или другое приложение в данный момент не использует этот порт.
- Если вы видите сайт на ПК, на котором он размещен, но не на другом ПК, тотогда убедитесь, что вы не заблокированы брандмауэром.