Самохостинг (часть 4) - AdGuard

Самохостинг (часть 4) - AdGuard

AdGuard Home: Что это и для чего?

AdGuard Home — это бесплатное программное обеспечение, которое работает как локальный DNS-сервер, фильтрующий рекламу и блокирующий вредоносные сайты. Его основные преимущества:

  • Блокировка рекламы на уровне всей сети, а не только на одном устройстве.
  • Защита от вредоносных сайтов , таких как фишинговые ресурсы или сайты с вирусами.
  • Семейная защита : возможность ограничить доступ к нежелательному контенту (например, для детей).
  • Логирование запросов для анализа активности в сети.
  • Простота использования : удобный веб-интерфейс для управления настройками.

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

Запускаем AdGuard Home в Docker

Для развертывания AdGuard Home будем добавлять в уже существующий файлик docker-compose.yaml, в котором у нас уже есть Traefik.

  adguard-home:
    <<: *defaults
    image: adguard/adguardhome
    container_name: "adguard"
    volumes:
      - "/opt/docker/adguard/work:/opt/adguardhome/work"
      - "/opt/docker/adguard/confdir:/opt/adguardhome/conf"
    ports:
      - 53:53/udp
      - 53:53/tcp
      - 192.168.1.2:8002:80/tcp
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.adguard.rule=Host(`adguard.home.example.com`)"
      - "traefik.http.routers.adguard.entrypoints=https"
      - "traefik.http.routers.adguard.tls.certresolver=myresolver"
      - "traefik.http.services.adguard-opt.loadbalancer.server.port=80"

Объяснение конфигурации:

  1. image: adguard/adguardhome
    Используется официальный образ AdGuard Home из Docker Hub.
  2. volumes
    • /opt/docker/adguard/work:/opt/adguardhome/work — рабочая директория для хранения данных AdGuard Home.
    • /opt/docker/adguard/confdir:/opt/adguardhome/conf — директория для конфигурационных файлов.
  3. ports
    • 53:53/udp и 53:53/tcp — стандартные порты для DNS-запросов.
    • 192.168.1.2:8002:80/tcp — порт для веб-интерфейса AdGuard Home. Замените 192.168.1.2 на IP вашего сервера.
  4. labels
    Эти метки используются для интеграции с Traefik (прокси-сервер). Они обеспечивают HTTPS-защиту через Let's Encrypt и маршрутизацию запросов.

Запуск AdGuard Home

  1. Сохраните файл docker-compose.yaml.
  2. Откройте терминал и выполните команду:
  docker-compose up -d
  1. После запуска откройте браузер и перейдите по адресу http://192.168.1.2:8002 (или используйте указанный вами IP-адрес).

На странице настройки укажите пароль администратора и настройте базовые параметры работы AdGuard Home.

Интеграция с DNS RouteSync Navigator

Если вы запускали DNS RouteSync Navigator, то у вас AdGuard не запустится, т.к. 53 порт будет занят. Давайте заставим их работать в связке.

Для начала исправим конфигурацию DNS RouteSync Navigator'a. Для этого вам нужно перейти в его рабочий каталог и остановить его:

cd~/projects/DNS-RouteSync-Navigator
./start.sh

Теперь правим в config.ini IP адрес, который он будет слушать. Для этого в параметр server_ip пропиши адрес вашего сервера. В моем случае это будет 192.168.1.2. В качестве public_dns_1 и public_dns_2 указываем 127.0.0.1 и 127.0.0.2 соответственно. И запускаем сервис назад.

./start.sh

Дальше исправляем конфиг AdGuard в docker-compose.yaml:

  adguard-home:
    <<: *defaults
    image: adguard/adguardhome
    container_name: "adguard"
    volumes:
      - "/opt/docker/adguard/work:/opt/adguardhome/work"
      - "/opt/docker/adguard/confdir:/opt/adguardhome/conf"
    ports:
      - 127.0.0.1:53:53/udp
      - 127.0.0.1:53:53/tcp
      - 127.0.0.2:53:53/udp
      - 127.0.0.2:53:53/tcp
      - 192.168.1.2:8002:80/tcp
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.adguard.rule=Host(`adguard.home.exapmple.com`)"
      - "traefik.http.routers.adguard.entrypoints=https"
      - "traefik.http.routers.adguard.tls.certresolver=myresolver"
      - "traefik.http.services.adguard-opt.loadbalancer.server.port=80"

Поднимаем AdGuard:

docker compose up -d

Теперь DNS RouteSync Navigator будет использовать AdGuard в качестве апстрима, что позволит резать рекламу и немного поднять уровень защиты домашней сети.

Кстати, в AdGuard можно настроить подмену адресов для доменных имен вашей сети, чтоб не ходить на ваш сервер через внешний канал.

Заходим в "Фильтры" - "Перезапись DNS-запросов" и добавляем домены, которые вам нужны. Маски он тоже понимает. Т.е. можно просто отправить "*.home.example.com" на 192.168.1.2 и все поддомены "home.example.com" из дома будут ходить сразу на сервер. Удобно.

Read more

Самохостниг (часть 10) - AudiobookShelf

Самохостниг (часть 10) - AudiobookShelf

AudiobookShelf - это бесплатный сервер аудиокниг и подкастов с открытым исходным кодом. Он позволяет вам организовать вашу коллекцию аудиокниг и подкастов, следить за прогрессом прослушивания и синхронизировать его между устройствами. В этой статье мы рассмотрим, как установить AudiobookShelf с помощью Docker Compose и настроить его работу через Traefik. Предварительные требования

Обзор reMarkable 2

Обзор reMarkable 2

В мире технологий появляются устройства, которые не только выполняют свои функции, но и становятся символами статуса и стиля. Одним из таких устройств является reMarkable 2 — уникальный гибрид электронной читалки и записной книжки, который произвёл фурор на Западе и теперь доступен в России. Давайте разберёмся, что делает этот девайс таким особенным

Plex повышает цены: что изменится и стоит ли спешить с покупкой?

Plex повышает цены: что изменится и стоит ли спешить с покупкой?

С 29 апреля 2025 года Plex значительно увеличит стоимость подписок и изменит условия бесплатного использования. Рассказываем, кому выгодно купить лицензию сейчас, а кому — лучше перейти на альтернативы. Что случилось? Plex, популярный медиасервер и каталогизатор контента, объявил о повышении цен на все виды подписки: * Месячная — с $4.99 до $6.99

Самохостинг (часть 9) - Arr stack + медиатека

Самохостинг (часть 9) - Arr stack + медиатека

В этой статье я расскажу, как настроить полноценную систему автоматического скачивания и организации медиаконтента с помощью Sonarr (для сериалов), Radarr (для фильмов), Lidarr (для музыки), Jackett (для поиска по трекерам) и qBittorrent (для загрузки торрентов). Эта экосистема интегрируется с Plex, о котором у нас уже есть отдельная статья. Что мы