У меня есть 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
или вы можете вставить отдельно от корня к стеблю.