keytool证书工具使用

导出证书文件cer,可以导入到windows中

keytool -export -alias tomcat -keystore tomcat.jks -storepass 123456 -file ca.cer

导入到jdk的根证书库中

keytool -import -keystore /usr/java/jdk1.8.0_121/jre/lib/security/cacerts -storepass changeit -file ca.cer -noprompt

从jdk根证书库中删除某个证书

keytool -delete -keystore /usr/java/jdk1.8.0_121/jre/lib/security/cacerts -storepass changeit -alias tomcat

转换cer到crt格式(openssl), 三种方式都可以

keytool -printcert -rfc -file ca.cer > ca.crt
keytool -list -rfc -keystore tomcat.jks -storepass 123456
openssl x509 -inform der -in ca.cer -out ca.crt

导入到linux的根证书中

cat ca.crt >> /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem

生成csr文件 (用于向第三方CA机构认证)

keytool -certReq -alias tomcat -keystore tomcat.jks -storepass 123456 -file ca.csr

查看keystore信息

keytool -list -keystore tomcat.jks -storepass 123456
keytool -list -v -keystore tomcat.jks -storepass 123456
keytool -list -rfc -keystore tomcat.jks -storepass 123456
keytool -printcert -rfc -file ca.cer
keytool -printcert -v -file ca.cer

合并两个keystore

  • 生成aaa.jks
    keytool -genkey -keyalg RSA -validity 3650 -alias aaa -keystore aaa.jks -storepass 123456 -keypass 123456 -dname "cn= www.zfl.com,ou=otokaze,o=otokaze,l=gd,st=gz,c=cn "

  • 生成bbb.jks
    keytool -genkey -keyalg RSA -validity 3650 -alias bbb -keystore bbb.jks -storepass 123456 -keypass 123456 -dname "cn= www.zfl.com,ou=otokaze,o=otokaze,l=gd,st=gz,c=cn "

  • 合并 aaa.jks 到 bbb.jks
    keytool -importkeystore -srckeystore aaa.jks -srcstorepass 123456 -destkeystore bbb.jks -deststorepass 123456

  • 查看是否合并成功bbb.jks
    keytool -list -v -keystore bbb.jks -storepass 123456

  • 修改签名库密码

    修改密码的命令:keytool -storepasswd -keystore android.keystore
    命令执行后会提示证书的当前密码和新密码及其确认。

    修改别名alias