FIXME This page is not fully translated, yet. Please help completing the translation.
(remove this paragraph once the translation is finished)

DNSCrypt с Dnsmasq и dnscrypt-proxy2

  • В этом руководстве описывается метод настройки DNSCrypt on OpenWrt.
  • Он основывается на Dnsmasq и dnscrypt-proxy2 который поддерживает DNSCrypt v2, DNS over HTTPS и анонимный DNSCrypt.
  • Следуйте DNS hijacking для перехвата DNS-трафика или используйте VPN для защиты всего трафика.
  • Encrypt your DNS traffic improving security and privacy.
    • Prevent DNS leaks and DNS hijacking.
  • Bypass regional restrictions using public DNS providers.
    • Escape DNS-based content filters and internet censorship.

Установите пакеты и включите шифрование DNS.

# Установить пакеты
opkg update
opkg install dnscrypt-proxy2
 
# Включить шифрование DNS
/etc/init.d/dnsmasq stop
uci set dhcp.@dnsmasq[0].noresolv="1"
uci -q delete dhcp.@dnsmasq[0].server
uci add_list dhcp.@dnsmasq[0].server="127.0.0.53"
uci commit dhcp
/etc/init.d/dnsmasq start

Клиенты LAN должны использовать Dnsmasq в качестве основного преобразователя. Dnsmasq перенаправляет DNS-запросы к dnscrypt-proxy2, который шифрует DNS- трафик..

Verify domain name resolution with nslookup:

nslookup openwrt.org localhost

To check your DNS provider, you can use:

DNS Leak Test and DNSSEC Test:

Alternative test via CLI: * check connection to Quad9 DNS (it requires use of Quad9 DNS servers):

dig +short txt proto.on.quad9.net.
# should print: doh. or dot. or doq.

* check connection to NextDNS (it require to use NextDNS DNS servers):

curl -SL https://test.nextdns.io/
{
        "status": "ok",
        "protocol": "DOT",
        "profile": "SOMEPROFILE",
        "client": "80.XXX.XXX.XXX",
        "srcIP": "80.XXX.XXX.XXX",
        "destIP": "XX.XX.28.0",
        "anycast": true,
        "server": "zepto-ber-1",
        "clientName": "unknown-dot"
}

Соберите и проанализируйте следующую информацию.

# Перезапустить службы
/etc/init.d/log restart; /etc/init.d/dnsmasq restart; /etc/init.d/dnscrypt-proxy restart
 
# Журнал и статус
logread -e dnsmasq; netstat -l -n -p | grep -e dnsmasq
logread -e dnscrypt-proxy; netstat -l -n -p | grep -e dnscrypt-proxy
 
# Конфигурация времени выполнения
pgrep -f -a dnsmasq; pgrep -f -a dnscrypt-proxy
head -v -n -0 /etc/resolv.* /tmp/resolv.* /tmp/resolv.*/*
 
# Постоянная конфигурация
uci show dhcp; grep -v -e "^\s*#" -e "^\s*$" /etc/dnscrypt-proxy2/dnscrypt-proxy.toml
  • Last modified: 2023/01/17 04:32
  • by vgaetera