Есть ли способ очистить HSTS без сертификата SSL?
Недавно я переключил сервер для своего сайта, и мне удалось потерять расшифрованный ключ SSL, и я не могу вспомнить пароль для зашифрованного. Оказалось, что сервер включил HSTS, и теперь многие посетители не могут загрузить страницы, так как у меня нет действующего сертификата SSL, а их браузеры отказываются подключаться через http из-за HSTS.
Итак, мне нужен способ отключить этот HSTS из своих браузеров. Запрашивать у них очистку данных для просмотра не нужно, но мне было интересно, смогу ли я создать совместимый с Firefox/ Chrome javascript для его очистки. (Скрипт будет находиться в другом домене)
Я немного копался, но не нашел много информации о том, как мне подходить к проблеме, если это вообще возможно. Все другие предложения тоже приветствуются.
2 ответа
HSTS - это компромисс: вы берете на себя ответственность за то, чтобы отныне и навсегда обеспечивали безопасное SSL-соединение, на которое может рассчитывать браузер, что заставит браузер отказаться от всего, кроме SSL-соединения с вашим доменом. Это накладывает на вас дополнительное бремя, но повышает безопасность ваших посетителей.
Браузер сохраняет это предпочтение во внутренней базе данных, которая не может быть очищена ни одним веб-сайтом. Если бы любой сайт мог просто отменить это предпочтение через Javascript, вся система была бы бессмысленной.
Вам придется вручную очистить базу данных и / или удалить эту конкретную запись. Каждый браузер делает это по-своему, см. http://classically.me/blogs/how-clear-hsts-settings-major-browsers для обзора.
Реальное решение:
- Установите действительный сертификат
- Заставьте людей посещать ваш сайт
- Отправить новый заголовок
В эти дни получение действующего сертификата бесплатно или стоит меньше, чем бутерброд (8 долларов или около того).