В этой заметке я не буду объяснять, [[https://www.google.com/search?channel=fs&client=ubuntu&q=why... почему]] предпочтительно использовать DNS-over-HTTPS (DoH), а просто опишу, как его можно включить на системном уровне в KDE neon / Ubuntu. []Внимание: не забывайте делать резервные копии системных файлов, которые планируете редактировать![]Для начала необходимо установить пакет []dnscrypt-proxy[]:
sudo apt install dnscrypt-proxy
Далее в файле []/etc/dnscrypt-proxy/dnscrypt-proxy.toml[] в поле []server_names[] нужно указать список серверов, к которым будет обращаться dnscrypt-proxy для разрешения DNS. Также можно это поле закомментировать, в этом случае dnscrypt-proxy автоматически будет использовать самый быстрый сервер. Более детально об этом можно прочесть [[https://wiki.archlinux.org/index.php/Dnscrypt-proxy#Select_r... здесь]]. После редактирования файла []dnscrypt-proxy.toml[] нужно перезапустить dnscrypt-proxy:
sudo systemctl restart dnscrypt-proxy.service
Далее нужно запретить NetworkManager изменять файл []/etc/resolv.conf[]. Для этого нужно в файле []/etc/NetworkManager/NetworkManager.conf[] в секции []main[] добавить запись []rc-manager=unmanaged[]. Должно выглядеть так:
[main]
...
rc-manager=unmanaged
...Далее нужно отредактировать файл []/etc/resolv.conf[]. Для начала удалим текущий файл:
sudo rm /etc/resolv.conf
И создадим новый:
sudo touch /etc/resolv.conf
С таким содержимым:
nameserver 127.0.2.1
options edns0 single-request-reopenИ последнее, что нам нужно сделать - перезапустить []systemd-resolved[] и []NetworkManager[]:
sudo systemctl restart systemd-resolved.service
sudo systemctl restart NetworkManager.serviceURL:
Обсуждается: http://www.opennet.me/tips/info/3182.shtml
Для безопасности, в продолжение данной статьи, необходимо ещё правильно настроить файрволл, чтобы исключить входящие соединения от этой проги. Не знаю, как в Ubuntu, а в Debian, Devuan я делал коммит об исправлении отсутствующей директории для сохранения списка обновлений списка доступных серверов для данного пакета. Если об этом в статье нет упоминания, то, думаю, это исправили и в Ubuntu, а не только в Debian, Devuan.
А можно попоброьнее про входящие соединения и отсутствующую директорию?
Блин. боюсь к этим сетевым настройкам прикасаться, как не прикоснусь интернет пропадает, хех.
Ещё такое дело ВПН лазит эти файлы изменять. Наверное не для каждого этот путь настройки универсален.
Делайте резервные копии файлов, которые будете редактировать - если что, потом восстановите. На крайний случай, можно потренировать на live image или в виртуалке.
> боюсь к этим сетевым настройкам прикасаться
sudo apt install virtualboxИли отсюда взять: https://www.virtualbox.org/wiki/Linux_Downloads
В интерфейсе есть конпка - сделать снэпшот.
Прямо на горячую снепшотишь, ставишь эксперимент, откатываешь, если ошибся.Для других применений нужно знать, что для отката снепшота нужно свободного места на диске размера в снепшот (размера в накопленные изменения, AFAIR). Но изменения от редактирования пары текстовых файлов минимальны, так что не проблема.
Ну и снепшот на горячую включает в себя оперативную память, что занимает место. Но ведь можно и выключать виртуальную машину для снэпа.
если просто накатить пакет то это будет работать через протокол dnscypt, а не doh.
чтобы работало только через doh надо включать в список публичные резолверы, которые его поддерживают если нужен только doh то это нужно дополнительно в конфиге dnscrypt-proxy.toml найти соотвествющие строчки dnscrypt_servers и doh_servers и переключить их в соотвествии с вашими предпочтениями
Кстати, да, про указание именно DoH-серверов нужно уточнить. Спасибо за подсказку!
Конечно перенаправлять весь трафик через левые сервера намного безопаснее, чем трястись над возможностью MiTM-атаки.
Это вопрос доверия. На крайний случай, можно поднять свой сервер.
это какие "левые"? cloudflare, google, yandex, adguard, продолжать перечислять "левых"?
а так да можно свой слёгкостью поднять за пару минут на арендованой vps'ке:
https://hub.docker.com/r/jedisct1/dnscrypt-server
Образок-то откуда? Васян собрал? Надо всё делать самому, коли речь идёт об информационной безопасности.
> Образок-то откуда? Васян собрал? Надо всё делать самому, коли речь идёт об
> информационной безопасности.В составе образа идёт как его собирали. Скопируй, собери сам. Это легко и недолго. Ну или - https://github.com/jedisct1/encrypted-dns-server
У яндекса есть DOH? Чтобы как у клаудфларе было: https://1.1.1.1/dns-query только днс адрес яндекса был. Если нет, фиг ли не запилят?
у яндекса только dnscrypt и тот старой первой версии
а разве в systemd-resolved нет поддержки DoT? https://wiki.archlinux.org/title/Systemd-resolved#DNS_over_TLS Или DoH чем-то лучше?
https://www.cloudflare.com/learning/dns/dns-over-tls/
Что-то у меня совсем несварение. Перепутал dnsproxy с dnscrypt-proxy.
И всё-таки, я правильно понимаю, что яндекс не основным проектом занимается, а собственным форком, который субя по удалённым постам должен быть старее?
Юзаю Dns Over TLS от гугл и cloudflare, там оверхед меньше