Как зашифровать DNS, не трогая роутер, используя DNS через HTTPS

Последнее обновление: 15/10/2025
Автор: Исаак
  • DoH шифрует DNS-запросы по HTTPS, улучшая конфиденциальность и безопасность без внесения изменений в маршрутизатор.
  • Простая активация в браузерах и встроенная поддержка в Windows, Windows Сервер 2022, Linux, macOS и Android.
  • Режимы Opportunistic и strict: отдайте приоритет строгому режиму, чтобы избежать перехода к обычному тексту.
  • Предприятия: управление с помощью GPO/MDM и собственных резолверов; проверка целостности с помощью DNSSEC.

Иллюстрация шифрования DNS DoH

Если вы хотите просматривать веб-страницы в более приватном режиме, не прибегая к настройке маршрутизатора, решение заключается в включении DNS через HTTPS (DoH) непосредственно на ваших устройствах и в браузерах . Эта технология шифрует DNS-запросы, так что они больше не передаются в открытом виде, что значительно затрудняет попытки перехвата или манипулирования вашей онлайн-активностью.

Помимо технических аспектов, здесь вы найдете конкретные шаги для Chrome, Edge, Firefox, Windows (включая Windows Server 2022), Linux, macOS и Android , а также советы по проверке работоспособности, альтернативы, такие как DoT/DNSCrypt, и рекомендации для бизнеса. Все это с практическим подходом и без необходимости трогать ваш маршрутизатор.

Что такое DoH и почему это должно вас волновать

DNS — это адресная система Интернета: она преобразует имена, такие как example.com, в IP-адреса, понятные компьютерам; извечная проблема заключается в том, что традиционные DNS-запросы отправляются в незашифрованном виде , что раскрывает, какие домены вы разрешаете, и позволяет манипулировать данными по пути.

В DoH резолвер и ваш компьютер обмениваются данными по протоколу HTTPS (порт 443), интегрируя TLS для шифрования и аутентификации запросов . Это затрудняет слежку, перехват DNS, отравление кэша и выполнение других вредоносных действий в открытых сетях, таких как Wi-Fi в аэропортах.

Что касается производительности, независимые измерения (например, от samknows) показывают, что различия по сравнению с классическим DNS (Do53) минимальны или незначительны во времени загрузки страниц . Кроме того, использование постоянных HTTPS-соединений помогает снизить задержку соединения.

Следует отметить, что, хотя DoH повышает конфиденциальность, он не удаляет все возможные следы : метаданные транспортного или прикладного уровня (например, SNI или OCSP в определенных контекстах) все еще остаются, поэтому целесообразно сочетать его с передовыми методами (TLS 1.3, HTTP/3, сквозное шифрование и т. д.).

Если вы ищете альтернативы или дополнения, существуют DNS over TLS (DoT), DNSCrypt, DNSCurve и DNSSEC . DoT шифрует данные на транспортном уровне на порту 853, DNSSEC проверяет целостность ответа, а DNSCrypt добавляет параметры аутентификации и конфиденциальности; каждый из них занимает своё место в экосистеме.

Концепция DNS через HTTPS

DoH против DoT, порты и уровни: основы

При использовании DoT DNS-сообщение передается непосредственно в TLS-туннель (порт 853). При использовании DoH DNS-сообщение передается в виде HTTP-трафика внутри HTTPS (порт 443) ; это позволяет DoH-трафику сливаться с остальным веб-трафиком, обходя простую блокировку портов.

Протокол основан на TLS: обмене сообщениями «Client Hello» и «Server Hello» и проверке сертификатов; после этого весь поток запроса/ответа передается в зашифрованном виде . TLS 1.3 уменьшает маршрутизацию, ускоряет работу и минимизирует риски корреляции, а HTTP/3 (по QUIC) может улучшить мультиплексирование и предотвратить потерю данных.

Существует также DNS поверх QUIC , аналогичный DoT, но использующий QUIC для предотвращения блокировки встроенных заголовков. Однако как HTTP/3, так и DNS/QUIC зависят от доступного UDP, поэтому они не всегда доступны и могут привести к сбоям в работе HTTP/2 или классического TLS.

  Что такое артефакты в Windows (судебные доказательства) и как их анализировать?

