![在 RHEL 7/Java 上信任非 CA 证书](https://linux22.com/image/736143/%E5%9C%A8%20RHEL%207%2FJava%20%E4%B8%8A%E4%BF%A1%E4%BB%BB%E9%9D%9E%20CA%20%E8%AF%81%E4%B9%A6.png)
我有一个启用了 LDAPS 的 Active Directory 控制器。当我想让 Atlassian 产品(Jira、Confluence 等)对该控制器使用 LDAPS 时,它不会信任该证书。
我尝试将 CA 证书导入 RHEL(使用 update-ca-trust),导入成功。问题是 CA 证书是使用 Java 不支持的算法(RSASSA-PSS)签名的。
有没有办法直接信任服务器证书(而不是 CA)?
答案1
您的 Java 虚拟机有一个cacerts
密钥库,其中应该包含所有值得信任的证书。尽管名称不同,但您可以将非 CA 证书放入此存储中,它们仍然会受到信任。
它的具体位置取决于您的系统;我还没有在 RHEL 上使用过 Java,他们喜欢在那里做一些奇怪的事情。但是,它通常位于{JAVA_HOME}/jre/lib/security/cacerts
。使用 javakeytool
导入证书。cacerts
默认情况下的密码是changeit
。