bolt Виділені сервери Valebyte — bare metal, захист від DDoS, по всьому світу.

Переглянути сервери arrow_forward
eco Початковий Туторіал

Налаштування AdGuard Home на VPS

calendar_month Jul 15, 2026 schedule 20 хв. читання visibility 15 переглядів
Настройка AdGuard Home на VPS для блокировки рекламы и трекеров во всей сети
info

Потрібен сервер для цього гайду? Ми пропонуємо виділені сервери та VPS у 50+ країнах з миттєвим налаштуванням.

Потрібен сервер для цього гайду?

Deploy a dedicated server in minutes.

Налаштування AdGuard Home на VPS для блокування реклами та трекерів у всій мережі

TL;DR

У цьому докладному посібнику ми крок за кроком налаштуємо AdGuard Home на вашому власному віртуальному приватному сервері (VPS). Ви навчитеся встановлювати AdGuard Home, конфігурувати його для ефективного блокування реклами та трекерів, а також забезпечувати його безпеку та стабільність. В результаті ви отримаєте централізований DNS-сервер, який фільтруватиме інтернет-трафік для всіх пристроїв у вашій домашній або офісній мережі, значно покращуючи приватність та швидкість завантаження сторінок.

  • Встановлення AdGuard Home на Ubuntu Server 24.04 LTS.
  • Налаштування блокування реклами, трекерів та шкідливих доменів на рівні DNS.
  • Захист веб-інтерфейсу AdGuard Home за допомогою HTTPS та автоматичних сертифікатів Let's Encrypt через Caddy.
  • Забезпечення безпеки сервера за допомогою Fail2Ban, UFW та SSH-ключів.
  • Рекомендації щодо резервного копіювання та обслуговування AdGuard Home.
  • Детальний розділ з усуненням несправностей та відповідями на поширені запитання.

Що ми налаштовуємо і навіщо

Схема: Що ми налаштовуємо і навіщо
Схема: Що ми налаштовуємо і навіщо

У сучасному інтернеті реклама та трекери стали невід'ємною частиною користувацького досвіду, часто сповільнюючи завантаження сторінок, споживаючи трафік та порушуючи конфіденційність. AdGuard Home — це потужне та безкоштовне програмне забезпечення з відкритим вихідним кодом, яке діє як DNS-сервер, що фільтрує інтернет-трафік на рівні доменних імен. Встановивши його на свій VPS, ви зможете централізовано блокувати рекламу, трекери, шкідливі сайти та навіть контент для дорослих для всіх пристроїв, підключених до вашої мережі (будь то домашній роутер, смартфон, комп'ютер або IoT-пристрій).

У підсумку, після завершення цього посібника, у вас буде власний, повністю контрольований DNS-сервер з AdGuard Home, який буде:

  • Блокувати переважну більшість реклами та спливаючих вікон.
  • Захищати від збору даних трекерами та аналітичними системами.
  • Запобігати доступу до відомих шкідливих та фішингових сайтів.
  • Покращувати швидкість завантаження веб-сторінок за рахунок скорочення обсягу завантажуваного контенту.
  • Надавати детальну статистику за DNS-запитами та заблокованими доменами.
  • Забезпечувати централізоване керування фільтрацією для всіх пристроїв у вашій мережі.

Альтернативи: Cloud-managed vs. Self-hosted на VPS

Існує кілька способів блокування реклами та трекерів. Ви можете використовувати розширення для браузерів (AdBlock Plus, uBlock Origin), які працюють лише в конкретному браузері, або платні VPN-сервіси, що пропонують блокування реклами. Також є хмарні DNS-сервіси з фільтрацією (наприклад, сам AdGuard DNS, Cloudflare DNS), які прості в налаштуванні, але не дають вам повного контролю над списками фільтрів і не надають детальної статистики за вашими запитами.

Self-hosted рішення на VPS, навпаки, пропонує максимальний контроль та гнучкість. Ви самі обираєте списки блокування, можете додавати свої правила, інтегрувати AdGuard Home з іншими сервісами (наприклад, з VPN-сервером на тому ж VPS) та мати повний доступ до логів та статистики. Це ідеальний варіант для тих, хто цінує приватність, продуктивність та повний контроль над своєю мережевою інфраструктурою, а також для тих, хто хоче мати єдину точку фільтрації для всіх пристроїв, включаючи ті, де встановлення розширень або додатків неможливе (наприклад, Smart TV, ігрові консолі).

Який VPS-конфіг потрібен для цього завдання

Схема: Який VPS-конфіг потрібен для цього завдання
Схема: Який VPS-конфіг потрібен для цього завдання

