一、什么是 OpenSSL?
OpenSSL是一个基于SSL和TLS协议的开源软件库,可用于实施加密相关功能、生成密钥以及证书等。本文将介绍如何使用 OpenSSL 来生成证书。
二、基本操作步骤
生成证书的基本步骤如下:
1、生成私钥并设置保护密码(可以不设置)
$ openssl genpkey -algorithm RSA -aes128 -out private.key
2、生成证书签名请求(CSR)
$ openssl req -new -key private.key -out request.csr
此时会要求输入一些证书信息,如Common Name,即域名。
3、生成证书(CRT)
$ openssl x509 -req -in request.csr -signkey private.key -out certificate.crt -days 3650
其中,-days表示证书的有效期(单位:天)。
三、生成自签名证书
如果只是用来做测试,我们可以生成自签名证书。
1、生成私钥
$ openssl genpkey -algorithm RSA -out private.key
2、生成自签名证书
$ openssl req -new -x509 -key private.key -out certificate.crt -days 3650
其中,-x509 表示生成的证书是自签名证书。
四、导出 PEM 格式证书
有时需要将证书转换为 PEM 格式,可以使用以下命令:
$ openssl x509 -in certificate.crt -outform PEM -out certificate.pem
五、使用证书
完成之后,就可以使用证书了。如果是浏览器访问,将授权的证书文件(certificate.crt 或 certificate.pem)放到服务器的认证文件夹中,并在服务器上配置 SSL 服务即可。如果是程序调用,需要在代码中指定授权的证书文件名及路径。
六、总结
本文介绍了 OpenSSL 生成证书的基本操作步骤,包括生成私钥并设置保护密码、生成证书签名请求、生成证书、生成自签名证书、导出 PEM 格式证书等。希望能对读者有所帮助。