最近在给自己公司的网站进行SSL验证的设置,对于证书的购买问题,在这里就不多说了,请参考以下文章,针对自己网站的需求选择合适的证书即可
下面来说一下重点,在购买完成证书时,在CA的网站上生成证书等文件(一个公有证书、一个或多个中间证书和一个根证书)时,创建证书签名请求:
- 安装和配置 OpenSSL
- 创建私有密钥
- 创建证书签名请求
- 向证书颁发机构提交证书签名请求
一般在创建证书签名请求需要以上四个步骤。
1.在服务器上安装OpenSSl,用于生成私钥文件,命令如下
openssl genrsa 2048 > your-private-key-file-name.pem
请将红色字体替换成你自己的文件名,
在示例中,2048 表示 2048 位加密。AWS 还支持 1024 位和 4096 位加密。我们建议您创建 2048 位的 RSA 密钥。
请务必将私有密钥存储在安全位置。私有密钥一旦丢失便无法取回。
2.创建证书签名请求(CSR)
CSR 是指您为申请服务器证书而发送至证书颁发机构 (CA) 的文件
创建 CSR
按照以下语法使用 openssl req 命令创建 CSR:
openssl req -new -key private-key.pem -out csr.pem
private-key.pem为你上一步生成的私钥的文件名,csr.pem为要生成的SDR
输出类似于以下示例:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank.
For some fields there will be a default value.
If you enter '.', the field will be left blank.
下表可帮助您创建证书请求。
姓名 | 描述 | 示例 |
国家名称 | 代表国家的两个字母 ISO 缩写。 | US = 美国 |
州或省 | 组织所在州或省的名称。此名称不可使用缩写。 | 华盛顿州 |
所在地名称 | 组织所在城市的名称。 | Seattle |
组织名称 | 组织的法定全称。请勿缩写组织名称。 | 示例 Corp |
组织部门 | 可选,用于提供额外的组织信息。 | 市场营销 |
公用名 | 别名记录的完全限定域名。如果两者不能精确匹配,那么您会收到一条证书名称检测警告。 | www.yourdomain.com |
电子邮件地址 | 服务器管理员的电子邮件地址 | someone@yourdomain.com |
Note
通常情况下,“Common Name”字段很容易出现误解,也不容易填写正确。公用名通常指的是您的主机加上域名。具体形式为“www.company.com”或“company.com”。您需要使用正确的公用名创建 CSR。
将CSR提交给证书颁发机构
您的 CSR 包含识别您身份的信息。如要申请服务器证书,请将您的 CSR 发送至证书颁发机构 (CA)。CA 可能要求提供其他证书或身份证明。
如果针对证书的请求成功,则 CA 将返回一个公有(标识)证书,并可能返回一个经过数字签名的链证书。