Как заставить Mozilla FireFox принимать ssl-сертификат вашего корневого центра сертификации, чтобы он не жаловался на самозаверяющие ssl-сертификаты на https? - PullRequest
0 голосов
/ 26 апреля 2019

Сначала я хочу отметить, что это отлично работает с Internet Exporer 11. Но по какой-то причине я просто не могу заставить FireFox играть хорошо!

Итак, я уже добавил свой собственный сертификат безопасности rootCA, и в Internet Explorer он работает нормально, и мой сайт с самозаверяющим сертификатом пользуется доверием.

Но в Firefox v61.0.1, а также v65.0, даже если мой корневой сертификат уже добавлен, и, кроме того, для security.enterprise_roots.enabled задано значение true (в about: config), я по-прежнему получаю сообщение «Ваше соединение установлено». сообщение не защищено, и я должен добавить исключение безопасности только для просмотра своего сайта.

В области с сообщением и кнопкой добавления исключения Firefox говорит:

"xx.xxx.xx.x использует недействительный сертификат безопасности. Сертификат действителен только для xx.xxx.xx.x. Код ошибки: SSL_ERROR_BAD_CERT_DOMAIN"

Теперь xx.xxx.xx.x - это IP-адрес, доступный через Интернет, и оба экземпляра в приведенной выше строке имеют точно такой же IP-адрес, я использовал IP для поля CN.

нажатие на SSL_ERROR_BAD_CERT_DOMAIN показывает: "Невозможно безопасно обмениваться данными с равноправным узлом: запрошенное имя домена не соответствует сертификату сервера. HTTP Strict Transport Security: false Закрепление открытого ключа HTTP: false Цепочка сертификатов: ----- BEGIN CERTIFICATE ----- ..... .. "

В любом случае, я предполагаю, что в его текущей конфигурации Mozilla FireFox ЗАБИРАЕТСЯ, что у сайта есть недействительный сертификат, хотя на самом деле он действителен, и причина его путаницы заключается в том, что он ожидает доменное имя, а не IP-адрес.

Если так, могу ли я сказать Firefox, чтобы он соблюдал ssl-сертификаты на основе IP-адресов?

Опять же, текущая конфигурация прекрасно работает с Internet Explorer для меня.

Как вы знаете, многим инструментам, таким как встроенная IDE svn и другие клиенты контроля версий, действительно не нравится, когда в ssl-cert есть на что жаловаться.

По этой причине у меня возникли проблемы с созданием и загрузкой собственного Root CA Authority в Windows. И нет, пожалуйста, не рекомендуйте letsencrypt, требуется частое обновление, и у меня нет входящих портов OPEN, которые, по-видимому, требуют обновления.

ТНХ!

1 Ответ

0 голосов
/ 27 апреля 2019

Ура! Успех :) Я решил, что путаница между IP-адресом и именем неясна, и обнаружил, что мой extfile в разделе [alt_names] использовал DNS.1 = xx.xxx.xx.x

Поэтому я просто отредактировал свой extfile и изменил DNS.1 = ..., чтобы теперь он был IP.1 = xx.xxx.xx.x

Тогда я просто воссоздал сертификат моего веб-сервера. Для тех, кто интересуется, вот фактическая команда:

openssl x509 -req -in mywebserver.csr -CA myrootCA.pem -CAkey myrootCA.key -CAcreateserial -out ./certs/mynginxwebserverIP.crt -days 2555 -sha256 -extfile myextfile.cnf

Это переписало мой текущий файл .crt, и все, что мне нужно было сделать, это nginx -s reload и bingo!

Хорошо, надеюсь, это поможет кому-то, потому что это сводило меня с ума!

Теперь он отлично работает в Firefox, и я получаю этот приятный зеленый замок :) И интернет-обозреватель не знал / не заботился о разнице, работал в обе стороны: D

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...