
Adguard Home — домашний DNS сервер
Adguard Home — это DNS-сервер для блокировки рекламы, трекеров и получения контроля над сетевым трафиком на всех устройствах в локальной сети без установки дополнительного ПО на каждое устройство.
Основные задачи
- Блокировка рекламы на уровне сети: фильтрует запросы к рекламным доменам во всех браузерах, приложениях и умных устройствах.
- Защита от слежки: не позволяет отправлять данные на трекинговые серверы, защищая приватность.
- Родительский контроль: ограничивает доступ к нежелательному контенту и обеспечивает безопасный поиск.
- Управление сетью: дает пользователю возможность выбирать, какие ресурсы блокировать, а также добавлять собственные фильтры
- Перезапись DNS-запросов: возможность перенаправить запрос с любого домена на нужный ресурс. Например в это статье рассмотрим доступ к Home Assistant через локальный домен
Предварительные требования
- Linux север с установленным Docker Compose. Как установить Ubuntu Server и настроить Docker читайте в предыдущих статьях.
- Статический IP-адрес сервера. У сервера на котором будет установлен Adguad Home не должен меняться IP-адрес, для этого в настройках вашего роутера найдите в списке клиентов ваш сервер и в настройках клиента установите галочку Static IP (в разных моделях может называться по-разному).
Установка
В любой папке, например, /home/user/apps
создайте папку и docker-compose.yml. Можно сделать следующей командой — она создаст папку с файлом и сразу откроет его в тестовом редакторе.
mkdir adguard && cd adguard && nano docker-compose.yml
services:
adguardhome:
image: adguard/adguardhome
container_name: adguardhome
ports:
- 53:53/tcp # DNS
- 53:53/udp # DNS
- 784:784/udp # DHCP
- 853:853/tcp # DHCP
- 3000:3000/tcp # Веб-интерфейс первой настройки
- 8080:80/tcp # Веб-интерфейс Adguard Home по HTTP
- 4443:443/tcp # Веб-интерфейс Adguard Home по HTTPS
volumes:
- work:/opt/adguardhome/work
- conf:/opt/adguardhome/conf
restart: unless-stopped
volumes:
work:
conf:
Описание проброшенных портов
- обязательные
53:53
— tcp и udp порты DNS сервера, сюда будут обращаться устройства за dns записью — менять нельзя3000:3000
— веб-интерфейс для первоначальной настройки Adguard Home — можно указать любой, после настройки можно удалить8080:80
— основной веб-интерфейс Adguard Home — можно указать любой, но не рекомендуется использовать порт 80
- необязательные
784:784
и853:853
— порты DHCP сервера — можно удалить, если вы не планируете использовать Adguard Home в качестве DHCP сервера. DHCP — это сервер, который выдает IP-адреса устройствам в вашей сети, по-молчанию этим занимается роутер4443:443
— основной веб-интерфейс Adguard Home для доступа по HTTPS, так же не рекомендуется занимать порт 443. Можно удалить, если не планируете использовать доступ по HTTPS
Сохраните, выйдите из редактора nano
(ctrl + x
) и запустите:
docker compose up -d
Первоначальная настройка
В браузере перейдите по адресу http://192.168.1.100:3000
, соответсвенно подставив IP-адрес вашего сервера и порт, если вы его меняли в docker-compose.yml
. Должен открыться веб-интерфейс первоначальной настройки. Снизу справа можно переключить язык на русский.

Переходим на второй шаг и ничего не меняем.

На третьем шаге создаем пользователя и пароль.

Больше никакие настройки не понадобятся, доходим до последнего шага и переходим в основной веб-интерфейс. Авторизуйтесь с только что созданным пользователем.
Если вы ничего не меняли в предложенном docker-compose.yml файле, то основной веб-интерфейс у вас будет доступен на порту
8080
— http://192.168.1.100:8080

Поздравляем! Установка завершена.
Настройка DNS сервера
Теперь вам нужно в настройках ваших устройств или роутера прописать адрес вашего DNS сервера. Для теста попробуйте на локальном компьютере или телефоне заменить DNS сервер на IP-адрес вашего сервера. Для того чтобы настроить на роутере, перейдите в веб-интерфейс вашего роутера (обычно http://192.168.1.1) и в настройках подключения провайдера укажите IP-адрес вашего сервера.
Обязательно уберите галочку «Использовать DNS сервер провайдера», если такая есть. Так же рекомендуется добавить как минимум еще один публичный сервер, но он не должен быть первым.

После сохранения настроек проверьте работу интернета, попробуйте в браузере перейти на какие-нибудь сайты. После этого вернитесь в веб-интерфейс Adguad Home (http://192.168.1.100:8080), если все работает, то вы должны увидеть статистику запросов.

Обзор возможностей
Временное отключение блокировки
Для проверки чего-либо вы можете временно или совсем отключать работу фильтров.

Настройка внешних DNS серверов
В основном меню перейдите: Настройки -> Настройки DNS — тут вы можете указать внешние DNS сервера, куда ваш DNS сервер будет обращаться за актуальной информацией. Можете настроить способы обращения к этим серверам, кэши и режимы блокировки.
Чёрные списки DNS
В основном меню перейдите: Фильтры -> Чёрные списки DNS — тут можете настроить и добавить дополнительные фильтры блокировки трекеров, рекламы и нежелательных ресурсов. В Adguard Home есть один предустановленный список и множество других, которые можно загрузить и активировать прямо со странице настроек.

Перезапись DNS-запросов
Теперь с помощью своего DNS сервера вы можете перенаправлять запросы к любым доменам на другие ресурсы. Например при обращении к домену google.com вы можете перенаправить обращение к вашему сайту.
Перезапись DNS-запросов работает только по http. При обращении по https браузер будет выдавать ошибки
Внутри своей локальной сети вы можете использовать любые домены, для обращения к вашим локальным ресурсам. Например для того чтобы Home Assistant был доступен по домену, а не по IP-адресу перейдите Фильтры -> Перезапись DNS-запросов и добавьте новую запись.

Укажите абсолютно любой домен, а во втором поле укажите IP-адрес по которому находится Homeassistant. В нашем примере используется домен homeassistant.iot и теперь при обращении по адресу http://homeassistant.iot:8123 будет открываться Home Assistant.
Обратите внимание что перезапись DNS-запросов будет работать только на устройствах внутри вашей локальной сети, в которой используется Adguard DNS-сервер. Так же перезапись DNS-запросов может не работать если на устройстве включен VPN.