Что такое 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 этот процесс очень прост. В дистрибутивах как на 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. Настройка 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. Настольные платформы, вероятно, не будут сильно отставать. С другой стороны, у них уже есть поддержка, и вы просто включили ее.Linux
OSX
Заключительные мысли