Мне нужно настроить веб-сервер IIS, к которому будет иметь доступ небольшое конечное число пользователей. Я рассматривал возможность использования только самозаверяющего сертификата и его ручной установки в пользовательских системах.
Поэтому я сгенерировал сертификат с помощью инструментов IIS, установил его на веб-сервере и экспортировал в файл .cer. Добавление доверенных центров в настройках Windows хорошо работает с Internet Explorer: это удаляет предупреждение о небезопасности.
В firefox не могу заставить его работать. Включение опции security.enterprise_roots.enabled не помогает. В настройках сертификата Firefox я не могу импортировать его на панель «Авторитет», появляется сообщение об ошибке:
Это не сертификат центра сертификации, поэтому его нельзя импортировать в список центров сертификации.
Что я могу сделать? Я не хочу добавлять исключение в Firefox, поскольку он навсегда отключает любую проверку сертификатов на URL-адресе, что означает, что любой человек в средней атаке становится прямым. Я хочу, чтобы пользователю был заблокирован доступ к веб-сайту, если сертификат изменится на сервере.
Для добавления в список центров сертификации в Firefox сертификат должен иметь расширение X509v3. CA:TRUE
, например
X509v3 extensions:
X509v3 Key Usage: critical
Certificate Sign, CRL Sign
X509v3 Basic Constraints: critical
CA:TRUE
Это было бы так, если бы у вас был собственный частный сертификат CA, используемый для подписи сертификатов сервера: вы могли бы импортировать его и использовать для подписания всех сертификатов вашего частного сервера, сразу сделав их доверенными в браузере.
Для самозаверяющих сертификатов самым простым решением является добавление исключения. Ярлык: chrome://pippki/content/exceptionDialog.xul
. Это делает исключение только для ЭТОГО сертификата. Вы по-прежнему будете получать предупреждение о ненадежном сертификате, если сертификат изменится.
Это стало возможным разрешить Firefox доверять центрам сертификации из Windows начиная с Firefox 49 (Ошибка 1265113). Параметр конфигурации security.enterprise_roots.enabled
. Он не будет установлен на true
по умолчанию (Ошибка 1314010), но наличие этого параметра конфигурации позволяет распространять его через групповую политику, что делает его идеальным расширением для сертификатов CA, установленных через GPO.
В настоящее время по умолчанию general.config.filename
кажется, уже настроен на mozilla.cfg
. Вам просто нужно добавить эту строку в файл (заменить ее с помощью групповой политики) %ProgramFiles%\Mozilla Firefox\Mozilla.cfg
:
pref("security.enterprise_roots.enabled", true);
Чтобы заблокировать настройку, чтобы пользователи не могли ее изменить, используя about:config
, используйте lockPref()
вместо этого.