【Linux】keytool生成密钥

来源:互联网 发布:实用的电脑软件 编辑:程序博客网 时间:2024/04/28 23:48

使用keytool生成密钥只能生成 key.keystore格式密钥,如果Nginx配置SSL的时候需要使用pem和key格式文件

ssl     on;ssl_certificate /opt/keys/key.pem;ssl_certificate_key     /opt/keys/key.key;

生成密钥

keytool -genkey -alias [alias] -keyalg [keyalg] -keypass [keypass] -storepass [storepass] -keystore [keystore.keystore]

导出密钥

keytool -export -alias [alias] -storepass [storepass] -file [file.cer] -keystore [keystore.keystore]

转换PEM格式,

openssl x509 -inform der -in [name.cer] -out [name.pem]

转换PFX格式(pfx文件由Java代码生成)
pfx格式转换具体参考 keystore转换pfx

openssl pkcs12 -in [name.pfx] -nocerts -nodes -out [name.key]

PS:
keytool 参数说明

-genkey    在用户主目录中创建一个默认文件".keystore",还会产生一个mykey的别名,mykey中包含用户的公钥、私钥和证书-alias     产生别名-keystore  指定密钥库的名称(产生的各类信息将不在.keystore文件中-keyalg    指定密钥的算法 -validity  指定创建的证书有效期多少天-keysize   指定密钥长度-storepass 指定密钥库的密码-keypass   指定别名条目的密码-dname     指定证书拥有者信息 例如:            "CN=sagely,OU=atr,O=szu,L=sz,ST=gd,C=cn"-list      显示密钥库中的证书信息            keytool -list -v -keystore sage -storepass ....-v         显示密钥库中的证书详细信息-export    将别名指定的证书导出到文件            keytool -export -alias caroot -file caroot.crt-file      参数指定导出到文件的文件名-delete    删除密钥库中某条目            keytool -delete -alias sage -keystore sage-keypasswd 修改密钥库中指定条目口令            keytool -keypasswd -alias sage -keypass .... -new .... -storepass ... -keystore sage-import    将已签名数字证书导入密钥库            keytool -import -alias sage -keystore sagely -file sagely.crt           导入已签名数字证书用keytool -list -v 以后可以明显发现多了认证链长度,并且把整个CA链全部打印出来。
0 0
原创粉丝点击