Избегайте добавления исключения на веб-сайте, если CA-сертификат не установлен - PullRequest
0 голосов
/ 22 февраля 2020

Я создал свои собственные сертификаты CA с помощью openssl. У меня есть четыре файла:

  • ca.key (приватный ключ ca)
  • ca.crt (сертификат publi c ca)
  • server.key (private) ключ)
  • server.crt (сертификат publi c, подписанный файлами ca)

Я использую nginx с конфигурацией ssl.

ssl_certificate server.crt;
ssl_certificate_key server.key;

Если я установлю сертификат ca publi c на свой компьютер, браузер разрешит мне go на веб-сайте без добавления исключения, что является хорошим. Но если у меня не установлен сертификат CA на моем компьютере, я должен добавить исключение для передачи. Я хочу избежать добавления исключений и заставить пользователя установить сертификат CA на своем компьютере.

Я настраиваю nginx с помощью hsts (http строгая безопасность транспорта):

add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
ssl_stapling on;
ssl_stapling_verify on;
ssl_trusted_certificate ca.crt;

К сожалению, я снова есть возможность добавить исключение для передачи.
Мне интересно, возможно ли это сделать?

1 Ответ

0 голосов
/ 22 февраля 2020

Я понимаю, что мои сертификаты не работают с chrome missing_subjectAltName. Поэтому я исправил это с помощью этой ссылки . И теперь у меня есть это сообщение с chrome, если мой сертификат CA не установлен на моем компьютере:

Вы не можете посетить localhost прямо сейчас, потому что сайт использует HSTS. Сетевые ошибки и атаки обычно носят временный характер, поэтому эта страница, вероятно, будет работать позже.

Это именно то, что я хочу. Однако он не работает на firefox, поэтому я могу добавить исключение.

Почему chrome блокирует его, а не firefox? Как я могу сделать это на firefox тоже?

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