dnscrypt-proxy — шифруем DNS-запросы

dnscrypt.info

В мире DNS по большей части ничего не меняется уже давно. Браузер соединяется открытом текстом с DNS-сервером и просит адрес, скрывающийся за таким-то доменом, а тот ему открыто и отвечает. После этого клиент обменивается с выданным ему сервером «рукопожатием» (если тот поддерживает HTTPS) и шифрует дальнейшие коммуникации.

Но сами запросы к DNS позволяют третьим сторонам понять, какие сайты человек посещает и для этого им даже не нужно быть суперхакерами или агентами спецслужб. Обычный перехват трафика к Wi-Fi или логи у провайдера, например, выдадут посещаемые сайты, и замена провайдерского DNS-сервера на сторонний от этого не защитит.

Шифрование запросов к DNS решает эту проблему шифрованием соединения с DNS-сервером, и протокол DNSCrypt делал это еще до того, как оно стало (почти) мейнстримом. Несмотря на название, клиент dnscrypt-proxy умеет работать и с другими протоколами, автоматически перебирает самые быстрые серверы, кэширует запросы к ним для ускорения соединений, анонимизирует их.

📌 Детали

  • открытый исходный код на Go
  • разработка сообщества FOSS, без рекламы и отслеживания
  • доступно для Linux, Windows, macOS, Android и BSD
  • поддержка DNSCrypt 2 и DNS-over-HTTPS (DoH) через TLS 1.3 и QUIC
  • по сравнению с аналогами, DNSCrypt не требует стека протоколов TCP (снижается поверхность атаки)
  • сокрытие IP-адреса клиента с помощью проксирования запросов через SOCKS-прокси (Tor, например) или релейные серверы Anonymized DNSCrypt и Oblivious DoH
  • настройка через конфигурационные файлы .toml с понятным синтаксисом
  • кэширование ускоряет соединения с конечными серверами и повышает приватность (заходы на адрес ранее запрошенного сервера больше не светятся DNS-серверу)
  • сообщество на форуме GitHub
  • подробная вики, описывающая в т.ч. разворачивание своего сервера DNSCrypt (за <10 минут)

ИМХО:  Один из самых продвинутых клиентов. На быстром и безопасном языке. Простая настройка на Linux: поставил из репы, вбил в dnscrypt-proxy.toml нужные серверы, отключил сидящих на 53 порту и включил systemd-юнит. Серверы можно брать из списка (700+ штук). От поддержки DNSSEC, ECH и постквантового шифрования сейчас не много толку, но хорошо знать, что разработчики — на острие лезвия технологий и с принятием сообществом первых и необходимостью третьего у нас уже будут варианты.

Свежее