Anonim

Что такое DNS Over TLS?

Вы уже знаете, что за последние несколько лет было много шума вокруг шифрования веб-трафика. Даже если вы не обращали особого внимания, вы должны были заметить прилив зеленых блокировок возле URL-адресов и HTTPS, появляющиеся повсюду. Это потому, что больше сайтов, чем когда-либо, шифруют трафик.

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

Есть одна часть, которая не шифруется с помощью HTTPS, DNS-запрос. Если вы не знакомы, веб-сайты на самом деле существуют по IP-адресу. Когда вы вводите URL-адрес сайта, вы делаете другой запрос к DNS-серверу, спрашивая, к какому IP-адресу принадлежит этот URL-адрес. Чаще всего этот DNS-сервер принадлежит вашему провайдеру. Таким образом, они и все, кто может их прослушивать, могут видеть, на какие сайты вы заходите, и регистрировать их. Поскольку DNS по умолчанию не зашифрован, любой сторонний поставщик довольно легко отслеживает DNS-запросы.

DNS Over TLS обеспечивает тот же тип шифрования, который вы ожидаете с HTTPS для запросов DNS. Таким образом, единственным человеком, который получает ваш запрос и данные о том, какой сайт вы посещаете, является DNS-сервер, который вы выбираете, и вы можете выбрать. Вам не нужно использовать DNS вашего интернет-провайдера, и вы не должны.

Что ты можешь сделать?

Поддержка DNS поверх TLS еще не настолько развита, как HTTPS, но все же достаточно проста в настройке и использовании. Существует ряд опций, которые вы можете использовать для защиты своего трафика DNS. Во-первых, стоит отметить, что использование правильно настроенного VPN уже защитит вас. Ваш DNS-трафик будет передаваться через VPN на DNS-серверы провайдера. Если вы уже используете VPN, не беспокойтесь, хотя вы можете настроить дополнительную защиту, если хотите.

Если вы не используете VPN, вы все равно можете зашифровать свой трафик DNS с помощью DNS через TLS. Существует отличный проект с открытым исходным кодом, называемый Stubby, который автоматически шифрует ваши DNS-запросы и направляет их на DNS-сервер, который может обрабатывать DNS через TLS. Поскольку проект с открытым исходным кодом, он свободно доступен для Windows, Mac и Linux.

Настроить Stubby

Windows

Stubby имеет удобный установщик Windows .msi, который установит Stubby вместе с файлом конфигурации по умолчанию. Перейдите на страницу установщика и загрузите установщик Windows .msi.

Как только он у вас есть, запустите установщик. Нет графического мастера настройки или чего-то еще. Вам нужно только подтвердить, что вы даете установщику доступ. Это позаботится обо всем остальном.

Все для Stubby на Windows находится по адресу:

C: Program FilesStubby

Это включает в себя файл конфигурации YAML.

Откройте командную строку. Вы можете использовать Run и набрать cmd. Перейдите в каталог Stubby. Затем запустите .exe и передайте ему конфигурацию, чтобы запустить Stubby.

C: UsersUserNamecd C: Program FilesStubby

C: Программа FilesStubbystubby.exe -C stubby.yml

Stubby теперь будет работать в вашей системе. Если вы хотите проверить это, выполните следующую команду, чтобы увидеть, работает ли она правильно.

C: Program FilesStubbygetdns_query -s @ 127.0.0.1 www.google.com

Если это работает, Stubby настроен правильно. Теперь, если вы хотите изменить DNS-серверы, которые использует Stubby, откройте stubby.yml и измените записи DNS-сервера в соответствии с выбранными вами серверами. Убедитесь, что выбранные вами серверы поддерживают DNS поверх TLS.

Прежде чем вы сможете использовать Stubby для всей системы, вам нужно изменить входящие преобразователи Windows (DNS-серверы). Для этого вам нужно будет выполнить команду с правами администратора. Закройте существующее окно командной строки. Затем вернитесь в меню «Пуск» и найдите «cmd». Щелкните правой кнопкой мыши по нему и выберите «Запуск от имени администратора». В появившемся окне выполните следующее:

PowerShell -Обзор выполнения политики-файла "C: Program FilesStubbystubby_setdns_windows.ps1"

Ничто из этого не очень хорошо, если вы не можете сделать изменения постоянными. Для этого вам нужно создать запланированное задание, которое будет запускаться при запуске. К счастью, разработчики Stubby предоставили шаблон для этого. В появившемся окне командной строки сделайте изменения постоянными.

schtasks / create / tn Stubby / XML "C: Program FilesStubbystubby.xml" / RU

Вот и все! Ваш ПК с Windows теперь настроен на использование Stubby для отправки DNS через TLS.

Linux

В Linux этот процесс очень прост. В дистрибутивах как на Ubuntu, так и на Debian Stubby уже доступен. Вам просто нужно установить его и изменить свой DNS для использования Stubby. Начните с установки Stubby

$ sudo apt install stubby

Затем отредактируйте файл конфигурации Stubby, если вы выберете. Он доступен по адресу /etc/stubby/stubby.yml. Откройте его в своем любимом текстовом редакторе с помощью sudo.

Если вы внесли какие-либо изменения в DNS-серверы, перезапустите Stubby.

$ sudo systemctl перезапустить stubby

Вам также необходимо изменить записи сервера имен в /etc/resolv.conf. Откройте это с помощью вашего текстового редактора и sudo. Создайте одну запись, как показано ниже.

nameserver 127.0.0.1

Теперь проверьте, работает ли Stubby. Перейдите на dnsleaktest.com и запустите тест. Если появятся серверы, которые вы сконфигурировали для использования Stubby, ваш компьютер успешно запускает Stubby.

OSX

Настройка Stubby на OSX также довольно проста. Если у вас есть Homebrew, процесс очень прост, но в противном случае он также довольно прост.

С Hombrew вы можете установить пакет Stubby.

$ brew install stubby

Перед тем, как запустить Stubby как службу, вы можете изменить конфигурацию YAML по адресу /usr/local/etc/stubby/stubby.yml.

Как только вы довольны, вы можете запустить Stubby как сервис.

$ sudo brew services start stubby

Если у вас нет Homebrew, вы можете установить графический интерфейс Stubby. Это доступно здесь.

Заключительные мысли

DNS через TLS начинает набирать обороты. Скоро это станет обычным делом. До тех пор, установка и программы, такие как Stubby необходимы. Очевидно, однако, это не так уж сложно настроить.

В ближайшем будущем поддержка DNS поверх TLS значительно расширится, когда Google по умолчанию включит поддержку Android. В результате, Apple должна только поддержать iOS. Настольные платформы, вероятно, не будут сильно отставать. С другой стороны, у них уже есть поддержка, и вы просто включили ее.

Защитите ваш просмотр с помощью DNS над TLS