У меня есть дешевый SSL-сертификат, который я хочу настроить с помощью Tomcat 8.0.26.
Я запускаю эту команду в Linux для создания хранилища ключей:
[root@ cert]# keytool -import -alias root -keystore tomcat.jks -trustcacerts -file AddTrustExternalCARoot.crt
Enter keystore password:
Re-enter new password:
Certificate already exists in system-wide CA keystore under alias <addtrustexternalroot>
Do you still want to add it to your own keystore? [no]: yes
Certificate was added to keystore
[root@ cert]# keytool -import -alias intermediate1 -keystore tomcat.jks -trustcacerts -file COMODORSAAddTrustCA.crt
Enter keystore password:
Certificate was added to keystore
[root@ cert]# keytool -import -alias intermediate2 -keystore tomcat.jks -trustcacerts -file COMODORSADomainValidationSecureServerCA.crt
Enter keystore password:
Certificate was added to keystore
[root@ cert]# keytool -import -alias tomcat -keystore tomcat.jks -trustcacerts -file www_some_domain_com.crt
Enter keystore password:
Certificate was added to keystore
[root@ip-172-31-28-148 cert]#
Я обновил server.xml
<Connector port="8443" protocol="HTTP/1.1"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
keystoreFile="/opt/apache-tomcat-8.0.26/cert/tomcat.jks"
keystorePass="pass"
sslEnabledProtocols="TLSv1.2,TLSv1.1,TLSv1"
clientAuth="false" sslProtocol="TLS" />
Я обновил web.xml для перенаправления SSL-соединений.
<security-constraint>
<web-resource-collection>
<web-resource-name>Entire Application</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
Но когда я открываю веб-страницу, я получаю
Произошла ошибка при подключении к some_domain.com:8443. Невозможно безопасно обмениваться данными с одноранговым узлом: нет общих алгоритмов шифрования. (Код ошибки: ssl_error_no_cypher_overlap)
Ты хоть представляешь, где моя ошибка? Пробовал и без sslEnabledProtocols="TLSv1.2,TLSv1.1,TLSv1"
но результата нет.
keytool -list -v -keystore tomcat.keystore
. У вас есть запись типаPrivateKeyEntry
НЕtrustedCertEntry
, которая содержит ваш сертификат? Если нет, объясните, как и где именно вы сгенерировали закрытый ключ и CSR, которые вы использовали для получения сертификата. Ваш сертификат будет работать только с этим закрытым ключом. Кроме того, сегодня практически все общедоступные центры сертификации требуют наличие сертификата цепочки, а иногда и более одного. Если центр сертификации предоставил вам какие-либо сертификаты цепи, опишите их, в противном случае опишите центр сертификации. - person dave_thompson_085   schedule 15.09.2015