定议
CSR英文全称Certificate Signing Request,中文意思:证书签名请求。CSR文件是申请SSL证书时所需要的一个数据文件。证书签名请求 (CSR) 文件是您生成并提供给证书颁发机构的内容,证书颁发机构又会签署并向您发送用于在您的 Web 服务器上启用 HTTPS 的请求 SSL 证书。CSR也是其他一些技术术语的缩写,但它们都与本页描述的文件格式无关。一些示例包括蜂窝交换机路由器、客户自我修复、内容服务请求以及控制和状态寄存器。
CSR文件组成?
CSR 文件包含有关您的组织和您请求的证书类型的信息。它们通常是在OpenSSL等实用程序的帮助下自动生成的。如果您使用的是LetsEncrypt,CSR文件的创建全部由certbot为您管理。CSR 文件包含以下信息:
- 公用名 (CN) – 服务器的主机名。它必须完全匹配,否则您的用户将在浏览器中看到一个错误页面,指出证书不受信任。您可以使用通配符(例如)请求适用于所有子域的通配符证书。像这样的通配符适用于,但如果您希望保护根域和所有子域,则需要两个单独的证书。公用名是技术上唯一必需的字段,因此如果需要,可以将其他所有内容留空。但是,最好填写其他内容。*.domain.comwww
- 组织 (O) – 您公司的完整法定名称,包括任何后缀,例如 LLC。如果您请求 EV 或 OV 证书(完全没有意义),则需要对其进行验证。但是,对于普通的SSL,您可以放置任何内容,因为它没有经过检查,甚至不需要。
- 组织单位 (OU) – 处理证书的公司部门。
- 国家/地区 (C) – 您所在国家/地区的两个字母的国家/地区代码。
- 州/县/地区 (S) – 您所在州的全名。
- 城市/地区 (L) – 您所在城市的全名。
- 电子邮件地址 – 您组织的电子邮件地址。
- 使用的 RSA 公钥
实际的CSR文件本身是PEM格式,并且是base64编码数据的一大块:
不过,您不想手动编辑它;相反,您可以使用OpenSSL之类的工具在服务器上生成它。-----BEGIN CERTIFICATE REQUEST-----
MIICYDCCAUgCAFAwGzEZMBcGA1UEAwwQKi5wcm92aWRlbmNlLnBlbTCCASIwDQYJ
KoZIhvcNAQEBBQADggEPADCCAQoCggEBALA3vPkQJejmFk20mZT/J2995ibnz9MV
2hd+ltxX0gS9/rDZgGZA8nyPojpXVJbLxJ5PuSqmyZrDA2F3YvCwy13b7QZT/f56
mH3103cVaefhfy+Lc7JSJZtJkw6mVBz9Vz+cpmc3hm0DV3tIZW4L8DKYVQoWl3Ed
N0nsHykoI02ZoVdDL+AZU6sNJ2LV9j0LuS2YZkGU7PHsij2W2zROtyL7HdnZp5m6
6e8e6ro9uBoCHBVSEeCDgBHLVQ92IRzPTzpSDr7dYhA2YHPbrjt6T63IgwiR4CU0
2Iq282KasNw1jkyIil9/5GPsqHH5Fw0Le/7Goqrk2Ez3zHwu7pv88AkCAwEAAaAA
MA0GCSqGSIb3DQEBCwUAA4IBAQADq9KOCkyLNA7t6RDPatw006CR8zETGqlfnQ2h
jxjDZlBWZbAVg6ftEMawxuKRbfw1bmJn53QSMpeX5HiMQLHliw3vsoIsRMPbwdxr
j2ydJhYO95ktk4JRvD3/YR8hRYrGD4EYlsC+u1RwWTXXZ9ZjTvDtf4LZccKAysOW
vM88R3pWCpDzTg4KWDw1jsq7Y9ISTYuBkd7d+d7GvK/VxITx8kSAgJRGkd54nlet
pZdBwdY95Jg0AyecAE5GSNPiHmRTkm/rTXIPOyGY1kO9Mk/c+q+ZTEhH53v5bzUw
yrLZuJkNL3KiNbZIWvQ3ljHNeM3+9437n4W3nDTcGL2Bi41n
-----END CERTIFICATE REQUEST-----
如何创建CSR文件
如果你的服务器运行的是Linux,如果你已经安装了Apache或Ubuntu,你可能已经安装了OpenSSL。如果没有,您可以从发行版的包管理器安装它:然后,运行以下命令以启动 CSR 创建向导:sudo apt-get install openssl
这将生成一个新的私钥,以在此过程中使用并将其保存到。然后,系统会提示您输入信息;如果您愿意,可以将大部分留空,但请确保公用名正确。server.keyopenssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr
然后,您需要向证书颁发机构提供 CSR 文件以继续 SSL 证书创建过程。如果您使用的是certbot,这是自动处理的,您根本不用担心 CSR 文件。