什么是 SSL 中的 CSR(证书签名请求)?

如今,网站加密是必须的,而启用网站加密的方法就是在服务器上安装 SSL 证书。 但在从证书颁发机构(CA)获得证书之前,必须生成 CSR(证书签名请求)代码,并将其发送给 CA 进行验证。 本深度指南揭示了什么是证书签名请求,以及如何在申请 SSL 证书时创建该请求


目录

  1. 什么是 SSL 中的 CSR
  2. 什么是 CSR 文件?
  3. 企业社会责任》包括哪些信息?
  4. 企业社会责任是什么样的?
  5. 从哪里获取 SSL 的 CSR?
  6. 如何为 SSL 证书生成 CSR 密钥?
  7. 如何处理 CSR 文件?
  8. 在哪里可以找到 SSL 证书的 CSR?
  9. 如何打开和读取 CSR 文件?

什么是 SSL 中的 CSR?

证书签名请求CSR是 SSL 申请者必须提交给证书颁发机构(CA)验证的包含联系信息(域名、公司名称、国家等)的加密文本块。 CA 使用 CSR 中的详细信息来验证申请人的身份并签发 SSL 证书。

在开始解释 CSR 文件或 CSR 证书(有些用户称之为 CSR 证书)的来龙去脉之前,我们先来看看为什么首先需要它。 大家可能已经知道,SSL 证书是一个小的数字文件,用于加密两个计算机应用程序之间在网络上的通信。 它采用 TLS 加密协议,确保浏览器和服务器之间共享的敏感数据的安全。

但这只是 SSL 硬币的一面。 您如何知道加密网站属于真正的实体? 除非有第三方机构对其进行验证和确认,否则你就不能这样做。 这时,证书颁发机构就会介入,检查域名和组织的真实性和可信度。

当你申请 SSL 证书时,CA 会要求你提交详细联系信息,这是审核流程和行业标准准则的一部分。 这就是 SSL 中企业社会责任的意义所在。


什么是 CSR 文件?

CSR 文件是带有 .csr 扩展名的编码文本文档,其中包含有关你的网站、域名和组织的敏感数据。它还包括你的公钥和签名,可帮助浏览器验证你的身份,并在 SSL 握手过程中建立安全连接。

CSR 文件名是什么?

许多用户想知道 CSR 文件名是否会影响 CSR 生成和SSL 安装。 名称通常由创建证书签名请求的系统决定。 默认情况下,CSR 名称是您要保护的域。 例如 yourdomain. csr. 不过,有些平台可能会要求它使用服务器名称(servername.csr),而其他客户端则允许您为文件选择任何名称。


企业社会责任》包括哪些信息?

既然知道了什么是证书签名请求,我们就来看看 CA 要求在 CSR 中提交哪些详细信息。 无论使用证书签名请求生成器、托管面板还是OpenSSL 工具,您需要输入的信息都是一样的。 下面是一份典型的 CSR 提交表:

  • 通用名称:输入您要保护的 FQDN(完全合格域名)。 例如,yourdomain.com。 如果使用通配符证书,请在域名前添加星号。 例如,*.yourdomain.com。
  • 组织名称:请注明贵组织的正式名称。 例如,贵公司有限责任公司。 如果您有域名验证证书,请键入 NA。
  • 组织单位:键入提出申请的部门名称。 通常是信息技术或网络管理。 如果您有域名验证证书,请输入 NA。
  • 地点或城市:提交贵组织所在城市的全称。 例如,旧金山。
  • 州或省:写下贵组织注册所在州的全称。 例如,加利福尼亚州。
  • 国家名称:提供贵国的双字母代码。 例如,美国。
  • 电子邮件地址:提供有效的电子邮件地址。
  • 密钥长度: 2048 位为默认选项。

填写完详细信息后,最好再仔细检查一遍,以避免将来出现与数据不准确有关的问题。


企业社会责任是什么样的?

用记事本等文本编辑器打开 CSR 文件时,会看到 —–BEGIN CERTIFICATE REQUEST—– 和 —–END CERTIFICATE REQUEST—– 标记之间嵌套着一串随机字符。 第一行和最后一行总是相同的,而其中的内容对每个 CSR 来说都是独一无二的。 下面是一个企业社会责任的例子:

----- 开始申请证书-----
MIICvDCCAaQCAQAwdzELMAkGA1UEBhMCVMxDTALBgNVBAgMBFV0YWgxDzANBgNV
BAcMBkxpbmRvbjEWMBQGA1UECgwNRGlnaUNlcnQgSW5jLjERMA8GA1UECwwIRGln
aUNlcnQxHTAbBgNVBAMMFGV4YW1wbGUuZGlnaWNlcnQuY29tMIIBIjANBgkqhkiG
9w0BAQEFAAOCAQ8AMIIBCgKCAQEA8+To7d+2kPWeBv/orU3LVbJwDrSQbeKamCmo
wp5bqDxIwV20zqRb7APUOKYoVEFFOEQs6T6gImnIolhbiH6m4zgZ/CPvWBOkZc+c
1Po2EmvBz+AD5sBdT5kzsdQA6NbWyZGldxRthNLOs1efOhdnWFuhI162qmcflgpiI
WDuwq4C9f+YkeJhNn9dF5+vda8cOQmDrV8NNdiTqin8q3qYAHHJRW28glJUCZkTZ
wIaSR6crBQ8TbYNE0dc+Caa3DOIkz1EOsHWzTx+n0zKfqcbgXi4DJx+C1bjptYPR
BPZL8DAeWuA8ebudVT4546yEp82G96/Ggcf7F33xMxe0yc+Xa6owIDAQABoAAwDQYJ
KoZIhvcNAQEFBQADggEBAB0kcrFccSmFDmxox0Ne01UIqSsDqHgL+XmHTXJwre6D
hJSZwbvEtOK0G3+dr4Fs11WuUNt5qcLsx5a8uk4G6AKHMzuhLsJ7XZjgmQXGECpY
Q4mC3yT3ZoCGpIXbw+iP3lmEEXgaQL0Tx5LFl/okKbKYwIqNiyKWOMj7ZR/wxWg/
ZDGRs55xuoeLDJ/ZRFf9bI+IaCUd1YrfYcHIl3G87Av+r49YVwqRDT0VDV7uLgqn
29XI1PpVUNCPQGn9p/eX6Qo7vpDaPybRtA2R7XLKjQaF9oXWeCUqy1hvJac9QFO2
97Ob1alpHPoZ7mWiEuJwjBPii6a9M9G30nUo39lBi1w=
-----end 证书申请-----

SSL 的 CSR 通常使用 Base-64 编码,这是一种在 ASCII 文本中显示二进制数据的标准格式。 ASCII 是美国信息交换标准码的缩写,它是一种字符编码系统,为字母表中的每个字符分配一个唯一的数字。


从哪里获取 SSL 的 CSR?

由于所有商业 SSL 证书都需要生成 CSR,因此可以通过多种方式创建 CSR 文件。 但在生成之前,请确保您的服务器支持所选方法。 在某些系统中,您只能在内部进行导入,而其他平台则允许您导入外部生成的 CSR 文件。

如何从外部生成 SSL 的 CSR?

获取 CSR 的最快、最简单的方法是借助证书签名请求生成器。 这种工具会自动生成 SSL 证书的 CSR 和私钥。 您还会通过电子邮件收到备份文件。


如何在内部为 SSL 创建 CSR?

几乎所有服务器都允许您在网站托管系统上手动创建 CSR。 在内部生成 CSR 时,无需在平台上上传文件,因为文件已经在正确的目录中。

这种方法的缺点是需要额外的知识,更适合有经验的系统管理员。 我们已为 50 多个服务器和电子邮件客户端编写了CSR 生成教程 ,因此即使您是新手,也能通过这些教程逐步完成整个过程。


如何为 SSL 证书生成 CSR 密钥?

与 CSR 证书一起,您将创建扩展名为.key的私钥文件。 服务器或外部 CSR 生成工具会同时创建这两个文件。 除了按提示指定密钥长度和密码外,无需其他操作。

与 CSR 文件类似,私钥也存在于生成它的服务器上,只有在外部创建 CSR 时才需要上传。 进一步了解私钥格式和最佳存储方法。


如何处理 CSR 文件?