Практическая конфиденциальность: разработчики DoH не рекомендуют использовать HTTP-куки в разрешениях DNS ; большинство реализаций придерживаются этого принципа. Тем не менее, необходимо контролировать режим работы: оппортунистический (с возможным переходом к открытому тексту) или строгий (если нет безопасного канала передачи, разрешение не удается).

Один момент, который вы можете встретить: иногда говорят, что DoH не применим к сайтам HTTP . Правильно то, что DoH шифрует разрешение имен, а не содержимое веб-сайта; если страница имеет протокол HTTP, последующий просмотр не будет зашифрован, но DNS-запрос все равно может быть выполнен по протоколу HTTPS.

Включить DoH в основных браузерах

Проще всего это сделать в веб-браузерах. Chrome, Edge и Firefox уже поддерживают DoH и позволяют быстро его активировать, хотя и с небольшими различиями в зависимости от версии.

Google Chrome

В текущих версиях перейдите в chrome://settings/security и включите Secure DNS; вы можете использовать своего текущего провайдера, если он поддерживает DoH, или выбрать рекомендуемого (например, Cloudflare или Google ) . В более старых версиях переключатель находился в flags: chrome://flags/#dns-over-https (параметр Secure DNS lookups установлен в значение Enabled).

Chrome также протестировал оппортунистический режим: если системный резолвер соответствует внутреннему списку DoH-провайдеров , он обновляет транспорт, не затрагивая IP-адреса; в корпоративных средах это обычно отключается политикой.

Microsoft Edge (хром)

Аналогичный процесс: edge://settings/privacy для безопасного DNS в последних версиях; в предыдущих сборках работал флаг edge://flags/#dns-over-https (безопасные DNS-запросы были установлены в значение «Включено»). Он поддерживает известных провайдеров или того, которого вы уже используете, если он поддерживает DoH.

Mozilla Firefox

Откройте меню, перейдите в «Настройки» , а в разделе «Общие» нажмите «Сетевые настройки »; там вы увидите пункт «Включить DNS через HTTPS» , и вы сможете выбрать провайдера (Cloudflare, NextDNS или собственный) . Firefox поддерживает режимы TRR: оппортунистический или строгий, доступные через about:config (параметр network.trr.mode).

Mozilla даже протестировала активацию на основе региона с помощью резолверов, которые придерживаются строгих правил конфиденциальности . Для бизнеса существуют шаблоны, позволяющие отключить DoH или нацелить его на внутренние резолверы.

Настройка DoH на системах

Настройте DoH в своей системе: Windows 10/11 и Windows Server 2022

Windows 10/11 (клиент)

В современных версиях можно включить безопасный DNS в разделе «Настройки» > «Сеть и Интернет» , выбрав свой интерфейс (Wi-Fi/Ethernet), отредактировав DNS в режиме «Вручную» и установив флажок «Предпочтительное шифрование для IPv4/IPv6 с IP-адресами резолверов, поддерживающими DoH».

Если вы используете последнюю версию, есть запись в реестре: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters . Создайте значение DWORD (32-битное) : EnableAutoDoh=2 ; затем перезагрузите компьютер. Это работает только с резолверами, поддерживающими DoH.

Чтобы проверить, используете ли вы Do53 вместо DoH, в Windows 10 2004 можно выполнить команду: `pktmon filter add -p 53` , а затем `pktmon start --etw -m real-time` ; если вы видите большой трафик на порту 53, значит, вы по-прежнему используете clear . Параметр `real-time` существует только начиная с версии 2004.

Windows Server 2022 (DNS-клиент с DoH)

Начиная с Windows Server 2022, DNS-клиент поддерживает DoH. В разделе «Параметры» > «Сеть и Интернет» > «Ethernet» выберите интерфейс и перейдите в «Параметры DNS» > «Изменить» . В разделе «Вручную» введите ваши DNS-серверы и воспользуйтесь раскрывающимся меню «Предпочитаемое шифрование DNS».

  • Только шифрование (DoH): максимальная защита; если сервер не поддерживает DoH, он не разрешается.
  • Предпочитать шифрование и разрешать незашифрованное: пытается выполнить DoH и, если это не удается, возвращается к обычному тексту (без подсказки).
  • Только незашифрованные: Классический DNS без TLS.

