我已将root,intermediate,server证书导入到Tomcat for Windows的Java Keystore中。
这些是VeriSign(商业)证书..
我们不能将keyAlias用于连接器 - ssl页面永远不会出现。端口80或标准网络流量是好的,但ssl不是。我对此感到好奇的是,我们的一位服务员确实表示它的行为就像我们安装了自签名证书一样..
我们当前的\ tomcat \ conf \ server.xml包含:
<!-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 -->
<Connector
protocol="org.apache.coyote.http11.Http11Protocol"
port="8443" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="C:\NewCert\keystore.ks" keystorePass="changeit"
clientAuth="false" sslProtocol="TLS"/>
有趣的是,我们看到以下错误: “这个网站的安全证书存在问题” 转到网页(https://servername.domain.local:8443) - 我们将证书请求为servername.domain.local ..因此,我们看到:“不受信任的证书” 查看来自网站的证书与来自我们CA的证书有不同的ThumbPrint。
我已经读过,我们应该能够将根/中间/服务器证书作为一个文件(* .p7b)导入 - 当这样做时,keytool会回复说这不是X.509证书。但是,我相信如果我可以导入.p7b文件,那就是我们需要的......
"%JAVA_HOME%\bin\keytool.exe" -import -trustcacerts -file "C:\NewCert\ap01.p7b" -keystore "C:\NewCert\keystore.ks" -alias "tomcat" -storepass "changeit"
结果信息是:
keytool error: java.lang.Exception: Input not an X.509 certificate
感谢。
答案 0 :(得分:0)
这可能有助于pkcs7导入。
Import PKCS7 (Chained Certificate) using KeyTool command to JKS
根据定义,了解根CA证书是自签名证书。您可能至少有一些JVM信任它们。我会看一下密钥库,确保一切正常。查看从服务器获得的证书,如果不正确,请查找它的来源。如果是正确的,请确保浏览器信任根CA并且不明确不信任。
答案 1 :(得分:0)
有一个web-based tool为您完成所有这些工作,从生成密钥,创建CSR到导入链,而完全不必使用keytool。