CSR 文件准备就绪后,下一步就是将其内容发送给证书颁发机构。 但在进行这一步之前,请使用任何文本编辑器打开 CSR,确保编码文本以 —–BEGIN CERTIFICATE REQUEST—– 和 —–END CERTIFICATE REQUEST—– 标记开始和结束。

下面介绍如何向证书颁发机构提交 CSR:

在 SSL 供应商的订单页面上,你将填写一份包含个人和公司信息的表格,并添加 CSR 代码。 现在,根据供应商的不同,您可以上传 CSR 文件或将 CSR 内容粘贴到相关框中。 CA 验证并确认你的 CSR 后,你将通过电子邮件收到 SSL 证书文件。


在哪里可以找到 SSL 证书的 CSR?

如前所述,CSR 位于创建它的服务器上。 因此,不同的系统会有特定的 CSR 证书默认位置。

例如,在 Red Hat Linux Professional 官方服务器上,CSR 位于 /etc/httpd/conf/ssl 中。 csr 目录。

在 Windows 系统中,如果输入文件名而不指定位置,CSR 将转到 C:WindowsSystem32。


如何打开和读取 CSR 文件?

要打开 CSR 文件,请使用您选择的任何文本编辑器。 但仅仅打开它并不能显示编码的 CSR 信息。 只有通过解码,您才能检查里面的信息是否与您在生成 CSR 时输入的信息一致。

如何解码 CSR 文件?

解码 CSR 文件的最简单方法是使用CSR 解码器。 这种工具会将编码数据转换成纯文本,以便您能看到每个字段所代表的内容。 当您不确定数据的准确性并希望确保数据正确时,对 CSR 进行解码会非常有帮助。

或者,也可以使用 OpenSSL 解密 CSR 内容。

运行以下命令

openssl req -in test.csr -text -noout

下面是部分输出结果的样子:

申请证书:
数据
版本:1 (0x0)
主题:C = 美国,O = 贵公司,OU = 贵组织单位,CN = yourdomain.com
主题公钥信息:
公钥算法: rsaEncryption
RSA 公钥:(512 位)
模数
00:b3:33:s2:fb:f5:57:03:30:4c:51:a5:ce:e7:3b:
9a:b9:63:2f:70:44:a5:65:4b:93:1f:04:24:45:bf:
dc:9b:dd:58:e3:ad:05:9d:47:34:f9:5a:5e:5e:b5:


最终想法

“什么是证书签名请求?”这是用户在使用 SSL 证书时最常问的问题之一。 希望本指南能消除大家对 CSR 文件及其用途的误解。 CSR 是 SSL 证书配置和运行不可或缺的一部分。 每次订购新的 SSL 证书或更新现有证书时,都必须生成该证书。

常见问题

证书签名请求有什么用?

CSR 是一小段编码文本,其中包含 CA 在签发 SSL 证书前验证您的证书时所需的联系数据。

复制链接

签署证书意味着什么?

当 SSL 证书被签署时,意味着证书颁发机构审查了 SSL 申请人,并认定 CSR(证书签名请求)中提供的信息是正确合法的。

复制链接

证书签名请求的有效期有多长?

在某些系统(如 Aruba ClearPass)上,证书签名请求的有效期只有 15 天。 虽然这可能是一个极端的例子,但 SSL 证书的有效期为一年,应该可以确定 CSR 的有效性。 在更新 SSL 证书时,应生成新的 CSR 代码,以更新信息并遵守最佳安全规范。

复制链接

证书签名请求是否保密?

不,CSR 不是机密,因为它除了帮助 CA 签署 SSL 证书外没有其他价值。 而且,虽然它不包含任何加密密钥,但你还是应该自己保管好它。 与第三方共享或在论坛和网站等公共空间共享会引起对您敏感信息不必要的关注。

复制链接

立即订购 SSL 证书, 可节省 10% 的费用!

快速发行, 强大加密, 99.99% 的浏览器信任度, 专业支持和 25 天退款保证. 优惠券代码 SAVE10

撰写人

经验丰富的内容撰稿人, 擅长 SSL 证书. 将复杂的网络安全主题转化为清晰, 引人入胜的内容. 通过有影响力的叙述, 为提高数字安全作出贡献.