Сохраните изменения. Если вы настроите команду Set-DnsClientServerAddress в PowerShell , режим DoH будет зависеть от того, находится ли сервер в известной таблице DoH . В настоящее время это нельзя настроить с помощью Центра администрирования Windows или sconfig.

  «Умная» бытовая техника: полное руководство по созданию «умного» дома

Групповая политика (GPO) для DoH в Windows Server 2022

Путь: Конфигурация компьютера > Административные шаблоны > Сеть > DNS-клиент , настройте политику DNS через HTTPS (DoH) с параметрами:

  • Разрешить DoH: Использует DoH, если сервер его поддерживает; в противном случае он остается незашифрованным.
  • Запретить ДоХ: Блокирует DoH на клиенте.
  • Требуется DoH: силы DoH; если нет в наличии, нет решения.

Важное предупреждение: не используйте параметр Require DoH на компьютерах, подключенных к домену , поскольку Active Directory использует DNS-сервер Windows, который не обрабатывает запросы DoH. Если вам необходимо шифровать трафик в сетях AD DS, рассмотрите возможность использования сквозного IPsec для внутреннего DNS-трафика.

Известные DoH-серверы на Windows

Обратитесь к списку, встроенному в команду Get-DnsClientDohServerAddress в PowerShell. Обычно он включает, помимо прочего:

поставщик Адреса
Cloudflare 1.1.1.1
1.0.0.1
2606: 4700: 4700 :: 1111
2606: 4700: 4700 :: 1001
Google 8.8.8.8
8.8.4.4
2001: 4860: 4860 :: 8888
2001: 4860: 4860 :: 8844
Quad9 9.9.9.9
149.112.112.112
2620: fe :: fe
2620: Fe :: Fe: 9

Чтобы добавить новый сервер: Add-DnsClientDohServerAddress -ServerAddress 'IP' -DohTemplate 'DoH-template-URL' -AllowFallbackToUdp $False -AutoUpgrade $True . Это предотвратит переключение на UDP и включит автоматические обновления.

NRPT с DoH

Таблица политик разрешения имен позволяет принудительно назначать разрешение определенных доменов конкретному DNS-серверу; если этот сервер поддерживает DoH и известен, запросы будут передаваться в зашифрованном виде для этих пространств имен.

Linux, macOS и Android/iOS: практические пути

Linux с dnscrypt-proxy + systemd-resolved

Гибкий способ реализации DoH в Linux — использование dnscrypt-proxy в качестве локального прокси и его интеграция с systemd-resolved . Примеры установки:

sudo apt update
sudo apt install dnscrypt-proxy

sudo pacman -S dnscrypt-proxy

sudo dnf install dnscrypt-proxy

Включите службу: `sudo systemctl enable dnscrypt-proxy` и ` sudo systemctl start dnscrypt-proxy` . Затем отредактируйте файл `/etc/dnscrypt-proxy/ dnscrypt-proxy.toml` и выберите DoH-серверы (например, Cloudflare), включив их имена в разделе `[static]`.

Перезапустите прокси с помощью команды `sudo systemctl restart dnscrypt-proxy` . Затем укажите systemd-resolved на 127.0.0.1 в файле `/etc/systemd/resolved.conf` (установите параметры DNS на `127.0.0.1` и `DNSStubListener=yes`) и перезапустите: `sudo systemctl restart systemd-resolved`.

Наконец, свяжите заглушку с файлом /etc/resolv.conf , чтобы все приложения проходили через resolved:

sudo rm /etc/resolv.conf
sudo ln -s /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf

Проверьте с помощью команды `dig google.com @127.0.0.1` ; если она отвечает `localhost`, значит, запросы уже проходят через зашифрованный прокси . Для проверки этого поведения можно также использовать команду `nslookup` .

Linux с DoT, интегрированным в systemd-resolved

Начиная с версии systemd 239 , DNSOverTLS доступен ; строгий режим был добавлен в версии 243. Однако существуют ограничения в проверке сертификатов, а SNI не отправляется в некоторых бэкэндах, что облегчает злоумышленнику использование уязвимости системы. В чувствительных средах предпочтительнее использовать строгий DoH с выделенным клиентом (например, Cloudflared).

Выделенный DoH-клиент (Linux, macOS, Windows)