AdGuard Home — це відносно легкий застосунок, який не вимагає значних ресурсів, особливо якщо ви плануєте використовувати його для невеликої домашньої або офісної мережі (до 50-100 пристроїв). Однак, якщо ви очікуєте високе навантаження або хочете запускати додаткові сервіси на тому ж VPS, вимоги можуть зрости.

Мінімальні вимоги для AdGuard Home (актуально на 2026 рік):

  • CPU: 1 ядро (x64-сумісний процесор). AdGuard Home не сильно навантажує процесор, більшу частину часу він буде простоювати.
  • RAM: 512 МБ. AdGuard Home споживає від 50 до 200 МБ оперативної пам'яті залежно від кількості використовуваних списків фільтрів та обсягу кешу DNS-запитів. 512 МБ буде достатньо для комфортної роботи.
  • Диск: 10 ГБ SSD. Більша частина цього обсягу буде зайнята операційною системою та кешем. Сам AdGuard Home займає кілька десятків мегабайт. SSD настійно рекомендується для швидкої роботи DNS-сервера.
  • Мережа: 100 Мбіт/с. DNS-запити споживають дуже мало трафіку, тому навіть базового мережевого каналу буде більш ніж достатньо.

Рекомендований VPS-план для типового використання:

Для стабільної роботи AdGuard Home та можливості запускати інші невеликі сервіси на тому ж VPS, а також для забезпечення запасу ресурсів, рекомендується наступний конфіг:

Критерій Рекомендоване значення
CPU 2 ядра (Intel Xeon E3/E5 або AMD EPYC)
RAM 1 ГБ
Диск 25 ГБ SSD
Мережа 1 Гбіт/с порт, безлімітний трафік (або великий обсяг, наприклад, 1-2 ТБ/міс)
ОС Ubuntu Server 24.04 LTS (або новіша)

Такий VPS із зазначеними характеристиками забезпечить не тільки стабільну роботу AdGuard Home, але й дозволить вам за необхідності розмістити на ньому невеликий веб-сервер, VPN-сервер або інші утиліти без помітного зниження продуктивності.

Коли потрібен dedicated, а не VPS

Dedicated сервер для AdGuard Home зазвичай не потрібен. Однак, якщо ви плануєте:

  • Обслуговувати AdGuard Home для дуже великої організації (тисячі клієнтів).
  • Запускати на тому ж сервері безліч ресурсоємних застосунків (хмарні сховища, важкі бази даних, ігрові сервери з високим навантаженням).
  • Потрібна виняткова продуктивність введення-виведення або особливі апаратні конфігурації.

У цих рідкісних випадках можна розглянути оренду відповідного dedicated сервера, але для більшості користувачів VPS буде оптимальним та більш економічним рішенням.

Локація: на що впливає

Вибір локації VPS має значення для DNS-сервера:

  • Затримка (Latency): Чим ближче ваш VPS до вас географічно, тим нижчою буде затримка при обробці DNS-запитів. Для DNS це важливо, оскільки кожен запит має бути оброблений якомога швидше. Різниця в 50-100 мс може бути відчутною. Вибирайте локацію, яка знаходиться максимально близько до вашого фізичного місцезнаходження.
  • Доступність контенту: Деякі сервіси можуть пропонувати різний контент або мати різні обмеження залежно від IP-адреси, з якої надійшов запит. Якщо ви використовуєте VPS для обходу гео-обмежень, переконайтеся, що його локація відповідає вашим цілям.
  • Законодавство: У деяких юрисдикціях можуть бути свої правила щодо зберігання логів або обробки трафіку. Враховуйте це при виборі країни для вашого VPS.

Підготовка сервера

Схема: Підготовка сервера
Схема: Підготовка сервера

Перед встановленням AdGuard Home необхідно виконати базове налаштування та посилення безпеки вашого VPS. Ми будемо використовувати Ubuntu Server 24.04 LTS.

1. Підключення до сервера по SSH

Після отримання даних для доступу до VPS (зазвичай IP-адреса, логін root та пароль), підключіться до нього:


ssh root@ВАШ_IP_АДРЕС_VPS
    

При першому підключенні вам може бути запропоновано підтвердити відбиток сервера. Введіть yes.

2. Оновлення системи

Завжди починайте з оновлення пакетного менеджера та встановлених пакетів до останніх версій:


sudo apt update         # Оновлюємо список доступних пакетів
sudo apt upgrade -y     # Оновлюємо всі встановлені пакети
sudo apt autoremove -y  # Видаляємо непотрібні залежності
    

3. Створення нового користувача з правами sudo

Працювати під обліковим записом root небезпечно. Створимо нового користувача та надамо йому права sudo:


