Если вынуждены пользоваться самоподписанным сертификатом - сразу отключайте HSTS.
Сразу (до захода на сайт) добавьте свой сайт с самоподписанным сертификатом в список доверенных в Kaspersky Endpoint Security: Настройки->Общие параметры->Параметры сети->Доверенные домены.
- Есть случаи, когда самоподписанного сертификата не избежать, несмотря на возможности "Let's Encrypt", например если ваш сайт доступен только из локальной сети.
- Функция касперского "проверять защищённые соединения" подменяет сертификат (фактически работая как MitM) на подписанный их собственным CA.
- Есть сервера (например GitLab) которые устанавливают HSTS несмотря на работу с самоподписанным сертификатом. Собственно это независимые настройки.
- HSTS включает в браузере защиту от смены сертификата (точнее от смены сертификата на сертификат от другого CA).
- HSTS взводится при первом посещении браузером страницы сервера, которая в HTTP-заголовке имеет поле
Strict-Transport-Security
. - Если, как в случае с касперским при вашем первом посещении вы были соединены через MitM, и получили сертификат от него, то его браузер и запомнит.
- Потом, когда MitM отключится, браузер откажется доверять настоящему серверному сертификату.
- https://www.nginx.com/blog/http-strict-transport-security-hsts-and-nginx/
- https://habr.com/ru/post/320164/
- В GitLab HSTS выключается настройкой
nginx['hsts_max_age']=0
.