OpenSSL常用命令有哪些 OpenSSL命令用法

2025-05-25 0 35

OpenSSL是一个功能强大的命令行工具,可以用来完成公钥体系以及https相关的诸多任务。新手用户可能会对OpenSSL命令用法还不太了解,本文整理了常用的OpenSSL命令的使用方法,例如生成CSR文件、SSL证书格式转换等。

OpenSSL常用命令有哪些 OpenSSL命令用法

一、使用OpenSSL命令生成CSR文件

有效的SSL证书通常是由可信权威的CA机构颁发的,我们在申请SSL证书前,需利用相关工具来生成一个证书签名请求文件(CSR文件),该文件内容主要包括密钥对中的公钥、以及其他一些额外信息。

1、生成CSR – RSA加密算法

openssl req -out www_sslaaa_com.csr -new -sha256 -newkey rsa:2048 -nodes -keyout www_sslaaa_com.key

2、生成CSR – ECC加密算法

openssl ecparam -out server.key -name prime256v1 -genkey
openssl req -new -key server.key -out server.csr

3、生成自签发证书命令

openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout privateKey.key -out certificate.crt

4、从密钥生成CSR

openssl req -out CSR.csr -key privateKey.key -new

5、从证书文件生成CSR

openssl x509 -x509toreq -in certificate.crt -out CSR.csr -signkey privateKey.key

6、去除Key密码

openssl rsa -in privateKey.pem -out newPrivateKey.pem

二、SSL证书常见格式转换

1、PEM转DER

可以将PEM编码的证书domain.crt转换为二进制DER编码的证书domain.der:

openssl x509 \\
-in domain.crt \\
-outform der -out domain.der

DER格式通常用于Java。

2、DER转PEM

同样,可以将DER编码的证书(domain.der)转换为PEM编码(domain.crt):

openssl x509 \\
-inform der -in domain.der \\
-out domain.crt

3、PEM转PKCS7

将PEM证书(domain.crt和ca-chain.crt)添加到一个PKCS7(domain.p7b)文件中:

openssl crl2pkcs7 -nocrl \\
-certfile domain.crt \\
-certfile ca-chain.crt \\
-out domain.p7b

使用-certfile选项指定要添加到PKCS7中的证书。

PKCS7文件也被称为P7B,通常用于Java的Keystore和微软的IIS中保存证书的ASCII文件。

4、PKCS7转换为PEM

使用下面的命令将PKCS7文件(domain.p7b)转换为PEM文件:

openssl pkcs7 \\
-in domain.p7b \\
-print_certs -out domain.crt

如果PKCS7文件中包含多个证书,例如一个普通证书和一个中间CA证书,那么输出的PEM文件中将包含所有的证书。

5、PEM转换为PKCS12

可以将私钥文件(domain.key)和证书文件(domain.crt)组合起来生成PKCS12 文件(domain.pfx):

openssl pkcs12 \\
-inkey domain.key \\
-in domain.crt \\
-export -out domain.pfx

上面的命令将提示你输入导出密码,可以留空不填。

PKCS12文件也被称为PFX文件,通常用于导入/导出微软IIS中的证书链。

6、PKCS12转换为PEM

另外,我们还可以将PKCS12文件(domain.pfx)转换为PEM格式(domain.combined.crt):

openssl pkcs12 \\
-in domain.pfx \\
-nodes -out domain.combined.crt

要注意的是,如果PKCS12文件中包含多个条目,例如证书及其私钥,那么生成的PEM文件中将包含所有条目。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 OpenSSL常用命令有哪些 OpenSSL命令用法 https://www.kuaiidc.com/12850.html

相关文章

发表评论
暂无评论