adduser ваш_пользователь          # Створюємо нового користувача
usermod -aG sudo ваш_пользователь # Додаємо користувача до групи sudo
    

Після створення користувача, задайте йому надійний пароль. Тепер ви можете вийти із сесії root та увійти під новим користувачем:


exit
ssh ваш_пользователь@ВАШ_IP_АДРЕС_VPS
    

4. Налаштування автентифікації за SSH-ключами (рекомендується)

Використання SSH-ключів значно підвищує безпеку порівняно з паролями. Якщо у вас ще немає пари SSH-ключів, згенеруйте їх на вашому локальному комп'ютері:


ssh-keygen -t rsa -b 4096 -C "ваш[email protected]"
    

Потім скопіюйте публічний ключ на ваш VPS:


ssh-copy-id ваш_пользователь@ВАШ_IP_АДРЕС_VPS
    

Після успішного налаштування, вимкніть автентифікацію за паролем для root та нового користувача. Відредагуйте файл конфігурації SSH-сервера:


sudo nano /etc/ssh/sshd_config
    

Знайдіть та змініть наступні рядки:


#PermitRootLogin yes
PermitRootLogin no

#PasswordAuthentication yes
PasswordAuthentication no
    

Збережіть зміни (Ctrl+O, Enter) та вийдіть (Ctrl+X). Перезапустіть SSH-сервіс:


sudo systemctl restart sshd
    

Важливо: Перед тим як закрити поточну SSH-сесію, відкрийте нове вікно терміналу та спробуйте підключитися до VPS з використанням SSH-ключа. Переконайтеся, що все працює, щоб не втратити доступ до сервера.

5. Налаштування брандмауера UFW (Uncomplicated Firewall)

UFW — це простий у використанні інтерфейс для iptables. Налаштуємо його, щоб дозволити лише необхідний трафік:


sudo apt install ufw -y                 # Встановлюємо UFW
sudo ufw default deny incoming          # Забороняємо весь вхідний трафік за замовчуванням
sudo ufw default allow outgoing         # Дозволяємо весь вихідний трафік за замовчуванням

sudo ufw allow ssh                      # Дозволяємо SSH (порт 22)
sudo ufw allow 80/tcp                   # Дозволяємо HTTP (для Caddy/AdGuard Home web interface)
sudo ufw allow 443/tcp                  # Дозволяємо HTTPS (для Caddy/AdGuard Home web interface)
sudo ufw allow 53/tcp                   # Дозволяємо DNS (для AdGuard Home)
sudo ufw allow 53/udp                   # Дозволяємо DNS (для AdGuard Home)
sudo ufw enable                         # Вмикаємо брандмауер
sudo ufw status verbose                 # Перевіряємо статус
    

Якщо ви використовуєте нестандартний порт для SSH, дозвольте його замість 22. Після ввімкнення UFW система може запитати підтвердження, введіть y.

6. Встановлення Fail2Ban

Fail2Ban сканує логи сервера на предмет підозрілої активності (наприклад, багаторазові невдалі спроби входу по SSH) та автоматично блокує IP-адреси порушників за допомогою брандмауера.


sudo apt install fail2ban -y            # Встановлюємо Fail2Ban
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local # Створюємо локальну копію конфігу
sudo nano /etc/fail2ban/jail.local      # Редагуємо конфігурацію
    

У файлі jail.local ви можете налаштувати параметри, наприклад, bantime (час блокування) та findtime (період, за який рахуються невдалі спроби). Переконайтеся, що секція [sshd] активна (enabled = true). Також можна додати свою IP-адресу до ignoreip, щоб вас ніколи не блокувало:


[DEFAULT]
ignoreip = 127.0.0.1/8 ::1 ВАШ_ДОМАШНИЙ_IP
bantime = 1d
findtime = 10m
maxretry = 5

[sshd]
enabled = true
port = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)s
    

Збережіть зміни та перезапустіть Fail2Ban:


sudo systemctl enable fail2ban          # Вмикаємо автозапуск при старті системи
sudo systemctl restart fail2ban         # Перезапускаємо сервіс
sudo fail2ban-client status             # Перевіряємо статус
    

Ваш сервер тепер базово налаштований та захищений. Можна переходити до встановлення AdGuard Home.

Встановлення ПЗ — покроково

Схема: Встановлення ПЗ — покроково
Схема: Встановлення ПЗ — покроково

Ми будемо встановлювати AdGuard Home безпосередньо з офіційних релізів, що є рекомендованим методом для більшості користувачів. Це забезпечує простоту встановлення та оновлення.

1. Встановлення необхідних утиліт

Для завантаження та розпакування архівів нам знадобляться wget або curl, а також unzip:


