📜  Linux中OpenSSL命令的实际使用(1)

📅  最后修改于: 2023-12-03 15:32:42.572000             🧑  作者: Mango

Linux中OpenSSL命令的实际使用

OpenSSL是一个开源的库,包含了各种安全协议和加密算法,可用于SSL/TLS协议的管理,证书的生成和签发等.

Linux中的OpenSSL命令由openssl执行,常用于自签名证书的生成和HTTPS证书的签发。下面将介绍实际中OpenSSL命令的使用方法。

OpenSSL命令生成自签名证书

自签名证书通常用于测试环境或内部网站,以下命令将生成自签名证书。

生成私钥
openssl genrsa -out private.key 2048

该命令将生成一组RSA私钥,长度为2048位,并将私钥保存到名为private.key的文件中。

生成证书请求(CSR)
openssl req -new -key private.key -out mydomain.csr

该命令将生成一个证书请求文件(mydomain.csr),其中包含了所需要的关键信息。证书请求包含主题信息,包括CN、OU、O以及C等等,这些信息将被用于生成证书内容。

生成自签名证书
openssl x509 -req -days 365 -in mydomain.csr -signkey private.key -out mydomain.crt

该命令将使用CSR文件以及私钥文件,为CSR文件中指定的主题生成一个新的证书(mydomain.crt)。这个证书将在365天后过期。

OpenSSL命令查看证书信息

使用OpenSSL命令可以查看证书的详细信息,例如证书版本、序列号、颁发日期、过期日期、公钥信息等。

openssl x509 -in mydomain.crt -noout -text

通过该命令可以查看mydomain.crt证书的详细信息。

OpenSSL命令生成HTTPS证书

HTTPS使用SSL/TLS加密通信,SSL/TLS证书可以通过CA中心签发,以下命令将生成基于CA签发的HTTPS证书。

生成私钥

同生成自签名证书一样,使用以下命令生成私钥:

openssl genrsa -out private.key 2048
生成证书请求(CSR)
openssl req -new -key private.key -out mydomain.csr

生成证书请求文件(CSR),并按照提示输入主体信息。

生成CA证书

创建一个自签名的CA证书,用于签发HTTPS证书。

openssl req -new -x509 -key private.key -out ca.crt -days 365
生成HTTPS证书

使用之前创建的CA证书,为证书请求文件(CSR)生成HTTPS证书。

openssl x509 -req -in mydomain.csr -out mydomain.crt -CA ca.crt -CAkey private.key -CAcreateserial -days 365

openssl x509生成网站证书。其中,-CA、-CAkey和-CAcreateserial选项用于将证书请求(CSR)和自签名CA签署,-days选项用于指定证书过期时间。

结束语

OpenSSL命令是一个强大的安全工具,开发人员应该深入了解其用途和操作方式。OpenSSL命令还有很多功能,例如加密、解密、哈希等等,感兴趣的读者可以自行深入学习。

综上,本文介绍了OpenSSL命令在生成自签名证书和HTTPS证书中的应用,以及查看证书信息。