”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 如何信任所有应用程序的 Java 密钥库中的自签名证书?

如何信任所有应用程序的 Java 密钥库中的自签名证书?

发布于2024-12-23
浏览:409

How to Trust Self-Signed Certificates in Java Keystore for All Applications?

为所有应用程序信任 Java 密钥库中的自签名证书

要建立受信任的 TLS 连接,将自签名证书导入到Java 的密钥库。通常,这是通过命令行实用程序 keytool 实现的。但是,如果目标是在所有 Java 应用程序中提供普遍信任,则需要采用替代方法。

在 Windows 上:

  • 使用Portecle:

    1. 安装Portecle软件。
    2. 识别程序使用的 JRE/JDK 目录。
    3. 备份 JAVA_HOME\lib\security\cacerts。
    4. 在 Portecle 中,打开备份的 cacerts 文件。
    5. 导入 self-签名证书 (.pem) 作为可信证书。
    6. 保存修改后的 cacerts 文件并将其替换为原始证书位置。

在 Linux 上:

  • 下载 SSL 证书:

    $ echo -n | openssl s_client -connect www.example.com:443 | \
       sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > /tmp/examplecert.crt
  • 验证证书(可选):

    $ openssl x509 -in /tmp/examplecert.crt -text
  • 导入证书:

    $ keytool -import -trustcacerts -keystore /opt/java/jre/lib/security/cacerts \
       -storepass changeit -noprompt -alias mycert -file /tmp/examplecert.crt

通过执行以下步骤,您可以确保 Java 应用程序自动信任任何指定的自签名证书,只要一致且安全的 TLS 连接体验。

最新教程 更多>

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3