我试图第一次在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]无法识别密钥条目 在...
以下是我遵循的步骤:
- 重命名为证书。
- 以下命令将命令应用于密钥库:
d: keytest2> keytool -import -import -Alias tomcat -trustcacerts -file certift.p7b -keystore keystore.kdb
输入密钥库密码:测试
重新输入新密码:测试
...
...
证书已添加到密钥店
- 检查的导入证书:
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证书相同的尝试:
,这两个文件都很好地效果。