错误:别名名称[NULL]在Tomcat中实现SSL时未识别键条目



我试图第一次在tomcat 8中实现SSL。

我以.pem文件的形式签名第三方X.509证书。

但是,在我尝试启动tomcat时配置后,它给我以下错误:

22-NOV-2017 18:48:01.735信息[main] org.apache.coyote.abstractprotocol.Init初始化协议Handler [" https-jsse-nio-8443"] 22-nov-2017 18:48:01.897严重[main] org.apache.coyote.abstractprotocol.init无法初始化终点 与ProtocolHandler [" HTTPS-JSSE-NIO-8443"]相关 java.lang.illegalargumentException:java.io.ioexception:别名名称 [null]无法识别密钥条目 在...

以下是我遵循的步骤:

  1. 重命名为证书。
  2. 以下命令将命令应用于密钥库:

d: keytest2> keytool -import -import -Alias tomcat -trustcacerts -file certift.p7b -keystore keystore.kdb

输入密钥库密码:测试
重新输入新密码:测试

...
...
证书已添加到密钥店

  1. 检查的导入证书:

d: keytest2> keytool -list -v -keystore keystore.kd

给我跟随:

密钥库类型:JKS钥匙店提供商:太阳

您的密钥库包含1个条目

别名名称:tomcat创建日期:2017年11月22日条目类型:TrustedCertentry......

tomcat配置:

<Connector port="8443" protocol="HTTP/1.1"
               maxThreads="150" SSLEnabled="true" scheme="https" secure="true" 
               keystoreFile="file:///D:/keytest2/keystore.kdb" keystorePass="test"
           clientAuth="false" sslProtocol="TLS">

请指导我做错了哪里。

问题是由于tomcat配置中缺少参数" keyalias"。

但是,放别名没有解决我的问题。它开始使用别名名称而不是null丢弃相同的错误:)。

根据 @dev_thompson_085的评论,我知道我缺少此过程的密钥文件。因此,我尝试了与URL的自签名X.509证书相同的尝试:

,这两个文件都很好地效果。

最新更新