我已经启动并运行 SSL,并将其与 Tomcat 6.0 webapp 一起使用。最近,SSL 证书(VeriSign 证书)已过期,我导出了证书签名请求 (CSR),并完成了该过程,并收到了包含正确信息的证书文件。密钥算法是 RSA。
当我尝试导入新证书覆盖旧证书时,会出现问题。以下是运行 keytool 时的输出
D:\keystore>keytool -import -alias tomcat -keyalg RSA -keystore .keystore -trustcacerts -file D:\keystore\Certificates\tomcat_dev.cer
输入密钥库密码:
keytool 错误:java.lang.Exception:无法从回复建立链
仅供参考,密码保留为默认的“changeit”(它只是一个测试开发服务器)。
我确信错误出在我这边,但我不知道如何补救。我是否也需要更换中间 CA?
这里有点线索,希望得到任何建议。提前谢谢!
答案1
是的,您还必须包含/替换中间证书,并在导入新证书之前执行此操作。如今,大多数 SSL 供应商都通过中间证书进行链接,这会增加步骤。
答案2
我发现了问题所在——我一直使用“-keyalg RSA”,但没有指定“-keysize 2048”。因此,证书默认为 1024 而不是 2048,并失败了。
调整此项可使一切完全正常工作。