行业新闻与博客

最常见的 Java Keytool 密钥库命令


Java Keytool 是一个密钥和证书管理实用程序。它允许用户管理自己的公钥 / 私钥对和证书。它还允许用户缓存证书。Java Keytool 将密钥和证书存储在所谓的密钥库中。默认情况下,Java 密钥库实现为文件。它使用密码保护私钥。一个使用 Keytool 密钥库包含私钥和任何证书需要完成的信任链,建立初级证书的可信度。

Java 密钥库中的每个证书都与唯一的别名相关联。创建 Java 密钥库时,首先要创建最初只包含私钥的.jks 文件。然后,您将生成 CSR 并从中生成证书。然后,您将证书导入密钥库,包括任何根证书。Java Keytool 还有一些其他功能,允许您查看证书的详细信息或列出密钥库中包含的证书或导出证书。

注意:为了更轻松地管理 Java Key Stores(使用 GUI),请查看 Portecle。如果您需要购买证书,请尝试将 SSL 与我们的 SSL 向导进行比较。

比较 SSL 证书

下面,我们列出了最常见的 Java Keytool 密钥库命令及其用法:

用于创建和导入的 Java Keytool 命令

这些命令允许您生成新的 Java Keytool 密钥库文件,创建 CSR 和导入证书。在导入域的主证书之前,需要导入任何根证书或中间证书。

  • 生成 Java 密钥库和密钥对

    keytool -genkey -alias mydomain -keyalg RSA -keystore keystore.jks -keysize 2048

  • 为现有 Java 密钥库生成证书签名请求(CSR)

    keytool -certreq -alias mydomain -keystore keystore.jks -file mydomain.csr

  • 将根 CA 或中间 CA 证书导入现有 Java 密钥库

    keytool -import -trustcacerts -alias root -file Thawte.crt -keystore keystore.jks

  • 将已签名的主证书导入现有 Java 密钥库

    keytool -import -trustcacerts -alias mydomain -file mydomain.crt -keystore keystore.jks

  • 生成密钥库和自签名证书(有关详细信息,请参阅如何使用 Java Keytool 创建自签名证书)

    keytool -genkey -keyalg RSA -alias selfsigned -keystore keystore.jks -storepass password -validity 360 -keysize 2048

用于检查的 Java Keytool 命令

如果需要检查证书或 Java 密钥库中的信息,请使用这些命令。

  • 检查独立证书

    keytool -printcert -v -file mydomain.crt

  • 检查 Java 密钥库中的证书

    keytool -list -v -keystore keystore.jks

  • 使用别名检查特定的密钥库条目

    keytool -list -v -keystore keystore.jks -alias mydomain

其他 Java Keytool 命令

  • 从 Java Keytool 密钥库中删除证书

    keytool -delete -alias mydomain -keystore keystore.jks

  • 更改 Java 密钥库密码

    keytool -storepasswd -new new_storepass -keystore keystore.jks

  • 从密钥库导出证书

    keytool -export -alias mydomain -file mydomain.crt -keystore keystore.jks

  • 列出可信 CA Certs

    keytool -list -v -keystore $ JAVA_HOME / jre / lib / security / cacerts

  • 将新 CA 导入受信任的证书

    keytool -import -trustcacerts -file /path/to/ca/ca.pem -alias CA_ALIAS -keystore $ JAVA_HOME / jre / lib / security / cacerts

如果需要将证书从 Java Keytool 移动到 Apache 或其他类型的系统,请查看这些有关使用 OpenSSL 转换 Java Keytool 密钥库的说明。有关更多信息,请查看 Java Keytool 文档或查看使用 Java Keytool 的 Tomcat SSL 安装说明。

需要帮助吗?联系我们的支持团队 在线客服