📅  最后修改于: 2023-12-03 15:39:39.694000             🧑  作者: Mango
在使用 SSL/TLS 保护网站时,通常需要购买证书,由证书颁发机构(CA)签名确认其安全性。但有些情况下,使用自签名证书也能充分满足需求,而且创建自签名证书的过程并不复杂。
本文将介绍如何在 CSR 中创建自签名证书,使用的工具是 OpenSSL。
在开始操作之前,请确保 OpenSSL 已经安装在本地计算机上。
首先,需要生成一个 RSA 私钥。使用以下命令生成:
openssl genrsa -out private.key 2048
其中,out
表示输出文件,2048
表示密钥长度,可以根据需要进行调整。
CSR 文件(Certificate Signing Request,证书签名请求)包含了证书申请者的信息,颁发机构将使用这些信息签名确认证书后,申请者可使用证书保护网站。
使用以下命令创建 CSR 文件:
openssl req -new -key private.key -out request.csr
其中,key
指定私钥文件,out
指定输出文件。在执行命令后,需要输入一些信息,如下:
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
这些信息将被包含在 CSR 文件中。
使用以下命令生成自签名证书:
openssl x509 -req -in request.csr -signkey private.key -out certificate.crt
其中,req
表示使用 CSR 文件,signkey
指定私钥文件,out
指定输出文件。执行命令后,自签名证书将生成。
以上就是使用 OpenSSL 在 CSR 中创建自签名证书的过程。使用自签名证书时需要注意,由于没有受到 CA 的签名保障,浏览器在访问网站时将给出警告。但在开发和测试环境中,使用自签名证书可以实现快速、低成本的 SSL/TLS 保护网站。