Сегодня в статье рассмотрим пример настройки HSTS на вашем домене, а также успешное прохождение тестов на ssllabs.com в пункте HSTS (подсветить зелёным).
HSTS preload list — это листинг сайтов, которые по умолчанию в браузере будут открываться сразу только по HTTPS, даже если пользователь попытается обратиться к домену по http. Листинг используется большинством современных браузеров. Сервис проверки ssllabs.com проверяет этот параметр отдельно.
Для того что бы в этот листинг попасть, необходимо сделать следующее…
1. Установить на сервер валидный ssl сертификат. Подойдут как бесплатные сертификаты, например от Let’s Encrypt, так и платные.
2. Подготовить сайт на основном и www домене к корректной работе по https, подготовить к работе по https поддомены сайта, если таковые имеются. Убедиться (это важно!) что все поддомены и основной домен по https работают корректно.
3. Настроить на сайте редирект с http на https.
4. Прописать HSTS заголовок в конфиге веб-сервера.
— Для Nginx строку можно добавить в секцию server конкретного виртуального хоста, либо если на сервере работает только один домен в секцию http общего конфига:
add_header Strict-Transport-Security "max-age=31536000; includeSubdomains; ";
— для Apache в основном конфигурационном файле и виртуальном хосте необходимо прописать следующее:
LoadModule headers_module modules/mod_headers.so
<VirtualHost 80.81.82.83:443>
Header always set Strict-Transport-Security "max-age=31536000; includeSubdomains;"
</VirtualHost>
5. Перейти на hstspreload.org и отправить URL вашего домена в соответствующую форму.
Хотелось бы ещё раз обратить внимание на то, что если вы только что установили ssl сертификат и только приступили к настройке, имеет смысл повременить с добавлением сайта в листинг.
Спустя некоторое время на этом же ресурсе можно будет проверить статус сайта. Положительный ответ выглядит так:
Для ssllabs.com это выглядит так:
[endtxt]