Точка распространения CRL с несколькими именами

Я хотел бы создать сертификат с точкой распространения CRL, которая содержит несколько URL (ссылающихся на один и тот же CRL, согласно RFC 5280):

Когда OpenSSL разбирает такой сертификат, он показывает что-то вроде этого:

            X509v3 CRL Distribution Points: 

                Full Name:
                  URI:http://addr1
                  URI:http://addr2
                  ...

Как создать такой сертификат самостоятельно, предпочтительно используя openssl?

1
задан 4 August 2021 в 15:49
1 ответ

Чтобы определить ПОСЛЕДОВАТЕЛЬНОСТЬ общих имен, вам необходимо определить crlDistributionPoints в вашей конфигурации OpenSSL, используя полный формат:

crlDistributionPoints = cdp1

...

[cdp1]
fullname = URI:http://example.com/myca.crl,URI:http://example.org/my.crl

Что отображается как:

        X509v3 CRL Distribution Points:

            Full Name:
              URI:http://example.com/myca.crl
              URI:http://example.org/my.crl

Полный пример начинается с создания файл конфигурации (например, example.cnf):

[req]
prompt = no
distinguished_name = dn

[dn]
countryName = gb
organizationName = Example
commonName = Example Web Server

[ext]

subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer
keyUsage = critical, digitalSignature, keyAgreement
extendedKeyUsage = serverAuth
crlDistributionPoints = cdp1
subjectAltName = @alt_names

[cdp1]
fullname = URI:http://example.com/myca.crl, URI:http://example.org/my.crl

[alt_names]
DNS.1 = www.example.com
DNS.2 = www.example.org

Используйте конфигурацию для создания запроса на подпись сертификата (CSR):

 openssl req -newkey rsa:2048 -keyout example.key  -nodes -config example.cnf -out example.csr

Обратите внимание, что в приведенном выше примере создается 2048-битный ключ RSA без защиты паролем. Удалите -узлы, если вам нужно защитить закрытый ключ паролем.

Попросите CA подписать CSR, созданный выше.

1
ответ дан 5 August 2021 в 05:00

Теги

Похожие вопросы