我正在尝试配置SSL并从服务器团队获取.pfx文件。 证书链长:2
当我尝试使用keytool导出证书链时,只导出第一个证书。
尝试确定在发出keytool命令时是否还有其他参数丢失。
我使用的命令是:
1)pfx
不支持转换为JKS作为别名keytool -importkeystore -srckeystore "serverauth.pfx" -srcstoretype pkcs12 -destkeystore "serverauth.jks"
2)尝试使用以下方法导出证书。
keytool -export -alias 1 -keystore "serverauth.jks" -rfc -file "authclient.cert"
但是上面的命令只生成第一个证书。
如果我删除整个别名选项,则会收到错误
keytool error: java.lang.Exception: Alias <1> does not exist
还有其他流程吗?
答案 0 :(得分:9)
这适用于Java 8,以将整个证书链导出到文件:
keytool -list -alias yourcert -keystore /path/to/keystore -rfc
与export相同的格式,但它会转储整个链。您丢失了-file选项,但您只需使用>
答案 1 :(得分:9)
你可以这样做(以java cacert为例):
for cert in `keytool -list -keystore cacerts -storepass changeit | grep trustedCertEntry | grep -Eo "^[^,]*"`;do
`keytool -exportcert -keystore cacerts -alias $cert -file ${cert}.crt <<< $'changeit'`
done
这将导出分离的.crt文件中的所有证书
答案 2 :(得分:5)
keytool -list -rfc -keystore serverauth.jks
这将在单个流中输出所有证书。如果您想将它们拆分为单独的文件,那么您还有更多工作要做。