本教程将向您展示如何手动生成 证书签名请求 (或 CSR) 在使用 OpenSSL 的 Apache 或 Nginx 网络托管环境中。 点击 这里 有关订购证书的教程,或 这里 有关如何安装新 SSL.com 证书的更多信息。
如需更多有用的操作方法和最新的网络安全新闻,请在此处注册 SSL.com 的时事通讯:
视频
OpenSSL是一个非常有用的开源命令行工具包,可用于 X.509 证书,证书签名请求(CSRs)和加密密钥。 如果使用的是Linux或macOS之类的UNIX变体,则您的计算机上可能已经安装了OpenSSL。 如果您想在Windows上使用OpenSSL,则可以启用 Windows 10的Linux子系统 或安装 Cygwin的.
在这些说明中,我们将使用OpenSSL的 req
生成私钥和 CSR 在一个命令中。 以这种方式生成私钥将确保提示您输入密码来保护私钥。 在显示的所有命令示例中,将“全部大写”中显示的文件名替换为您要使用的实际路径和文件名。 (例如,您可以替换 PRIVATEKEY.key
- /private/etc/apache2/server.key
在macOS Apache环境中。)此方法介绍了两者的生成 RSA和ECDSA 键。
RSA
下面的OpenSSL命令将生成一个2048位RSA私钥,并且 CSR:
openssl req -newkey rsa:2048 -keyout PRIVATEKEY.key -out我CSR.csr
让我们分解一下命令:
openssl
是用于运行OpenSSL的命令。req
是用于生成 CSR.-newkey rsa:2048
告诉OpenSSL生成新的2048位RSA私钥。 如果您希望使用4096位密钥,可以将此数字更改为4096
.-keyout PRIVATEKEY.key
指定保存私钥文件的位置。-out MYCSR.csr
指定保存位置 CSR 文件中。- 对于最后两个项目,请记住对私钥使用自己的路径和文件名, CSR,而不是占位符。
键入命令后,按 进入。 您将看到一系列提示:
- 首先创建并验证密码。 请记住该密码,因为您将再次需要它来访问您的私钥。
- 现在将提示您输入将包含在您的信息中的信息 CSR。 此信息也称为 专有名称或 DN。 该 通用名称 提交您的SSL.com字段时, CSR,但其他均为可选。 如果您想跳过可选项目,只需键入 进入 当它出现时:
- 这款 国家的名字 (可选)包含两个字母 国家代码.
- 这款 地区名称 字段(可选)适用于您所在的城市或城镇。
- 这款 组织名称 字段(可选)是您公司或组织的名称。
- 这款 通用名称 字段(必填)用于 完全合格的域名(FQDN) 该证书将保护的网站。
- 电子邮件 (可选)
- 这款 挑战密码 字段是可选的,也可以跳过。
完成此过程后,您将返回到命令提示符。 您不会收到任何有关您的 CSR 已成功创建。
ECDSA
使用以下命令创建ECDSA私钥 CSR,您需要调用第二个OpenSSL实用程序来生成ECDSA密钥的参数。
此OpenSSL命令将为256位ECDSA密钥生成一个参数文件:
openssl genpkey -genparam -algorithm ec -pkeyopt ec_paramgen_curve:P-256 -out ECPARAM.pem
openssl genpkey
运行openssl的实用程序以生成私钥。-genparam
生成参数文件而不是私钥。 您还可以生成一个私钥,但是在生成密钥时使用参数文件 CSR 确保提示您输入密码。-algorithm ec
指定椭圆曲线算法。-pkeyopt ec_paramgen_curve:P-256
选择256位曲线。 如果您希望使用384位曲线,请将冒号后的部分更改为P-384
.-out ECPARAM.pem
提供参数文件的路径和文件名。
现在,在生成 CSR:
openssl req -newkey ec:ECPARAM.pem -keyout PRIVATEKEY.key -out我CSR.csr
该命令与上面的RSA示例中使用的命令相同,但是 -newkey RSA:2048
已被替换为 -newkey ec:ECPARAM.pem
。 与以前一样,系统会提示您输入密码和专有名称信息。 CSR.
如果需要,可以使用重定向将两个OpenSSL命令合并为一行,从而跳过参数文件的生成,如下所示:
openssl req -newkey ec:<(openssl genpkey -genparam -algorithm ec -pkeyopt ec_paramgen_curve:P-256)-keyout PRIVATEKEY.key -out MYCSR.csr
点击下一页 步骤
有关安装证书的更多信息, 读到这里,用于与 IIS 10 绑定, 在这里阅读