Как поделиться самозаверяющим сертификатом TLS между веб-сайтами

У меня есть два веб-сайта в одном домене, например app1.test.local и app2.test.lcaol. Ниже приведена процедура, с помощью которой я создал сертификат self-signed.

  • Создайте закрытый ключ.
openssl genrsa -out tls.key 2048
  • Отредактируйте файл openssl.conf и обновите содержимое req_distinguished_name и alt_names.
[req]
distinguished_name = req_distinguished_name
req_extensions = v3_req

[req_distinguished_name]
countryName = IN
countryName_default = IN
stateOrProvinceName = KA
stateOrProvinceName_default = KA
localityName = Test
localityName_default = Test
organizationalUnitName = test
organizationalUnitName_default = test
commonName = *.test.local
commonName_max = 64
[ v3_req ]
# Extensions to add to a certificate request
basicConstraints = CA:FALSE
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
subjectAltName = @alt_names
[alt_names]
DNS.1 = *.test.local
  • Создать запрос на подпись сертификата
openssl req -new -out tls.csr -key tls.key -config openssl.cnf
  • Подпишите SSL-сертификат.
openssl x509 -req -days 3650 -in tls.csr -signkey tls.key -out tls.crt -extensions v3_req -extfile openssl.cnf

Из опции браузера view certificate я вижу, что и SAN, и CN имеет значение *.test.local. Однако, когда я запускаю приложение app2 из app1, браузер снова предлагает доверять сертификату [The certificate is not trusted because it is self-signed.].

Вопрос: Как запретить браузеру запрашивать Accept the risk and Continue несколько раз для одного и того же сертификата, но с разных веб-сайтов для самозаверяющих сертификатов.

Как включить TLS в gRPC-клиенте и сервере : 2
Как включить TLS в gRPC-клиенте и сервере : 2
Здравствуйте! 🙏🏻 Надеюсь, у вас все хорошо и добро пожаловать в мой блог.
Обновление драйверов Microsoft ODBC (с 17 до 18) для PHP
Обновление драйверов Microsoft ODBC (с 17 до 18) для PHP
Все знают, что PHP v7.4 потерял поддержку, и наши недавние старые приложения должны обновиться до PHP v8.x. ...
0
0
26
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

How to prevent browser from prompting to Accept the risk and Continue multiple times for the same certificate but from different websites for self-signed certificates.

Переопределение предупреждения о сертификате повлияет только на текущий используемый домен, а не на каждый домен в сертификате. В противном случае кто-то может создать сертификат для какого-то невинного сайта, который также включает SAN важного сайта, такого как paypal.com, а затем повторно использовать сертификат для олицетворения важного сайта.

Чтобы сделать сертификат доверенным для всех доменов, указанных в сертификате, необходимо явно импортировать сертификат как доверенный в хранилище доверенных сертификатов браузера, а не просто игнорировать предупреждения сертификата.

Другие вопросы по теме