Команда `cloudflared proxy-dns` предоставляет доступ к локальному DNS-серверу, который перенаправляет DNS-серверы через DNS на основе домена (DoH) к вашему предпочтительному резолверу (по умолчанию Cloudflare), настраиваемому с помощью `proxy-dns-upstream` . Это быстрый способ реализовать строгий DNS на системном уровне без изменения настроек маршрутизатора.

MacOS

В разделе «Системные настройки» > «Сеть» выберите свой сетевой интерфейс, перейдите в «Дополнительно» > «DNS» и добавьте резолверы, такие как 1.1.1.1/1.0.0.1, 8.8.8.8/8.8.4.4 или Quad9. Если ваш провайдер поддерживает DoH, система может использовать его в зависимости от версии и конфигурации; четкий индикатор не всегда очевиден, поэтому проверьте с помощью онлайн-инструментов или путем захвата сетевого трафика.

  Как оптимизировать сетевые настройки для игр: полное руководство по NAT, портам и UPnP.

Если вы заметили какие-либо блокировки, возможно, брандмауэр или система безопасности перехватывают порт 443; попробуйте временно отключить их, чтобы локализовать проблему.

Android и IOS

В Android 9 и более поздних версиях доступен частный DNS : автоматический (оппортунистический) режим или строгий режим, задаваемый путем указания имени хоста провайдера. На iOS и Android такие приложения, как 1.1.1.1, позволяют использовать DoH или DoT в строгом режиме, используя VPN- интерфейс системы .

Маршрутизаторы, Mikrotik и корпоративные среды

Если вы хотите скрыть DNS от маршрутизатора без смены клиентских устройств, существуют прошивки, поддерживающие DoH/DoT. На Mikrotik вы можете включить DoH, загрузив и импортировав корневой центр сертификации провайдера (например, DigiCert Global Root CA для Cloudflare) и настроив URL-адрес DoH. Убедитесь , что статус DoH=Yes на странице https://1.1.1.1/help .

В Mikrotik выполните следующие действия: загрузите сертификат в папку «Файлы», импортируйте его через «Система» > «Сертификаты» > «Импорт» и настройте DNS для использования DoH; при желании это можно сделать и через терминал . После запуска маршрутизатор будет отдавать приоритет зашифрованному каналу.

В корпоративных средах DoH имеет серьезные последствия: мониторинг, фильтрация, родительский контроль и разделение горизонтов усложняются, если приложения обходят корпоративный резолвер. Поэтому многие администраторы используют строгие политики DoH/DoT, нацеленные на собственные резолверы и блокирующие общедоступные, или управляют устройствами с помощью GPO/MDM, чтобы заставить их использовать контролируемые конечные точки.

Реальный риск заключается в централизации данных DNS несколькими публичными провайдерами в то время, когда более мелкие интернет-провайдеры и резолверы внедряют систему доменных имен (DNS). Каждая организация должна найти баланс между конфиденциальностью, управлением и суверенитетом данных.

Проверки, производительность и расширенная безопасность

Чтобы проверить DoH, откройте nslookup или dig и посмотрите, какой сервер отвечает; некоторые тестовые страницы показывают, использует ли ваш DNS HTTPS . В Windows полезной будет ссылка 1.1.1.1/help, а pktmon поможет обнаружить трафик на порту 53, когда его там быть не должно.

Что касается производительности, полевые тесты показывают незначительные различия по сравнению с Do53 во времени загрузки и разрешения страниц. Использование HTTP/3/QUIC и постоянных соединений помогает минимизировать влияние.

Помните, что DoH защищает передачу данных до резолвера, но не защищает вас от поддельных ответов от вышестоящего сервера . Для этого существует DNSSEC ; он позволяет проверить подлинность ответа от авторитетного сервера. Также рекомендуется минимизировать или отключить EDNS Client Subnet, если вас беспокоит раскрытие исходной подсети.

Наконец, имейте в виду, что некоторые старые руководства (старше года) могут быть устаревшими в плане путей в меню, флагов или поддержки; если что-то не соответствует вашей системе, проверьте текущую версию или документацию.

Если вы хотите повысить уровень конфиденциальности, не затрагивая маршрутизатор, сочетание строгой проверки DoH в браузере или системе, хорошего общедоступного (или корпоративного) резолвера, проверки DNSSEC и подтверждения с помощью инструментов обеспечит вам очень надежную защиту в повседневной работе, даже в ненадежных сетях.