DNS over HTTPS (DoH) это экспериментальный протокол, тестируемый в настоящее время крупными компаниями в числе которых Google, Mozilla и CloudFlare. Протокол позволяет предотвратить перехват и подмену ответов DNS.
Количество публичных DoH-серверов в настоящее время сильно ограничено, равно как и количество клиентов, поддерживающих работу с DoH. Однако энтузиасты уже сейчас могут попробовать протокол в действии, о чём и будет рассказано ниже.
Поддержка DNS over HTTPS есть в браузере Mozilla Firefox для Windows, Linux и Android. Кроме того в репозиториях Ubuntu 18.04 есть прокси-сервер dnss, позволяющий организовать проксирование DNS-запросов к DoH-серверу (и наоборот, но об этом как-нибудь в другой раз). Настраивать Firefox мы не будем, так как это слишком "штучный" сценарий, нам же интересно все запросы перенаправить на DoH-сервер от Google. Потому устанавливаем dnss:
sudo apt install dnss
Сразу после установки мы получим ошибку: используемый dnss по умолчанию сокет уже занят процессом resolvd из состава systemd. Для решения этой проблемы надо "перевесить" dnss на другой сокет. Сначала скопируем системный юнит:
sudo cp /lib/systemd/system/dnss.socket /etc/systemd/system/dnss.socket
Далее открываем в редакторе новый файл:
sudo nano -w /etc/systemd/system/dnss.socket
И приводим его к виду:
[Socket] ListenDatagram=127.0.0.255:53 ListenStream=127.0.0.255:53 [Install] WantedBy=sockets.target
Порт желательно оставить 53, а IP адрес - любой свободный на loopback-интерфейсе. После этого перечитываем конфигурацию systemd:
systemctl daemon-reload
После этого перезапускаем dnss:
systemctl restart dnss.socket
Далее остаётся в настройках интернет соединения указать IP-адрес "127.0.0.255" (или тот, что вы выбрали). После этого можно пользоваться. Статистика использования dnss доступна по адресу "http://127.0.0.1:9981". Этот адрес можно изменить в файле "/etc/default/dnss".
При возникновении проблем достаточно подробная информация падает в системный журнал, просмотреть который можно командой:
journalctl -xe -u dnss.service
На этом всё. Приятной работы!