首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为多域生成CSR

为多域生成CSR
EN

Stack Overflow用户
提问于 2012-02-06 17:45:32
回答 1查看 43.3K关注 0票数 33

如何生成多域CSR。

我发现生成单个域名的CSR如下所示:

代码语言:javascript
运行
复制
openssl req -new -newkey rsa:2048 -nodes -keyout yourdomain.key -out yourdomain.csr

但是如何生成CSR多域名呢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-02-06 18:23:40

根据RFC 2818 (HTTP over TLS) (或RFC6125),对于支持多个域的X.509证书,它必须使用多个使用者备用名称DNS条目:

如果存在类型为dNSName的subjectAltName扩展,则必须将其用作标识。否则,必须使用证书的Subject字段中的(最具体的) Common Name字段。虽然通用名称的使用是现有的做法,但它已被弃用,并鼓励证书颁发机构改用dNSName。

匹配是使用RFC2459指定的匹配规则执行的。如果在证书中存在给定类型的多于一个的身份(例如,多于一个的dNSName名称,则认为该组中的任何一个中的匹配是可接受的)。

this document中所述(除非我也会对genrsa命令使用-des3,以保护私钥):

  • 复制您的初始openssl.cnf文件(原始文件可能在Linux上的/etc下的某个地方)。
  • 使用该配置文件在<openssl.cnf>d18/etc> section.
  • Edit OpenSSL中编辑它以添加req_extensions = v3_req,并将其添加到< [ req ] >d17subjectAltName=DNS:www.example.com,DNS:www.other-example.com >中的OpenSSL(您需要的每个主机名一个DNS:条目)。用OPENSSL_CONF=/path/to/your/openssl.cnf openssl req ...

调用它

话虽如此,我并不太担心在CSR中设置任何扩展。任何好的CA都应该忽略您在CSR中设置的内容,而只设置他们在颁发实际证书时实际验证过的内容。他们将很乐意替换您的主题DN中的任何RDN (例如,国家/地区、组织等)以及任何扩展(SAN或密钥使用)。首先,如果他们根据申请人在企业社会责任中提出的任何延期要求,这将是一个安全风险,因为一些申请人可能真的会得到任何东西。其次,这就是他们如何赚取额外的钱,通过向你收取这里和那里设置的一些位(例如代码签名扩展):他们将确保你只得到你在证书中支付的东西。不过,我知道你可能想把你要求的所有名字都写在你的CSR里,只是为了确认一下。

票数 36
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9158245

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档