У меня проблема с настройкой ssl / tls на tomcat. Проблема заключается в следующем:
Я импортирую свой сертификат с помощью команды keytool
но при настройке server.xml я получаю две проблемы:
если я укажу атрибут keyAlias как:
<Connector
protocol="org.apache.coyote.http11.Http11NioProtocol"
port="8443" maxThreads="200" keyAlias="tomcat"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="/opt/tomcat/ssl/mykeystorefile.keystore" keystorePass="****"
clientAuth="false" sslProtocol="TLS"/>
Я получаю исключение:
org.apache.catalina.LifecycleException: не удалось инициализировать компонент [Connector [HTTP / 1.1-8443]]
в org.apache.catalina.util.LifecycleBase.init (LifecycleBase.java:113)
в org.apache.catalina.core.StandardService.initInternal (StandardService.java:549)
в org.apache.catalina.util.LifecycleBase.init (LifecycleBase.java:107)
в org.apache.catalina.core.StandardServer.initInternal (StandardServer.java:875)
в org.apache.catalina.util.LifecycleBase.init (LifecycleBase.java:107)
в org.apache.catalina.startup.Catalina.load (Catalina.java:632)
в org.apache.catalina.startup.Catalina.load (Catalina.java:655)
at sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод)
at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
в java.lang.reflect.Method.invoke (Method.java:606)
в org.apache.catalina.startup.Bootstrap.load (Bootstrap.java:309)
в org.apache.catalina.startup.Bootstrap.main (Bootstrap.java:492)
Вызывается: org.apache.catalina.LifecycleException: L''initialisation du gestionnaire de protocole a échoué
в org.apache.catalina.connector.Connector.initInternal (Connector.java:996)
в org.apache.catalina.util.LifecycleBase.init (LifecycleBase.java:107)
... еще 12
Вызывается: java.lang.IllegalArgumentException: Le nom alias [tomcat] n'identifie pas un entrée de clef
в org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLContext (AbstractJsseEndpoint.java:116)
в org.apache.tomcat.util.net.AbstractJsseEndpoint.initialiseSsl (AbstractJsseEndpoint.java:87)
в org.apache.tomcat.util.net.NioEndpoint.bind (NioEndpoint.java:225)
в org.apache.tomcat.util.net.AbstractEndpoint.init (AbstractEndpoint.java:1086)
в org.apache.tomcat.util.net.AbstractJsseEndpoint.init (AbstractJsseEndpoint.java:268)
в org.apache.coyote.AbstractProtocol.init (AbstractProtocol.java:581)
в org.apache.coyote.http11.AbstractHttp11Protocol.init (AbstractHttp11Protocol.java:68)
в org.apache.catalina.connector.Connector.initInternal (Connector.java:993)
... еще 13
Вызывается: java.io.IOException: Le nom alias [tomcat] n'identifie pas une entrée de clef
в org.apache.tomcat.util.net.jsse.JSSEUtil.getKeyManagers (JSSEUtil.java:229)
в org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLContext (AbstractJsseEndpoint.java:114)
... еще 20
и когда я не указываю атрибут, я получаю то же исключение со значением null вместо записи tomcat.
Спасибо за вашу помощь,