LINUX.ORG.RU
решено ФорумAdmin

Интерактивное добавление дополнений при создании сертификатов x509

 ,


1

1

Hi, folks.

Существует необходимость добавлять к сертификатам дополнение subjectAltName, в котором каждый раз указывать разные dnsName, ipAddress и пр. При этом для решения этой задачи предлагается определять в openssl.cnf дополнительную секцию, например так:

[req]
req_extensions = v3_req

[v3_req] 
subjectAltName = @alt_names

[alt_names]
DNS.1   = www.foo.com
DNS.2   = www.bar.org
IP.1    = 192.168.1.1
IP.2    = 192.168.69.144
Переписывать каждый раз секцию alt_names в openssl.cnf — явно не самое удобное решение. Вопрос в следующем, можно ли заставить openssl запрашивать значения дополнений с терминала или считывать их из файла отличного от своего конфига? Если это возможно как такое поведение можно задать?

Спасибо.

1. конфиг можно генерировать и передавать через -config

2. отказаться от конфига и передавать все нужные параметры через -subj

anonymous2 ★★★★ ()

Решено

Разобрался самостоятельно. Дополнения можно добавлять непосредственно перед подписью CSR из файла. При этом на стадии генерации CSR можно вообще не указывать никаких дополнений. Делается с помощью ключа -extfile

$ openssl req -new -nodes -keyout foo.key -out foo.req
$ openssl ca -extfile foo.ext -in foo.req -out foo.cert
В самом файле foo.ext указываются все необходимые дополнения:
basicConstraints = CA:FALSE
keyUsage = nonRepudiation,digitalSignature,keyEncipherment
subjectAltName = @altname

[altname]
DNS.1 = foobar.com
IP.1 = 1.2.3.4

trancefer ★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.