1.查看证书
查看key信息:openssl rsa -noout -text -in myserver.key
查看csr信息:openssl req -noout -text -in myserver.csr
查看证书信息:openssl x509 -noout -text -in ca.crt
2.验证CA证书
openssl verify -CAfile ca.pem client.pem
输出:client.pem: OK
3.验证公钥和私钥是否匹配
diff -eq <(openssl x509 -pubkey -noout -in cert.crt) <(openssl rsa -pubout -in cert.key)
输出:writing RSA key
4.不同格式的证书转换
PEM(.pem .crt)
DER(.cer .der) Windows 上常见
PKCS#12文件(.pfx .p12) Mac上常见
PEM转换为DER: openssl x509 -outform der -in myserver.crt -out myserver.der
DER转换为PEM:openssl x509 -inform der -in myserver.cer -out myserver.pem
PEM转换为PKCS:openssl pkcs12 -export -out myserver.pfx -inkey myserver.key -in myserver.crt -certfile ca.crt
PKCS转换为PEM: openssl pkcs12 -in myserver.pfx -out myserver2.pem -nodes
5.常用的实用命令
链接远程服务器:openssl s_client -connect www.google.com.hk:443
模拟https服务器
openssl s_server -accept 443 -cert myserver.crt -key myserver.key -www
模拟client
openssl s_client -host mec.com -port 8881 -showcerts -msg -state -tls1_2 -cert 10.121.120.151.crt -key 10.121.120.151.key -CAfile ca.crt