openssl证书操作
openssl x509部分命令
openssl x509 -in signed.crt -noout -dates # 打印证书的过期时间
openssl x509 -in cert.pem -noout -text # 打印出证书的内容:
openssl x509 -in cert.pem -noout -serial # 打印出证书的系列号
openssl x509 -in cert.pem -noout -subject # 打印出证书的拥有者名字
openssl x509 -in cert.pem -noout -subject -nameopt RFC2253 # 以RFC2253规定的格式打印出证书的拥有者名字
openssl x509 -in cert.pem -noout -subject -nameopt oneline -nameopt -escmsb #在支持UTF8的终端一行过打印出证书的拥有者名字
openssl x509 -in cert.pem -noout -fingerprint #打印出证书的MD5特征参数
openssl x509 -sha1 -in cert.pem -noout -fingerprint #打印出证书的SHA特征参数
openssl x509 -in cert.pem -inform PEM -out cert.der -outform DER #把PEM格式的证书转化成DER格式
openssl x509 -x509toreq -in cert.pem -out req.pem -signkey key.pem #把一个证书转化成CSR
openssl x509 -req -in careq.pem -extfile openssl.cnf -extensions v3_ca -signkey key.pem -out cacert.pem #给一个CSR进行处理,颁发字签名证书,增加CA扩展项
openssl x509 -req -in req.pem -extfile openssl.cnf -extensions v3_usr -CA cacert.pem -CAkey key.pem -CAcreateserial #给一个CSR签名,增加用户证书扩展项
openssl req -in my.csr -noout -text #查看csr文件细节
SSL PrivateKey(证书私钥)添加和去除密码
1 . 检测ssl.key 密码是否正确
openssl rsa -text -noout -in server.key
命令输出:
Private-Key: (2048 bit)
modulus:
00:b0:fd:c2:81:60:3f:d2:dc:fe:2d:34:c6:46:1e:
08:72:c3:78:f3:4d:12:16:b9:39:3e:0b:d3:8b:e7:
…
2 . 给server.key 添加密码
openssl rsa -des -in server.key -out encrypt.key
输出:
writing RSA key
Enter PEM pass phrase: 密码
Verifying - Enter PEM pass phrase: 再次输入密码
encrypt.key 这个文件就是加密过的key
3. 去掉密码
encrypt.key 加密KEY / nopassword.key 无加密
openssl rsa -in encrypt.key -out nopassword.key
writing RSA key
Enter PEM pass phrase: 密码
Verifying - Enter PEM pass phrase: 再次输入密码
如何去掉私钥的密码
拿到一个证书,里面有私钥和公钥,合在一起,pkc12的格式转的pem格式,有密码,现在需要把密码去掉
1.分离公钥和私钥
openssl x509 -in cert2.pem -out cert2.crt
openssl rsa -in cert2.pem -out cert2.key
2. 去掉私钥密码
openssl rsa -in cert2.key -out cert22.key
3. 合并成pfx文件
openssl pkcs12 -export -inkey cert22.key -in cert2.crt -out cert2.pfx
4.转回 pem
openssl pkcs12 -in cert2.pfx -out cert22.pem
这个地方-nodes可能不需要加
中间需要运来私钥密码的时候就输入,如果新的私钥输密码直接回车