sudo apt install wget unzip -y  # Встановлюємо необхідні утиліти
    

2. Завантаження останньої версії AdGuard Home

Станом на 2026 рік, AdGuard Home активно розвивається. Ми припустимо, що актуальна стабільна версія буде приблизно v0.108.2 або v0.109.0. Ви завжди можете перевірити останню версію на сторінці релізів GitHub: https://github.com/AdguardTeam/AdGuardHome/releases.

Визначте архітектуру вашого VPS (зазвичай linux-amd64):


dpkg --print-architecture # Виводить архітектуру, наприклад, amd64
    

Завантажимо архів. Замініть v0.108.2 та linux-amd64 на актуальні значення, якщо вони відрізняються:


wget https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.108.2/AdGuardHome_linux_amd64.zip # Завантажуємо архів AdGuard Home
    

3. Розпакування та встановлення AdGuard Home

Розпакуємо архів у директорію /opt/AdGuardHome. Це загальноприйняте місце для стороннього ПЗ.


sudo mkdir -p /opt/AdGuardHome              # Створюємо директорію для AdGuard Home
sudo unzip AdGuardHome_linux_amd64.zip -d /opt/AdGuardHome # Розпаковуємо архів у створену директорію
rm AdGuardHome_linux_amd64.zip              # Видаляємо завантажений архів
    

4. Встановлення AdGuard Home як системного сервісу

AdGuard Home постачається зі зручним скриптом для встановлення його як системного сервісу (systemd). Це гарантує, що AdGuard Home буде автоматично запускатися при старті сервера та може керуватися стандартними командами systemctl.


sudo /opt/AdGuardHome/AdGuardHome -s install # Встановлюємо AdGuard Home як systemd-сервіс
    

Після виконання цієї команди AdGuard Home буде встановлений, запущений та налаштований на автоматичний запуск при завантаженні системи.

5. Перевірка статусу AdGuard Home

Переконайтеся, що сервіс AdGuard Home запущений та працює коректно:


sudo systemctl status AdGuardHome # Перевіряємо статус сервісу AdGuard Home
    

Вивід повинен показати Active: active (running). Якщо сервіс не запущений, ви можете спробувати запустити його вручну:


sudo systemctl start AdGuardHome # Запускаємо сервіс AdGuard Home
    

6. Початкове налаштування AdGuard Home через веб-інтерфейс

За замовчуванням, AdGuard Home запускає свій веб-інтерфейс на порту 3000. Відкрийте його в браузері, використовуючи IP-адресу вашого VPS:


http://ВАШ_IP_АДРЕС_VPS:3000
    

На першому кроці вам буде запропоновано вибрати мережеві інтерфейси, на яких AdGuard Home буде слухати DNS-запити та веб-інтерфейс. Для DNS-сервера виберіть 0.0.0.0 (всі інтерфейси) для прослуховування на порту 53. Для веб-інтерфейсу також виберіть 0.0.0.0 та вкажіть порт 80 (або залиште 3000, якщо будете використовувати зворотний проксі, як ми зробимо пізніше з Caddy).

Потім створіть ім'я користувача та надійний пароль для доступу до панелі керування AdGuard Home. Збережіть ці дані в безпечному місці.

Після завершення налаштування AdGuard Home перезапуститься, і ви зможете увійти до панелі керування.

Конфігурація

Схема: Конфігурація
Схема: Конфігурація

Після базової установки AdGuard Home необхідно виконати додаткове налаштування для забезпечення безпеки та оптимальної роботи. Ми налаштуємо HTTPS для веб-інтерфейсу за допомогою Caddy та перевіримо працездатність.

1. Налаштування DNS-сервера на пристроях

Щоб AdGuard Home почав фільтрувати трафік, вам потрібно вказати його IP-адресу як DNS-сервер на ваших пристроях або в роутері:

  • На роутері: Це кращий метод, оскільки він застосує фільтрацію до всіх пристроїв у вашій мережі автоматично. Зайдіть у налаштування вашого роутера (зазвичай 192.168.0.1 або 192.168.1.1), знайдіть розділ "Налаштування WAN" або "Налаштування DHCP/DNS" та вкажіть IP-адресу вашого VPS як основний DNS-сервер. Можна також вказати вторинний DNS-сервер (наприклад, 1.1.1.1 або 8.8.8.8) на випадок недоступності вашого AdGuard Home.
  • На комп'ютері (Windows/macOS/Linux): У мережевих налаштуваннях вашої операційної системи вручну встановіть IP-адресу VPS як основний DNS-сервер.
  • На смартфоні/планшеті: У налаштуваннях Wi-Fi мережі можна вказати статичну IP-адресу та DNS-сервер.

