我需要将以下SAN添加到证书中:
oid:1.2.3.4.5.5
我正常的证书创建过程是生成openssl.cnf文件,然后使用此文件生成csr(证书签名请求),然后使用我自己的CA从csr生成证书。
.cnf文件是纯文本文件,其中包含一个部分,描述了我想包含在csr中并最终包含在crt中的所有SAN。该部分如下所示:
...
[san]
DNS.1 = foo.bar
DNS.2 = baz.foobar
IP.1 = 1.1.1.1
IP.2 = 2.2.2.2
...
我尝试以3种不同的方式插入OID条目:
attempt 1) OID.1 = 1.2.3.4.5.5
attempt 2) DNS.3 = 1.2.3.4.5.5
attempt 3) IP.3 = 1.2.3.4.5.5
使用1)尝试生成证书时出现错误,指示前缀
OID
无法识别。使用2)和3)我可以生成crt,但是当我将其放置到位时,不支持SAN oid:1.2.3.4.5.5。因此,我想知道将其添加到openssl.cnf文件的“使用者替代名称”部分的正确语法是什么。
干杯!
最佳答案
根据Steffen Ullrich的回答,此版本在完整示例中正确指定了OID标识符:
subjectAltName=@san
[san]
DNS.1=foo.example.com
DNS.2=bar.example.com
RID.1=1.2.3.4.5.5
另外,也可以一行执行:
subjectAltName=DNS:foo.example.com,DNS:bar.example.com,RID:1.2.3.4.5.5
当与https://security.stackexchange.com/a/91556组合以在不使用.cnf文件的情况下将
-config
选项传递到CLI时,此功能特别有用。