Вопрос или проблема
Я знаю, что доменная зона .dev
требует от всех сайтов поддержки только зашифрованных HTTPS соединений, запрещая любые HTTP соединения.
Существуют ли другие такие доменные зоны?
Прямой ответ на этот вопрос в конечном итоге устареет, если больше доменных зон начнут вводить HTTPS с помощью HTTP Strict Transport Security (HSTS, RFC 6797). Технически это политика HSTS для доменной зоны, добавленная в список предзагрузки. Это началось с новых доменных зон Google,
Список предзагрузки HSTS может содержать отдельные домены или поддомены и даже доменные зоны (TLD), которые добавляются через веб-сайт HSTS. TLD — это последняя часть доменного имени, например,
.com
,.net
или.org
. Google управляет 45 доменными зонами, включая.how
и.soy
. В 2015 году мы создали первую безопасную доменную зону, когда добавили.foo
и.dev
.
и даже были предварительные мысли о возможности защиты всей зоны .gov
в будущем:
Увеличивая масштаб еще больше: технически возможно предзагрузить HSTS для всей доменной зоны (например, “
.gov
”), как это впервые сделал Google с.gov
сможет это сделать.
Чтобы узнать текущее положение дел, нужно обратиться к списку предзагрузки HSTS Chromium.
Список предзагрузки также доступен на GitHub-репозитории Chromium; особенно сырой вариант лучше всего подходит для curl
или wget
. Список представляет собой нестандартный JSON с комментариями. Его можно проанализировать с помощью jq
после удаления комментариев с помощью, например, sed
.
Здесь jq
выдает все доменные имена из списка предзагрузки, а grep
сокращает его до TLD:
cat transport_security_state_static.json \
| sed 's/^\s*\/\/.*//' \
| sed '/^$/d' \
| jq -r '.entries[]|select(.include_subdomains==true)|"\(.name)"' \
| grep -P "^\.?[a-z]*\.?$"
Чтобы искать публичные суффиксы вместо TLD:
cat transport_security_state_static.json \
| sed 's/^\s*\/\/.*//' \
| sed '/^$/d' \
| jq '.entries[]' \
| jq 'select((.policy=="public-suffix") and (.include_subdomains==true))' \
| jq -r '"\(.name)"'
Этот список был сгенерирован с использованием процедуры из ответа Эсы Йокинен, но казалось, что было бы полезно иметь дословный список, даже если его нужно периодически обновлять.
HSTS предзагруженные TLD
- android
- app
- bank
- boo
- chrome
- dad
- day
- dev
- eat
- esq
- fly
- foo
- gle
- gmail
- hangout
- ing
- insurance
- meet
- meme
- new
- nexus
- page
- phd
- play
- prof
- rsvp
- search
- youtube
HSTS предзагруженные публичные суффиксы
(эта часть ответа, вероятно, устареет быстрее)
- bmoattachments.org
- cnpy.gdn
- gentapps.com
- now.sh
Ответ или решение
Топовые доменные зоны (TLD), требующие HTTPS-соединений
В веб-разработке и администрировании систем важность использования безопасных протоколов связи не вызывает сомнений. Одной из наиболее заметных тенденций в этом направлении является введение обязательных для использования протоколов HTTPS в некоторых доменных зонах (TLD). Текущая известная зона, требующая HTTPS-соединений, — это .dev. Однако существуют и другие TLD, которые также используют принципы HSTS (HTTP Strict Transport Security).
Обзор TLD, требующих HTTPS
-
.dev: Эта доменная зона была одной из первых, которая строго требует, чтобы все соединения были защищёнными через HTTPS, что делает её идеальной для разработчиков, работающих с веб-приложениями.
-
Список HSTS-предварительно загруженных доменных зон:
В Google была разработана предварительная загрузка HSTS для различных доменных зон. Некоторые из них включают:- .app
- .bank
- .foo
- .chrome
- .new
- .youtube
- и другие TLD, которые также требуют использования HTTPS.
Принцип работы HSTS
HSTS — это механизм безопасности, который заставляет браузеры использовать только HTTPS для связи с серверами, добавленными в предварительно загруженный список. Это означает, что даже в случае попытки подключиться через HTTP, браузер автоматически перенаправляет на HTTPS, защищая пользователей от разнообразных атак, таких как "человек посередине" (MITM).
Преимущества HSTS:
- Повышение безопасности: Устойчивость к атакам, использующим HTTP.
- Улучшение SEO: Поисковые системы, такие как Google, отдают предпочтение сайтам с HTTPS.
- Повышение доверия: Пользователи чаще доверяют сайтам с защищённым соединением.
Как узнать текущие TLD с поддержкой HSTS
Для определения актуального списка доменных зон с поддержкой HTTPS необходимо обратиться к HSTS-preloaded list Chromium. Этот список периодически обновляется и содержит информацию о как о доменах, так и о поддоменах, которые находятся под защитой HSTS.
Для извлечения TLD из этого списка можно воспользоваться следующими командами в Unix-подобной среде:
cat transport_security_state_static.json \
| sed 's/^\s*\/\/.*//' \
| sed '/^$/d' \
| jq -r '.entries[]|select(.include_subdomains==true)|"\(.name)"' \
| grep -P "^\.?[a-z]*\.?$"
Заключение
HTTPS становится стандартом для обеспечения безопасности в интернете. С ростом числа доменных зон, требующих шифрования, пользователи могут быть уверены, что их данные защищены. Регулярное обновление списка TLD, который требует HTTPS, является обязательным, поскольку индустрия продолжает развиваться и внедрять новые стандарты безопасности. Рекомендуем следить за актуальными изменениями и внедрениями в HSTS для поддержания безопасности ваших ресурсов.