Після зміни DNS-сервера, очистіть DNS-кеш на пристрої (наприклад, ipconfig /flushdns у Windows або перезавантажте пристрій).

2. Встановлення та налаштування Caddy для HTTPS

Для безпечного доступу до веб-інтерфейсу AdGuard Home через HTTPS, ми будемо використовувати Caddy — сучасний веб-сервер, який автоматично керує сертифікатами Let's Encrypt. Це значно простіше, ніж налаштовувати Certbot з Nginx/Apache.

2.1. Встановлення Caddy

Додамо репозиторій Caddy та встановимо його:


sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https # Встановлюємо необхідні пакети
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg # Додаємо GPG ключ
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list # Додаємо репозиторій
sudo apt update                                 # Оновлюємо список пакетів
sudo apt install caddy -y                       # Встановлюємо Caddy
    
2.2. Конфігурація Caddyfile

Ми налаштуємо Caddy як зворотний проксі для AdGuard Home. Припустимо, у вас є доменне ім'я (наприклад, adguard.yourdomain.com), яке вказує на IP-адресу вашого VPS. Якщо домену немає, ви можете використовувати лише IP-адресу, але HTTPS працюватиме тільки з самопідписаним сертифікатом, або не працюватиме взагалі. Для повноцінного Let's Encrypt потрібен домен.

Відредагуйте файл /etc/caddy/Caddyfile:


sudo nano /etc/caddy/Caddyfile
    

Замініть існуючий вміст на наступний (замініть adguard.yourdomain.com на ваш реальний домен):


adguard.yourdomain.com {
    reverse_proxy 127.0.0.1:3000
    tls {
        dns cloudflare {ВАШ_CLOUDFLARE_API_ТОКЕН} # Опціонально: якщо ваш домен на Cloudflare і ви хочете DNS-01 аутентифікацію
    }
}
    

Пояснення:

  • adguard.yourdomain.com: Ваше доменне ім'я, за яким буде доступний AdGuard Home. Caddy автоматично отримає для нього сертифікат Let's Encrypt.
  • reverse_proxy 127.0.0.1:3000: Caddy перенаправлятиме запити з порту 80/443 на локальний порт 3000, де працює веб-інтерфейс AdGuard Home.
  • tls { dns cloudflare {ВАШ_CLOUDFLARE_API_ТОКЕН} }: Ця секція опціональна. Вона потрібна, якщо ви хочете використовувати DNS-01 автентифікацію для Let's Encrypt (наприклад, якщо ваш сервер знаходиться за NAT або ви хочете отримати wildcard-сертифікат). Для цього вам потрібно встановити плагін Caddy для Cloudflare та отримати API-токен. Якщо ви просто використовуєте домен, що вказує на ваш VPS, цю секцію можна прибрати, Caddy за замовчуванням використовує HTTP-01 автентифікацію.

Збережіть зміни та вийдіть. Тепер перевірте конфігурацію Caddy та перезапустіть його:


sudo caddy validate --config /etc/caddy/Caddyfile # Перевіряємо синтаксис Caddyfile
sudo systemctl reload caddy                        # Перезавантажуємо Caddy для застосування змін
    

Тепер ви зможете отримати доступ до веб-інтерфейсу AdGuard Home за адресою https://adguard.yourdomain.com.

3. Перевірка працездатності

