Как установить SSL-сертификаты, подписанные CA, в tomcat 8

Как установить SSL-сертификаты, подписанные CA, в tomcat 8

У меня есть 2 сертификата, подписанных CA. Я хочу включить ssl на tomcat, используя эти сертификаты.

Я выполнил следующие команды для создания файла jks и импортировал сертификаты в этот файл jks.

1. keytool -genkey -alias bmark.com -keyalg RSA -keystore keystore.jks
2. keytool -import -alias root -keystore keystore.jks -trustcacerts -file b32dasd75493.crt
3. keytool -import -alias intermed -keystore keystore.jks -trustcacerts -file sf_bundle-g2-g1.crt

И включил https в server.xml tomcat

<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
               maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" keystoreFile="/Users/test/Desktop/keystore.jks" keystorePass="changeme"/>

Запустил tomcat и открыл urlhttps://bmark.com:8080в chrome, но он утверждает, что сертификат CA-signed SSL не является доверенным, утверждает, что он самоподписанный. Мне нужны какие-либо другие файлы, кроме этих? Как мне решить эту проблему?

решение1

Чтобы проверить, правильно ли установлен ответ CA, выполните:

keytool -list -keystore /Users/test/Desktop/keystore.jks -alias bmark.com -v

Он должен показать вам цепочку сертификатов от листа до корня.

В определении соединителя вы не указалипсевдоним ключа, поэтому используется первый найденный сертификат. Измените его на:

<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
           clientAuth="false" sslProtocol="TLS"
           keystoreFile="/Users/test/Desktop/keystore.jks"
           keystorePass="changeme"
           keyAlias="bmark.com" />

или, если вы используетеТомкэт 8.5(вы не должныиспользуйте Томкат 8.0), переключитесь на новую конфигурацию SSL:

<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="150" scheme="https" secure="true" SSLEnabled="true">
    <SSLHostConfig protocols="TLS">
        <Certificate certificateKeystoreFile="/Users/test/Desktop/keystore.jks"
                     certificateKeystorePassword="changeme"
                     certificateKeyAlias="bmark.com" />
    </SSLHostConfig>
</Connector>

Редактировать: Для установки всех трех сертификатов вам просто нужен файл с вашим сертификатом и промежуточными файлами в порядке от основного к корневому и запустить:

keytool -importcert -keystore /Users/test/Desktop/keystore.jks\
-alias bmark.com -file <chain_file> -trustcacerts

или вы можете вставить отдельно от корня к стеблю.

Связанный контент