Після всіх налаштувань переконаємося, що AdGuard Home працює та фільтрує трафік:

  • Перевірка DNS-запитів:

    На локальному комп'ютері, який використовує ваш AdGuard Home як DNS, виконайте команду:

    
    nslookup example.com ВАШ_IP_АДРЕС_VPS # Перевіряємо, що запити йдуть через ваш AdGuard Home
                

    Ви також можете перевірити це на сайті на кшталт dnsleaktest.com.

  • Перевірка блокування реклами:

    Відкрийте в браузері сайт з великою кількістю реклами (наприклад, новинний портал) і переконайтеся, що реклама не відображається. У панелі керування AdGuard Home (https://adguard.yourdomain.com) перейдіть до розділу "Запити" (Query Log) і переконайтеся, що там відображаються заблоковані домени.

  • Перевірка доступності веб-інтерфейсу:

    Переконайтеся, що ви можете зайти в панель керування AdGuard Home по HTTPS через ваш домен та авторизуватися.

4. Додаткові налаштування AdGuard Home (у веб-інтерфейсі)

  • Списки фільтрів (Filters -> DNS blocklists): Додайте додаткові списки блокування. Рекомендовані: OISD, AdAway, Easylist. Не переборщіть, занадто багато списків можуть уповільнити роботу.
  • Налаштування DNS (Settings -> DNS settings):
    • Upstream DNS servers: Вкажіть надійні та швидкі DNS-сервери для розв'язання запитів, які AdGuard Home не може заблокувати (наприклад, Cloudflare DNS 1.1.1.1 та 1.0.0.1, Google DNS 8.8.8.8 та 8.8.4.4, або Quad9 9.9.9.9 та 149.112.112.112). Рекомендується використовувати DNS-over-HTTPS (DoH) або DNS-over-TLS (DoT) для підвищення приватності, наприклад: https://cloudflare-dns.com/dns-query або tls://dns.quad9.net.
    • Bootstrap DNS servers: Для розв'язання імен upstream-серверів. Можна залишити за замовчуванням або вказати той самий Cloudflare/Google.
    • Enable DNSSEC: Увімкніть для додаткової безпеки.
    • Enable EDNS Client Subnet (ECS): Вимкніть, щоб приховати вашу підмережу від upstream-серверів та покращити приватність (може вплинути на CDN).
  • Налаштування DHCP (Settings -> DHCP settings): Якщо ви хочете, щоб AdGuard Home керував DHCP у вашій мережі, ви можете увімкнути його тут. Однак, це вимагає відключення DHCP на вашому роутері. Для більшості користувачів простіше залишити DHCP на роутері та просто вказати AdGuard Home як DNS-сервер.
  • Клієнти (Clients): Ви можете додавати та налаштовувати правила для окремих клієнтів (пристроїв) у вашій мережі, щоб застосовувати різні правила фільтрації.

Резервні копії та обслуговування

Схема: Резервні копії та обслуговування
Схема: Резервні копії та обслуговування

Регулярне резервне копіювання та своєчасне обслуговування є критично важливими для будь-якого сервера. AdGuard Home зберігає свої дані в одному каталозі, що спрощує створення резервних копій.

1. Що резервувати

Основний каталог даних AdGuard Home знаходиться за замовчуванням у /opt/AdGuardHome/data. Він містить:

  • Файл конфігурації (AdGuardHome.yaml)
  • Бази даних статистики та логів DNS-запитів
  • Списки фільтрів, користувацькі правила та інші налаштування

Всі ці дані необхідні для повного відновлення AdGuard Home. Також корисно мати резервну копію файлу Caddyfile, якщо ви використовуєте Caddy.

2. Простий скрипт авторезервного копіювання

Створимо простий скрипт для архівування каталогу даних AdGuard Home та Caddyfile. Ми будемо використовувати tar для архівування.


sudo nano /usr/local/bin/backup_adguard.sh
    

Додайте наступний код (замініть ваш_пользователь на ім'я вашого користувача):


#!/bin/bash

# Каталог, де зберігатимуться резервні копії
BACKUP_DIR="/home/ваш_пользователь/adguard_backups"
# Каталог даних AdGuard Home
ADGUARD_DATA_DIR="/opt/AdGuardHome/data"
# Файл конфігурації Caddy
CADDYFILE="/etc/caddy/Caddyfile"
# Ім'я файлу резервної копії
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
BACKUP_FILE="${BACKUP_DIR}/adguard_home_backup_${TIMESTAMP}.tar.gz"

echo "Запуск резервного копіювання AdGuard Home о ${TIMESTAMP}..."

# Створюємо директорію для резервних копій, якщо її немає
mkdir -p "${BACKUP_DIR}"

# Створюємо архів
sudo tar -czf "${BACKUP_FILE}" "${ADGUARD_DATA_DIR}" "${CADDYFILE}"

# Перевіряємо успішність створення архіву
if [ $? -eq 0 ]; then
    echo "Резервна копія успішно створена: ${BACKUP_FILE}"
    # Видаляємо старі резервні копії (залишаємо лише останні 7 днів)
    find "${BACKUP_DIR}" -type f -name "adguard_home_backup_*.tar.gz" -mtime +7 -delete
    echo "Старі резервні копії очищено."
else
    echo "Помилка при створенні резервної копії!"
fi

echo "Процес резервного копіювання завершено."
    

Зробіть скрипт виконуваним:


sudo chmod +x /usr/local/bin/backup_adguard.sh
    

3. Налаштування Cron для автоматичного запуску

Додамо завдання в Cron для щоденного запуску скрипта резервного копіювання. Наприклад, о 3:00 ночі:


sudo crontab -e
    

Додайте наступний рядок у кінець файлу:


0 3 * * * /usr/local/bin/backup_adguard.sh >> /var/log/adguard_backup.log 2>&1
    

Це запускатиме скрипт щодня о 03:00 та записуватиме вивід у лог-файл /var/log/adguard_backup.log.

4. Куди зберігати резервні копії (зовнішнє сховище)

Зберігати резервні копії на тому ж VPS, що й вихідні дані, ризиковано. Якщо VPS вийде з ладу, ви втратите і дані, і резервні копії. Рекомендується використовувати зовнішнє сховище:

  • S3-сумісне сховище: Хмарні сервіси типу Amazon S3, DigitalOcean Spaces, Backblaze B2, Scaleway Object Storage. Ви можете використовувати утиліти типу s3cmd або rclone для автоматичного завантаження резервних копій.
  • Окремий VPS: Орендувати невеликий, дешевий VPS для зберігання резервних копій та використовувати rsync або scp для їх передачі.
  • Локальний сервер/NAS: Якщо у вас є домашній сервер або мережеве сховище, можна налаштувати rsync для синхронізації резервних копій з VPS.

Наприклад, для S3 з rclone (після його встановлення та налаштування):


# Додайте до скрипта backup_adguard.sh після створення архіву
rclone copy "${BACKUP_FILE}" "remote_s3_storage:adguard-backups/"
    

5. Оновлення: Rolling vs. Maintenance Window

Регулярні оновлення важливі для безпеки та отримання нових функцій.

  • Оновлення операційної системи: Виконуйте sudo apt update && sudo apt upgrade -y не рідше одного разу на місяць. Перезавантаження сервера може знадобитися після оновлень ядра.
  • Оновлення AdGuard Home:

    AdGuard Home має вбудований механізм оновлення через веб-інтерфейс (розділ "Settings" -> "General settings" -> "Update channel"). Виберіть "Stable" канал і регулярно перевіряйте наявність оновлень. Оновлення зазвичай займає кілька секунд і перезапускає сервіс.

    Альтернативно, можна оновити вручну, завантаживши нову версію та замінивши бінарний файл, потім перезапустивши сервіс. Перед ручним оновленням завжди робіть резервну копію!

    
    sudo systemctl stop AdGuardHome # Зупиняємо сервіс
    wget https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.109.0/AdGuardHome_linux_amd64.zip # Завантажуємо нову версію
    sudo unzip -o AdGuardHome_linux_amd64.zip -d /opt/AdGuardHome # Розпаковуємо із заміною
    rm AdGuardHome_linux_amd64.zip # Видаляємо архів
    sudo systemctl start AdGuardHome # Запускаємо сервіс
                
  • Оновлення Caddy: Caddy оновлюється разом із системними пакетами через apt upgrade, оскільки ми додали його репозиторій.

Для критично важливих сервісів оновлення краще проводити у "вікно обслуговування" (maintenance window), коли навантаження мінімальне, і у вас є час на перевірку та відкат у разі проблем. Для AdGuard Home у домашній мережі це не так критично, але завжди рекомендується спочатку зробити резервну копію.

Вирішення проблем + FAQ

AdGuard Home не блокує рекламу

Що перевірити: Переконайтеся, що IP-адреса вашого VPS коректно вказана як DNS-сервер на ваших пристроях або роутері. Перевірте, що AdGuard Home запущено (sudo systemctl status AdGuardHome) і слухає на порту 53 (sudo netstat -tulnp | grep 53). Зайдіть у веб-інтерфейс AdGuard Home та перевірте "Журнал запитів" (Query Log) — мають відображатися DNS-запити та їхній статус (заблоковано/дозволено). Переконайтеся, що у вас увімкнено списки блокування в "DNS-фільтри".

Як виправити: Перезапустіть AdGuard Home (sudo systemctl restart AdGuardHome). Очистіть DNS-кеш на вашому пристрої. Спробуйте використати інший список блокування або додайте домен вручну до "Користувацьких правил фільтрації". Переконайтеся, що UFW дозволяє трафік на порту 53 (TCP/UDP).

Не можу отримати доступ до веб-інтерфейсу AdGuard Home через HTTPS

Що перевірити: Переконайтеся, що Caddy запущено та активний (sudo systemctl status caddy). Перевірте файл /etc/caddy/Caddyfile на наявність синтаксичних помилок (sudo caddy validate --config /etc/caddy/Caddyfile). Переконайтеся, що доменне ім'я, яке ви використовуєте, коректно вказує на IP-адресу вашого VPS. Перевірте логи Caddy (sudo journalctl -u caddy -f) на предмет помилок отримання сертифіката Let's Encrypt. Переконайтеся, що UFW дозволяє трафік на портах 80 та 443.

Як виправити: Виправте помилки в Caddyfile. Якщо проблема з сертифікатом, переконайтеся, що ваш домен коректно налаштований та доступний з інтернету. Спробуйте тимчасово відключити UFW (sudo ufw disable) для перевірки, чи не є він причиною (але не забудьте увімкнути назад!).

Який VPS-конфіг мінімально підійде?

Що перевірити: Для AdGuard Home мінімально достатній VPS з 1 ядром CPU, 512 МБ ОЗП та 10 ГБ SSD. Цього вистачить для обслуговування невеликої домашньої мережі (до 50 пристроїв) з базовим набором списків фільтрів. Однак, для більш комфортної роботи та можливості запуску додаткових сервісів на тому ж VPS, рекомендується 2 ядра CPU, 1 ГБ ОЗП та 25 ГБ SSD. Це забезпечить запас продуктивності та стабільність.

Як виправити: Якщо ваш поточний VPS не відповідає мінімальним вимогам, розгляньте можливість апгрейду тарифного плану або переходу на більш потужний VPS. Нестача ресурсів може призводити до уповільнення роботи DNS-сервера та нестабільності.

Що вибрати — VPS чи dedicated для цього завдання?

Що перевірити: Для налаштування AdGuard Home у переважній більшості випадків (домашня мережа, малий бізнес, особисте використання) VPS є оптимальним вибором. Він значно дешевший, простіший в управлінні та надає більш ніж достатні ресурси. Dedicated сервери потрібні для дуже великих, високонавантажених проєктів або специфічних вимог до обладнання.

Як виправити: Якщо ви розглядаєте AdGuard Home для особистого або малого використання, сміливо обирайте VPS. Dedicated сервери — це надлишкове рішення для цього завдання, якщо тільки ви не плануєте використовувати його для інших, набагато більш ресурсоємних цілей.

AdGuard Home споживає занадто багато пам'яті/CPU

Що перевірити: Зайдіть у веб-інтерфейс AdGuard Home та перевірте кількість активних списків фільтрів. Занадто велика кількість списків або дуже об'ємні списки (наприклад, з мільйонами записів) можуть споживати значні ресурси. Перевірте "Журнал запитів" на предмет аномально великої кількості запитів або DDoS-атаки на ваш DNS-сервер.

Як виправити: Зменшіть кількість активних списків фільтрів. Відключіть ті, які вам не потрібні або які сильно перетинаються. Очистіть DNS-кеш AdGuard Home. Якщо навантаження викликане зовнішніми запитами, перевірте налаштування UFW та переконайтеся, що доступ до порту 53 відкритий лише для довірених IP-адрес (якщо це не публічний DNS). Якщо це постійно високе навантаження від легітимних клієнтів, можливо, вам знадобиться VPS з більшим обсягом ОЗП.

Не можу оновити AdGuard Home через веб-інтерфейс

Що перевірити: Переконайтеся, що AdGuard Home має права на запис у каталог, де його встановлено (/opt/AdGuardHome). Перевірте логи AdGuard Home на предмет помилок при спробі оновлення. Переконайтеся, що сервер має доступ до GitHub для завантаження оновлень.

Як виправити: Спробуйте виконати оновлення вручну, як описано в розділі "Резервне копіювання та обслуговування". Переконайтеся, що користувач, під яким запущено AdGuard Home (зазвичай adguardhome), має необхідні права. Якщо проблема зберігається, можливо, це тимчасова проблема з серверами оновлень AdGuard Home або GitHub.

Висновки та наступні кроки

Схема: Висновки та наступні кроки
Схема: Висновки та наступні кроки

Вітаємо! Ви успішно розгорнули та налаштували AdGuard Home на своєму VPS, створивши потужний та приватний DNS-сервер для блокування реклами та трекерів. Тепер усі пристрої у вашій мережі, що використовують ваш AdGuard Home, працюватимуть швидше та безпечніше, а ви отримаєте повний контроль над фільтрацією трафіку.

Наступні кроки:

  • Інтеграція з VPN: Якщо у вас є VPN-сервер на тому ж або іншому VPS (наприклад, WireGuard або OpenVPN), налаштуйте його так, щоб він використовував ваш AdGuard Home як DNS. Це дозволить вам користуватися перевагами блокування реклами навіть за межами вашої домашньої мережі.
  • Моніторинг та оптимізація: Регулярно переглядайте статистику AdGuard Home, додавайте або видаляйте списки фільтрів, тонко налаштовуйте правила для досягнення оптимального балансу між блокуванням та відсутністю хибних спрацьовувань.
  • Розширені функції: Вивчіть додаткові можливості AdGuard Home, такі як DNS-over-HTTPS (DoH), DNS-over-TLS (DoT) або DNSCrypt для підвищення приватності та безпеки ваших DNS-запитів до upstream-серверів.

Поділитися цим записом:

налаштування AdGuard Home на VPS для блокування реклами та трекерів у
support_agent
Valebyte Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.