Блокуємо рекламу за допомогою Pi Hole. Детальний гайд

Привіт. У цій статті я поділюся простим покроковим способом налаштувати Pi-hole — зручний інструмент для блокування реклами та трекерів у вашій домашній мережі. Він працює як DNS-сервер, який «відсікає» небажані запити ще до того, як реклама чи стеження встигнуть завантажитися.

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

росія — держава терорист. росія систематично, масово та цілеспрямовано завдає удари по інфраструктурі України, вбиває мирне населення та окуповує територію України. ЗСУ щодня героїчно боронять нас, наші міста від російської орди, заради нашої безпеки й свободи. Допоможіть нашим захисникам — підтримайте гривнею збір мого друга з Social Drone на комплектуючі для збірки FPV-дронів.

Також я створив форум розумного будинку. Там можна оговорити Pi-Hole, Home Assistant, розумні пристрої, відеоспостереження, енергомоніторинг та багато іншого. Доєднуйтесь.

Що таке і як працює Pi-Hole

Pi-hole — це вільне програмне забезпечення з відкритим кодом, яке працює як локальний DNS-сервер. Воно фільтрує інтернет-запити у вашій мережі й блокує рекламу, трекери, фішингові сайти та інші небажані ресурси до того, як вони завантажаться на пристрій.

Зазвичай сам сайт завантажується з одного домену (наприклад, example.com), а реклама, трекери й аналітика — з інших сторонніх адрес, як-от ads.network.com чи tracking.site.io. Pi-hole блокує такі запити ще на рівні DNS, тому ці ресурси просто не завантажуються, і небажаний вміст навіть не потрапляє на ваш пристрій. Детальніше тут.

Чим Pi-hole відрізняється від Adblock чи uBlock Origin

Існує два підходи до блокування реклами: на рівні браузера і на рівні мережі. Перший реалізується за допомогою розширень, таких як uBlock Origin чи Adblock Plus. Вони завантажують увесь вміст сторінки (включно з рекламою), а потім намагаються візуально приховати або заблокувати окремі елементи сайту — наприклад, за допомогою CSS-правил для банерів, відео чи спливаючих вікон. Такі розширення діють лише у браузері і лише на тому пристрої, де вони встановлені.

Натомість Pi-hole блокує доступ до рекламних доменів уже на рівні DNS. У результаті шкідливі чи рекламні ресурси, які занесено до чорного списку, взагалі не завантажуються. Це дає змогу забезпечити фільтрацію трафіку одразу для всіх пристроїв у локальній мережі.

Списки блокувань, створені для Adblock або uBlock, не є сумісними з Pi-hole напряму, оскільки використовують інший синтаксис. Проте деякі проєкти, зокрема Ukrainian Security Filter, пропонують одразу кілька форматів одного й того самого списку, серед яких є й ті, що підходять для Pi-hole.

Формат

Приклад запису

Сумісність з Pi-hole

Коментар

Hosts-based

0.0.0.0 example.com

✅ ✅ ✅ Повна

Повністю підтримується, рекомендований формат списків

Domain-based

example.com

✅ ✅ Висока

Повністю підтримується, але не дозволяє вказувати IP вручну (на відміну від hosts)

Adblock-style

||example.com^

✅ Обмежена (доменна)

Працюють лише прості доменні правила. Решта — просто пропускаються. Рекомендується використовувати адаптовані списки для Pi-hole.

DNSMasq

address=/example.com/

⚠️ Ручне додавання

Працює через ручне додавання в конфіги Pi-hole (dnsmasq.d), не для зовнішніх списків

Чому не варто використовувати будь-які продукти Adguard

Компанія AdGuard заснована у москві у 2009 році. Наразі юридично зареєстрована на Кіпрі. Проте головний офіс досі фізично знаходиться у москві. Це підтверджують і самі працівники компанії.

1. AdGuard досі працюють на росії, ведуть бізнес, наймають там працівників, та сплачують податки, за які фінансуються російські ракети та армія.

2. Незважаючи на заяви про відкритість Adguard не має стороннього аудиту безпеки у великих довірених компаніях, як-отPricewaterhouseCoopers AG, Cure53 або KPMG.

3. Є докази того, що трафік Adguard VPN проходить через провайдера на окупованій українській території — Херсонтелеком, який підключений до ростелеком через Крим. Також Adguard називає повномасштабне вторгнення росії в Україну конфліктом, а не вторгненням чи війною, що збігається з новомовою російської пропаганди.

4. Нещодавно відбувся ще один скандал за участю Adguard та Ublock Origin. Ublock Оrigin без пояснень змінив українські фільтри (Ukrainian filters) на російські фільтри Adguard (Adguard Ukrainian). Небезпека полягає в тому, що є зафіксовані випадки, коли росіяни (RU AdList) цілеспрямовано блокували банери фонду «Повернись живим». І хоча немає доказів, що розробники RU Adlist та Adguard напряму пов’язані, це ставить під сумнів прозорість механізмів модерації списків блокувань реклами та підкреслює важливість незалежного контролю за джерелами фільтрів.

5. Російські фільтри української реклами менш якісні: ні AdGuard Ukrainian, ні RU AdList не видаляють на 100% рекламні блоки, навіть на провідних українських новинних ресурсах.

Враховуючи усі ці дії, я наполегливо рекомендую відмовитись від використання усіх продуктів та списків блокувань Adguard.

Можливості Pi-hole

Хоча спочатку Pi-hole розроблявся як проєкт для однопалатного компʼютера Raspberry Pi, на сьогодні він може працювати практично на будь-якій Linux-машині, у Docker-контейнері або віртуальній машині.

  • 💡Споживає мінімум системних ресурсів
  • 🌐 Працює у якості DNS та DHCP-сервера
  • 🚫 Блокує рекламні вікна
  • 🕵️‍♂️ Блокує рекламні трекери (наприклад, Facebook, Google, інші онлайн-магазини)
  • 🔒 Блокує будь-які задані сайти (наприклад казино, порно тощо)
  • 🛡️ Може фільтрувати шкідливе програмне забезпечення (за допомогою списків)
  • 📉 Зменшує навантаження на домашню мережу (прибирає від 10 до 50% усього трафіку)
  • 👀 Дозволяє відстежувати, до яких серверів звертаються ваші розумні пристрої: телефони, камери спостереження, пилососи, хаби.

Рекомендоване апаратне забезпечення та операційна система

Pi-hole дуже легкий і не вимагає великої багато системних ресурсів. Для його роботи необхідно мінімум 2, рекомендовано 4 GB дискового простору та 512 MB оперативної памʼяті. Офіційно Pi-hole підтримує:

  • Raspberry Pi OS ( Raspbian)
  • Armbian
  • Ubuntu
  • Debian
  • Fedora
  • CentOS Stream
  • Будь-яка операційна система з Docker
  • Будь-яка операційна система з віртуальною машиною

При запуску скрип та встановлення Pi-Hole перевіряє операційну систему. І якщо її немає в списку підтримуваних, попереджає про це. Але і відразу підказує, як запустити встановлення, обходячи перевірку. До прикладу, я використовую Linux Mint. Це операційна система сімейства Ubuntu, але її немає в списку підтримуваних систем. Тому я запускаю встановлення без перевірки ОС.

Популярними виборами апаратного забезпечення є:

  • Офіційний набір (з передвстановленим pi-hole).
  • Raspberry Pi Zero — маленький та енергоефективний одноплатний комп’ютер
  • Raspberry Pi 4, 5 — популярні універсальні одноплатники
  • Orange Pi Zero — дешевий, має декілька різних версій.
  • Міні ПК. Більше варіантів можна прочитати у моїй статті про вибір ПК для Home Assistant.

Вибір між міні-ПК та одноплатним комп’ютером залежить від ваших цілей. Якщо плануєте запускати лише Pi-hole — цілком підійде будь-який одноплатник. Проте у спільноті розумного дому побутує думка, що міні-ПК — вигідніший варіант, якщо хостити декілька сервісів завдяки кращій продуктивності, розширеним можливостям і часто нижчій ціні, особливо на вторинному ринку.

Встановлення Pi-hole

Встановлення Pi-hole у Home Assistant

Раніше Home Assistant мав офіційний застосунок Pi-hole, проте зараз є лише інтеграція, яка зчитує статистику з Pi-hole, якщо він встановлений. Пояснюється це тим, що раніше застосунок підтримував один з розробників Home Assistant — Frenck. Але пізніше зробив вибір на користь Adguard Home. За словами Frenck, через складність підтримки Pi-hole. Детальніше тут.

Існує стороннє доповнення, що підтримується та оновлюється. Щоб встановити його:

Перейдіть в меню Home Assistant >> Налаштування >> Доповнення >> Магазин доповнень >> натисніть три крапки у верхньому правому куті >> репозиторії та вставити у поле «Додати URL» github.com/...​lein/homeassistant-addons.

Після того доповнення Pi-hole зʼявиться в магазині. У пошуку введіть Pi-hole та встановіть його. Для зручності можна увімкнути перемикачі Wathdog та «Показати на бічній панелі». Після того Pi-hole готовий до використання.

Встановлення Pi-hole Linux (Mint)

Для встановлення у Linux потрібно запустити скрипт, який задасть вам кілька запитань та встановить Pi-Hole.

curl -sSL <a href="https://install.pi-hole.net">https://install.pi-hole.net</a> | bash

Якщо цей скрипт для вас не працює, існують альтернативні URL-скрипти. Варто зазначити, що Pi-Hole розрахований на його встановлення у рекомендованих операційних системах, які я описав вище. Якщо у вас інша операційна система, як у мене, потрібно запустити скрипт встановлення без перевірки ОС.

curl -sSL <a href="https://install.pi-hole.net">https://install.pi-hole.net</a> | PIHOLE_SKIP_OS_CHECK=true bash

На наступному кроці скрипт запитає, якого DNS-провайдера ви хочете використовувати. Ось пояснення різниці між DNS-серверами, які пропонує Pi-hole під час встановлення:

Google — Це стандартний DNS-сервер у Pi-hole. Він працює стабільно й швидко, але з точки зору конфіденційності — не ідеальний, оскільки Google зберігає певну інформацію про запити.

OpenDNS (від Cisco) — має вбудовані фільтри проти фішингу. Існує також спеціальна версія OpenDNS FamilyShield, яка додатково блокує порнографію, сумнівний контент, анонімайзери та частину шкідливих сайтів. Це зручно для домашніх мереж або якщо є діти.

Level3 — не використовує фільтрів узагалі. Якщо ти зробиш помилку в адресі, тебе можуть перекинути на пошукову сторінку Level3. Цей варіант простий, але не дає захисту від небезпечних сайтів.

Comodo Secure DNS — активно перевіряє сайти в реальному часі за чорними списками. Якщо ти переходиш на фішинговий сайт чи на сайт зі шкідливим ПЗ, Comodo попередить. Підходить тим, хто хоче додатковий рівень захисту без зайвих налаштувань.

Quad9 — Орієнтований на безпеку й приватність. Є кілька варіантів:
• З фільтрацією небезпечних сайтів і підтримкою DNSSEC.
• Без фільтрації й без додаткового захисту.
• З покращеною геолокацією для швидшого завантаження сайтів (ECS).

Cloudflare DNS — дуже швидкий та приватний. Cloudflare обіцяє не зберігати твою IP-адресу. Є також спеціальний сервіс «1.1.1.1 for Families», який може блокувати або лише шкідливе ПЗ, або ще й контент для дорослих.

Custom (власний) — якщо жоден із варіантів тебе не влаштовує — ти можеш вручну вказати будь-який DNS-сервер. Для тих, кому важлива інтернет-незалежність, варто звернути увагу на проєкт OpenNIC — це альтернативна система DNS, яку створила спільнота, незалежна від корпорацій.

Існує безліч публічних DNS-серверів. Деякі мають розширене фільтрування спаму, реклами чи небажаного контенту. За бажанням можна обрати оптимальний для вас DNS-сервер за допомогою сайту DNSPerf, програми DNS Benchmark або будь-якого іншого зручного для вас інструменту. Для себе я обрав перший варіант Google.

На цьому кроці Pi-Hole пропонує додати рекомендований стандартний список. StevenBlack’s Unified Host List. Я погодився. Список підтримується в актуальному стані та блокує шкідливі, рекламні та трекінгові домени. Його можна застосовувати для покращення безпеки та конфіденційності. Детальну інформацію про цей список дивіться нижче в розділі «Списки блокувань» (чорні списки).

Тут Pi-Hole запитує, чи потрібно зберігати в логах Pi-Hole історію DNS-запитів. Я натиснув «так». Це зручно, оскільки відразу видно дозволені та заборонені запити. Детальніше дивіться нижче у розділі «Огляд інтерфейсу Pi-hole».

Цей пункт налаштовує, скільки саме інформації про DNS-запити буде відображатись у вебінтерфейсі Pi-hole. DNS-запити — це звернення пристроїв до інтернету, наприклад, коли ваш телефон запитує: «де знайти google.com?»

Можна обрати повну видимість усіх запитів і пристроїв, або ж мінімальну — лише загальні цифри, без подробиць. Це зручно, бо кожен користувач може налаштувати рівень деталізації під себе.

Для себе я обрав рівень 0 (show everything) — у ньому видно всі запити, IP-адреси та імена пристроїв, які їх зробили. Це інформативно і зручно, якщо хочеться повного контролю над тим, що відбувається в мережі.

Якщо згодом захочеться більше конфіденційності — режим можна легко змінити в налаштуваннях. Детальніше тут.

Рівень

Що ви бачите

Що приховано

0 — Найменша конфіденційність

Які сайти запитувалися; який пристрій (IP-адреса та ім’я) зробив запит

Нічого не приховується

1 — Приховання IP пристроїв

Які сайти запитувалися

Які пристрої зробили запит (IP/ім’я)

2 — Тільки сайти, без деталей

Лише список сайтів

Які пристрої; скільки разів який пристрій зробив запит

3 — Лише загальна статистика

Тільки кількість запитів

Які сайти; які пристрої

4 — Повна конфіденційність

Нічого

Вся інформація

Рівні конфіденційності в Pi-hole:

Останній крок — Pi-Hole повідомляє про успішне встановлення Pi-Hole. Надає адресу вебсторінки та пароль адміністратора. Не поширюйте свій пароль адміністратора публічно.

Встановлення Pi-hole Docker

Docker — це система, яка дозволяє запускати програми в ізольованому середовищі, яке називається контейнер. Уяви собі, що кожна така програма живе у своєму маленькому «контейнері», де вже є всі необхідні налаштування, залежності й файли. Це схоже на мініверсію окремого комп’ютера всередині твого. Завдяки цьому контейнери не заважають одне одному, їх легко запускати, зупиняти, переносити або оновлювати. Docker працює однаково добре на Linux, Windows і macOS.

Існує два основні способи запуску Pi-hole через Docker. Перший — це команда docker run, яка дозволяє створити й запустити контейнер прямо з терміналу, задаючи всі параметри вручну: порти, змінні середовища, томи для збереження даних. Це підходить для швидкого старту або тестів.

docker run --name pihole -p 53:53/tcp -p 53:53/udp -p 80:80/tcp -p 443:443/tcp -e TZ=Europe/Kyiv -e FTLCONF_webserver_api_password="correct horse battery staple" -e FTLCONF_dns_listeningMode=all -v ./etc-pihole:/etc/pihole -v ./etc-dnsmasq.d:/etc/dnsmasq.d --cap-add NET_ADMIN --restart unless-stopped pihole/pihole:latest

Другий спосіб — це використання docker-compose, де всі ці параметри описуються в окремому .yaml-файлі. Це зручніше, якщо ти хочеш мати зрозумілу й постійну конфігурацію, яку легко змінювати, копіювати або розгортати знову.

# More info at https://github.com/pi-hole/docker-pi-hole/ and https://docs.pi-hole.net/
services:
  pihole:
    container_name: pihole
    image: pihole/pihole:latest
    ports:
      # DNS Ports
      - "53:53/tcp"
      - "53:53/udp"
      # Default HTTP Port
      - "80:80/tcp"
      # Default HTTPs Port. FTL will generate a self-signed certificate
      - "443:443/tcp"
      # Uncomment the below if using Pi-hole as your DHCP Server
      #- "67:67/udp"
      # Uncomment the line below if you are using Pi-hole as your NTP server
      #- "123:123/udp"
    environment:
      # Set the appropriate timezone for your location from
      # https://en.wikipedia.org/wiki/List_of_tz_database_time_zones, e.g:
      TZ: 'Europe/Kyiv'
      # Set a password to access the web interface. Not setting one will result in a random password being assigned
      FTLCONF_webserver_api_password: 'correct horse battery staple'
      # If using Docker's default `bridge` network setting the dns listening mode should be set to 'all'
      FTLCONF_dns_listeningMode: 'all'
    # Volumes store your data between container upgrades
    volumes:
      # For persisting Pi-hole's databases and common configuration file
      - './etc-pihole:/etc/pihole'
      # Uncomment the below if you have custom dnsmasq config files that you want to persist. Not needed for most starting fresh with Pi-hole v6. If you're upgrading from v5 you and have used this directory before, you should keep it enabled for the first v6 container start to allow for a complete migration. It can be removed afterwards. Needs environment variable FTLCONF_misc_etc_dnsmasq_d: 'true'
      #- './etc-dnsmasq.d:/etc/dnsmasq.d'
    cap_add:
      # See https://github.com/pi-hole/docker-pi-hole#note-on-capabilities
      # Required if you are using Pi-hole as your DHCP server, else not needed
      - NET_ADMIN
      # Required if you are using Pi-hole as your NTP client to be able to set the host's system time
      - SYS_TIME
      # Optional, if Pi-hole should get some more processing time
      - SYS_NICE
    restart: unless-stopped

Також можна встановити Pi-Hole у Proxmox. Proxmox — це окрема операційна система для віртуалізації, яка дозволяє створювати як повноцінні віртуальні машини, так і контейнери — зокрема, у форматі LXC. LXC — це ще один тип контейнера, легший і швидший за віртуальні машини, але з дещо вищим рівнем доступу до ресурсів хост-системи.

Спеціально для Proxmox існує зручний інструмент Proxmox Helper Scripts, який дозволяє встановити Pi-hole у вигляді LXC-контейнера буквально в один клік. Це ідеальний варіант для швидкого розгортання. Посилання на Pi-Hole Proxmox Scripts тут.

Огляд інтерфейсу Pi-hole

Dashboard — головна сторінка Pi-hole. Показує підключені пристрої, їх загальну кількість запитів, типи запитів, відсоток заблокованих запитів. Кількість заблокованих доменів, топ список дозволених та заблокованих доменів.

QueryLog — лог Pi-hole. У реальному часі показує дозволені та заблоковані запити пристроїв. Дозволяє заблокувати або розблокувати будь-який домен з логу.

Long-term data — показує статистику за тривалий період. Допомагає аналізувати ефективність блокувань та зміни у трафіку.

Groups — дозволяє створювати різні групи пристроїв або користувачів, щоб налаштовувати окремі правила блокування реклами для кожної групи. Це дає змогу, наприклад, блокувати рекламу для одних пристроїв, а для інших — ні.

Clients — дозволяє керувати підключеними пристроями, додаючи їх за IP-адресою (IPv4/IPv6), підмережею (CIDR), MAC-адресою, ім’ям хоста або інтерфейсом.

Domains — дозволяє додавати конкретний домен у білий (не блокується) або у чорний список (блокується). Дуже цікава річ галочка Add domain as wildcard. Дозволяє блокувати або дозволяти не лише певний домен, але усі піддомени.

Adlist — дозволяє додавати або видаляти списки доменів. Список всередині себе має десятки або сотні доменів, що будуть блокуватись.

Disable Blocking — дозволяє вимкнути блокування на 10, 30 секунд, 5 хвилин, заданий час, або безстроково. Корисно, коли потрібно перевірити, що сайт не відкривається через блокування Pi-hole чи з іншої причини.

Local DNS — дозволяє створювати власні відповідності між доменними іменами та IP-адресами у локальній мережі. Наприклад, можна призначити nas.local для 192.168.1.100, щоб зручно підключатися до локального сховища.

Tools — містить набір утиліт для діагностики та адміністрування, зокрема перевірку доменів у списках блокування, очищення кешу DNS, перегляд журналів запитів і налагоджувальні інструменти, такі як тестування з’єднання або трасування маршрутів. Персонально для мене найкорисніший інструмент у цій секції — це «Update Gravity», який оновлює списки блокування.

Settings — дозволяє переглянути інформацію про систему, налаштувати, чий DNS-сервер Pi-hole використовуватиме у першу та другу чергу, налаштувати DHCP, UI тему Pi-hole, налаштувати API, параметри приватності, імпортувати або експортувати налаштування.

Donate — перенаправляє на сторінку пожертвувань для проєкту Pi-hole.

Списки блокувань (чорні списки)

Списки блокувань реклами бувають різного ступеня агресивності. Вони можуть як пропускати частину реклами, так і блокувати занадто багато доменів, через що деякі сайти або їхні функції перестають працювати коректно.

Якщо немає бажання постійно з’ясовувати, чому щось не працює, варто обирати збалансовані, менш агресивні списки — вони блокують менше, зате рідше спричиняють збої.

Додавання домену до списку блокування вручну

Щоб вручну додати сайт до блокування в Pi-hole, перейдіть у меню Domains. У полі Domain вставте назву сайту, який хочете заблокувати. Якщо ви поставите галочку Add domain as wildcard, Pi-hole заблокує не лише вказаний домен, а й усі його піддомени. Наприклад, якщо вказати facebook.net і увімкнути цю опцію, будуть автоматично заблоковані також:

Це дуже зручно, якщо ви хочете заблокувати весь сервіс одразу, а не додавати кожну адресу окремо.

Додавання списку блокувань

Щоб додати цілий список блокувань, перейдіть в пункт меню Lists та додайте URL в поле Address. Список блокувань — це посилання на txt-файл.

Реклама та трекінг

Steven Black hosts

https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts">https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts — це міжнародний універсальний і добре підтримуваний список, який об’єднує кілька авторитетних hosts-файлів (AdAway, MVPS, yoyo.org) і включає категорії блокування реклами (adware) та шкідливого ПЗ (malware). За замовчуванням у Pi-hole використовується його версія Unified hosts, що забезпечує надійний захист від реклами та шкідливих доменів. Базова версія не охоплює порнографію, азартні ігри, соцмережі чи фейкові новини — для цього є інші списки.

Список ефективно фільтрує банери, відеорекламу, редиректи та спливаючі вікна. Також блокує трекери від Google, Facebook, Amazon, Twitter та інших великих рекламних платформ. Хоча він частково включає фішингові та небезпечні сайти, основною метою є блокування реклами.

DNS-Blocklist (Hagezi)

https://raw.githubusercontent.com/hagezi/dns-blocklists/main/adblock/multi.txt — це набір списків все в одному. Можна використовувати для захисту від реклами, трекерів, шкідливих сайтів і загроз конфіденційності. Списки були розроблені, щоб максимально уникнути помилково позитивних доменів без втрати ефективності та результативності. Списки регулярно оновлюється. Проєкт має мультисписки блокувань, розподілені за розміром та агресивністю блокувань.

Ukrainian Filters

абзац додано 06.08.2025 https://raw.githubusercontent.com/ukrainianfilters/lists/main/combined/combined.txt — об’єднаний список фільтрів (Реклама + Приватність + Дратівливі елементи + Безпека), призначений для видалення реклами та дратівливих елементів з українських сайтів, блокування трекерів, шкідливих скриптів й небезпечних веб-ресурсів (фішинг, онлайн-шахрайство, дропшопінг, шкідливе програмне забезпечення тощо). Хоча список призначений для браузерних блокувальників він частково підтримується Pi-Hole (AdBlock Style). Цей список допоміг мені повністю позбавитись від реклами казино.

Безпека

Ukrainian Security Filter

https://raw.githubusercontent.com/braveinnovators/ukrainian-security-filter/main/lists/hosts.txt">https://raw.githubusercontent.com/braveinnovators/ukrainian-security-filter/main/lists/hosts.txt — це набір фільтрів, створений для блокування реклами, трекерів, фішингових та шкідливих сайтів із фокусом на український сегмент інтернету. Проєкт підтримується спільнотою Brave Innovators і регулярно оновлюється. Особливістю цього фільтра є те, що він орієнтований не лише на загрозу в глобальному інтернеті, а й на специфічні українські ресурси, які поширюють нав’язливу рекламу, стежать за користувачами або намагаються шахрайським шляхом виманити гроші. У списку багато доменів, які маскуються під державні або банківські сервіси, використовують схожі назви та дизайни, щоб ввести користувача в оману.

Phishing Army

https://phishing.army/download/phishing_army_blocklist.txt" — це точний і регулярно оновлюваний фільтр фішингових сайтів, створений на основі перевірених міжнародних джерел (PhishTank, OpenPhish, Cert.pl). Він блокує лише підтверджені шкідливі домени, тому має низький рівень хибних спрацювань і добре підходить як доповнення до локальних фільтрів безпеки.

Якщо хочете спробувати інші фільтри, можна переглянути сайт firebog.net — там зібрано велику колекцію списків для Pi-hole та подібних систем.

Мета сайту — допомогти користувачам легко знайти якісні, актуальні та безпечні списки блокувань реклами, трекерів, фішингу та іншого небажаного контенту. Автор (WaLLy3K) прагне водночас поважати роботу оригінальних авторів списків і робити їх доступними та зручними для користувачів.

Адже оригінальних джерел блокувальних списків дуже мало, а консолідовані колекції можуть призводити до припинення оновлень в авторських списках і зосередження контролю в руках однієї людини.

Списки, позначені галочкою (✓), вважаються безпечними та найменше заважають роботі сайтів — їх можна сміливо додавати навіть початківцям. Списки, що позначені синіми посиланнями без додаткових символів, не мають чіткої оцінки. Списки з перекресленими назвами та хрестиком (✗) не рекомендуються до використання — зазвичай вони містять багато хибних спрацювань, є застарілими або сформовані з необ’єктивних чи сумнівних джерел.

Списки дозволів (білі списки)

Списки дозволів або ж «білі списки» дозволяють працювати доменам, які обов’язково повинні працювати. Білий список має вищий пріоритет. Якщо домен знаходиться в чорному та білому списку, він буде доступний. Додати домен до білого списку вручну можна аналогічно як з чорними списками, лише кнопка інша (Add to allowed domains).

Також можна користуватись готовими білими списками. Вони часто містять популярні або критично важливі домени — наприклад, форма авторизації Google, Google Play, сервіси оновлення Windows, CDN тощо.

Collection of commonly white listed domains for Pi-Hole — це добірка популярних «безпечних» сайтів, які зазвичай додають до білого списку. Її сформовано на основі матеріалів із сабреддиту, форуму та GitHub-проєкту Pi-Hole, а також інших джерел.

whitelist.txt — це основний список, який містить домени, що зазвичай не пов’язані з рекламою чи трекінгом. Додавання цього списку може вирішити проблеми з відображенням відео на новинних сайтах або збереженням історії переглядів на YouTube.

referral-sites.txt включає домени, необхідні для коректної роботи сервісів, які використовують реферальні посилання, таких як Slickdeals або Fatwallet. Цей список може містити деякі рекламні чи аналітичні домени, тому його слід використовувати з обережністю.

optional-list.txt — це додатковий список, який містить домени, необхідні для роботи певних сервісів, таких як Facebook Messenger або Netflix. Цей список може включати трекери, але іноді їх необхідно дозволити для забезпечення повної функціональності сервісів. Додавати домени з цього списку варто вручну, залежно від ваших потреб.

Щоб додати білий список в Pi-hole, перейдіть до пункту Lists, вставте адресу білого списку в поле Address та натисніть кнопку add allowlist.

Налаштування DNS

Найзручніший спосіб використання Pi-hole для усіх пристроїв у вашій мережі — це налаштування адреси Pi-hole у якості DNS-сервера на роутері. У такому випадку немає потреби налаштовувати DNS Pi-hole на кожному окремому пристрої. Якщо ж доступу до вебінтерфейсу роутера немає, дивіться інструкції нижче для налаштування DNS на різних пристроях.

Для налаштування на роутері TP-Link перейдіть в розширені налаштування.

Пункт меню «Додатково» >> пункт бічного меню «Мережа» >> DHCP-сервер >> у розділі DHCP-сервер змініть адресу в полі «Первинний DNS» на адресу Pi-hole.

Також за бажанням можна додати другий DNS-сервер, якщо з якоїсь причини Pi-hole буде недоступний. Я додав DNS Cloudflare (1.1.1.1), ви можете додати будь-який зручний для вас (DNS-сервер вашого провайдера, Google (8.8.8.8) тощо.

Налаштування DNS у Windows

Перейдіть в налаштування Windows >> Мережа й Інтернет >> Wi-Fi >> Змінити налаштування адаптера >> двічі клацнути на адаптер вашої мережі >> Властивості >> IP версії 4 (TCP/IPv4) >> Використовувати такі адреси DNS-серверів. Після вказання адреси DNS натиснути Оk, щоб зберегти.

Налаштування DNS Linux (Linux Mint 21.3)

Щоб додати власний DNS в Linux Mint, перейдіть у меню програм >> Параметри >> Мережа >> натисніть піктограму шестерні поруч з необхідним з’єднанням >> перейдіть до вкладки IPv4 >> у полі DNS вимкніть перемикач автоматично >> додайте IP-адресу Pi-Hole та натисніть «застосувати». В Ubuntu налаштування DNS працює аналогічно.

Налаштування DNS у macOS (15.5)

Щоб додати власний DNS у macOS, перейдіть в налаштування >> Wi-Fi >> поруч з потрібною мережею натисніть «докладніше» >> перейдіть до пункту DNS >> натисніть + та додайте ip адресу Pi-Hole.

Налаштування DNS IOS (18.5)

Щоб налаштувати DNS в IOS, перейдіть в Налаштування >> Wi-Fi >> натисніть на піктограму з буквою «i» >> оберіть пункт «конфігурувати DNS» >> оберіть тип вручну та введіть IP адресу Pi-Hole.

Налаштування DNS Android (13)

Перейдіть в Налаштування телефону >> Підключення >> Додаткові налаштування підключення >> Приватний DNS-сервер та вкажіть IP адресу Pi-Hole.

DNS через HTTPS (DoH) та DNSCrypt в Pi-hole

DNS-over-HTTPS (DoH) — це протокол, що передає DNS-запити через HTTPS, той самий протокол, який використовується для захищеного перегляду вебсайтів. Звичайні DNS-запити не шифруються, тому їх можуть переглядати або підроблювати інтернет-провайдери, адміністратори мереж чи зловмисники. Це дозволяє перенаправляти користувача, наприклад, на фальшиві сайти. DoH шифрує запити, роблячи їх невидимими для сторонніх, і захищає від підміни. Однак сам DNS-провайдер усе ще бачить, які запити ви надсилаєте.

DNSCrypt у Pi-hole виконує подібну функцію — він шифрує DNS-запити, захищаючи їх від стеження та змін. Це корисно для підвищення конфіденційності в локальній мережі, де навіть адміністратори або провайдери не зможуть побачити чи змінити DNS-запити. DNSCrypt створює захищений канал між пристроєм і DNS-сервером, зменшуючи ризик перенаправлення на шкідливі сайти.

Проте важливо розуміти, що ані DoH, ані DNSCrypt не реалізуються в Pi-hole «з коробки». Pi-hole працює як звичайний DNS-сервер: він отримує стандартні DNS-запити з локальної мережі (UDP/53 та TCP/53), фільтрує їх за заданими списками (наприклад, блокує рекламу чи шкідливі домени), а потім пересилає ці запити далі — до зовнішнього DNS-сервера. Він не вміє самостійно надсилати DNS-запити через HTTPS чи інші захищені протоколи.

Щоб забезпечити шифрування, потрібен окремий локальний компонент, який працює як DNS-проксі — тобто приймає звичайні DNS-запити від Pi-hole та перетворює їх на зашифровані (DoH або DNS-over-TLS). Наприклад, для цього можна встановити:

  • cloudflared — клієнт від Cloudflare для DNS-over-HTTPS;
  • dnscrypt-proxy — потужний проксі з підтримкою DNSCrypt, DoH і DoT.

Ці програми запускаються на тому ж пристрої, що й Pi-hole (або в Docker-контейнері), слухають локальний порт, і саме на цей порт Pi-hole пересилає DNS-запити. Далі проксі-клієнт надсилає їх до DNS-серверів, які підтримують DoH.

Такі DNS-провайдери, як Google, Cloudflare або Quad9, мають спеціальні адреси (URL) для DoH, наприклад:

Ці сервери підтримують стандарт DNS-over-HTTPS (RFC 8484) і приймають DNS-запити у вигляді звичайного HTTPS-трафіку. З’єднання між вашим локальним проксі (наприклад, cloudflared) і цими серверами — повністю зашифроване.

Таким чином, Pi-hole залишається «фільтром» DNS-запитів, а функцію шифрування виконує окрема програма. В офіційній документації Pi-hole навіть описано покрокове налаштування cloudflared для цього. Завдяки такому підходу можна об’єднати переваги блокування реклами, прозорості фільтрації та конфіденційності DNS-запитів — не жертвуючи стабільністю чи контролем.

Налаштування DNSCrypt з Pi-hole

Для підтримки DNSCrypt або DoH у Pi-hole необхідно налаштувати dnscrypt-proxy.

1. Встановлення DNSCrypt

Є кілька варіантів встановлення оберіть той, який вам зручний. Або той як був встановлений Pi-Hole до того.

1.1 Встановлення як пакет в Linux

# Оновлення списку пакетів
sudo apt update 
# Встановлення dnscrypt-proxy
sudo apt install dnscrypt-proxy -y

1.2 Docker Compose

version: "3.5"
services:
  dnscrypt-proxy:
    image: ghcr.io/dnscrypt/dnscrypt-proxy:latest
    container_name: dnscrypt-proxy
    # DNSCrypt-proxy має слухати на приватному (внутрішньому) порту,
    # доступному для Pi-hole. У цьому випадку - 5054.
    ports:
      - "127.0.0.1:5054:5054/udp"
    # Щоб Pi-hole і DNSCrypt-proxy "бачили" один одного,
    # краще помістити їх в одну мережу (наприклад, default-network)
    networks:
      - default-network
    restart: unless-stopped

networks:
  default-network:
    external: true # Або створіть тут свою мережу, якщо вона не існує

1.3 Також можна встановити як пакет на роутері OpenWRT, або як Доповнення Home Assistant .

2. Налаштування dnscrypt-proxy.toml

 dnscrypt-proxy.toml  — це основний конфігураційний файл, де вказується адреса та порт Pi-Hole (listen_addresses) і обираються довірені шифровані DNS-провайдери (server_names) (наприклад, ’cloudflare’, ’quad9′), яким ви довіряєте і куди проксі буде надсилати ваші запити для шифрування.

2.1 Відкрийте .toml файл за допомогою текстового редактора

sudo nano /etc/dnscrypt-proxy/dnscrypt-proxy.toml

2.2 Відредагуйте .toml файл

dnscrypt-proxy.toml
# Адреса та порт Pi-Hole, який слухає dnscrypt:
listen_addresses = ['127.0.0.1:5054']

# Критерії безпеки: Вимагати у вказаних DNS серверів DNSSEC, відсутність логів та фільтрації.
require_dnssec = true
require_nolog = true
require_nofilter = true

# Вибір DNS серверів, куди надсилаються запити від Pi-Hole для їх шифрування:
server_names = ['cloudflare', 'quad9-dnscrypt-ip4-filter-pri', 'mullvad-doh']

# Початкове підключення:
# Використовуємо ці незашифровані DNS сервери тільки один раз, 
# щоб знайти IP-адреси та ключі наших зашифрованих серверів. 
# Після старту вони більше не використовуються.
bootstrap_resolvers = ['9.9.9.11:53', '1.1.1.1:53']

—  listen_addresses  — у цьому випадку listen_addresses вказує локальну loopback-адресу — тобто і Pi-hole, і DNSCrypt-proxy працюють на одному пристрої.
Якщо ж Pi-hole встановлений на іншому комп’ютері, потрібно вказати IP-адресу цього пристрою в локальній мережі, наприклад 192.168.0.123.

—  require  — тут наведено основні вимоги (require_dnssec, require_nolog, require_nofilter). Проте dnscrypt-proxy підтримує ширший набір параметрів для детальнішого налаштування — наприклад, використання IPv6, обмеження кількості клієнтів, кешування чи примусове використання TCP. Детальніше тут

—  server_names  вказує, які DNS-сервери використовуються для шифрування запитів від Pi-hole. dnscrypt-proxy обирає один або кілька серверів зі списку (якщо ввімкнено балансування) і надсилає запити до них у зашифрованому вигляді. Для Pi-hole це виглядає як звичайний локальний DNS-сервер на вашому комп’ютері, а зовнішні DNS-сервери не бачать вашої реальної IP-адреси. Існує безліч публічних DNS-серверів, кожен із яких пропонує свої умови щодо приватності, шифрування та фільтрації; повний перелік можна знайти на сайті DNSCrypt .

—  bootstrap_resolvers  використовується для початкового підключення. Він задає відкриті (незашифровані) DNS-сервери, які застосовуються лише один раз, щоб отримати IP-адреси та публічні ключі резолверів, зазначених у  server_names . Після цього всі наступні запити вже проходять у зашифрованому вигляді.

—  static stamps  — спеціальні рядки, які містять IP-адресу, порт та публічний ключ DNS сервера. Використання static stamps дозволяє уникнути першого незашифрованого підключення, бо dnscrypt-proxy одразу знає, куди надсилати запити. Кожен штамп містить протокол (DNSCrypt або DoH), порт та ключ шифрування. Для створення або перевірки штампів можна скористатися онлайн-калькулятором. Ось приклад static stamps у dnscrypt-proxy.toml:

[static.'cloudflare']
stamp = 'sdns://AgcAAAAAAAAADjE3Mi4xNi44LjEwOjQ0Mw'

[static.'quad9']
stamp = 'sdns://AgcAAAAAAAAADjE5Mi4xNi44LjEwOjQ0Mw'

[static.'mullvad']
stamp = 'sdns://AgcAAAAAAAAADjE3Mi4xNi44LjEwOjQ0Mw'

3. Підключення Pi-hole до DNSCrypt

3.1 Перейдіть в інтерфейс Pi-Hole >> Settings >> DNS та зніміть усі прапорці з існуючих Upstream DNS серверів.
3.2 Розгорніть пункт Custom DNS servers (0 custom servers enabled) натиснувши на +
3.3 Вкажіть адресу та порт DNSCrypt, наприклад 127.0.0.1#5335. Збережіть налаштування.

Щоб перевірити, чи все працює правильно, відкрийте сторінку 1.1.1.1/help. Якщо з’явиться напис «Using DNS over HTTPS (DoH): yes», — усе налаштовано як слід.

Поширені питання

Чи може Pi-Hole блокувати рекламу в Youtube?

Це одне з найпоширеніших питань: чому Pi-hole не блокує рекламу на YouTube? Причина проста — реклама й самі відео надходять із тих самих доменів, зокрема youtube.com та googlevideo.com. З точки зору Pi-hole, який працює лише на рівні DNS, це один і той самий трафік. Він не вміє розрізняти, що є рекламою, а що — основним контентом.

У Pi-hole є лише два варіанти дій: повністю заблокувати домен або дозволити його. Вибіркового блокування на кшталт «тільки реклама, але не відео», він забезпечити не може. У деяких випадках можна приховати банери або елементи інтерфейсу, але це радше виняток, ніж правило. Це не помилка і не обхідна ситуація — це нормальна поведінка, підтверджена самими розробниками в офіційних обговореннях 1, 2, 3, 4 і документації.

Проте існують окремі списки блокувань, нібито спеціально для YouTube. Вони створюють плутанину, оскільки намагаються блокувати динамічні субдомени, пов’язані з доставкою реклами. Насправді ж такі списки часто або не дають результату, або призводять до помилок у відтворенні відео. Розробники Pi-hole не рекомендують використовувати їх як стабільне рішення.

Як визначити, з якого домену походить реклама?

Перегляд запитів Pi-Hole у реальному часі. Для перегляду запитів Pi-Hole у реальному часі можна перейти до бічного меню Pi-Hole >> Tools >> Tail log files >> pihole.log. У цьому вікні представлені усі запити від усіх підключених пристроїв. Сторінки логу доволі швидко гортаються, тому для зручності можна скористатись паузою, натиснувши на зелену кнопку Live.

Розширення adam:ONE (колишній DNSThingy). Це розширення для Chrome показує всі домени, до яких надсилаються запити під час завантаження вебсторінки. Переглянувши цей список, часто можна вибірково визначити домени, що, ймовірно, відповідають за показ реклами.

Вебінспектор. Усі сучасні браузери (Chrome, Safari, Firefox та інші) мають інструмент під назвою вебінспектор. Незалежно від того, який браузер ви використовуєте, усі вони виглядають подібно. Вебінспектор дозволяє аналізувати елементи сайту. В тому числі переглядати, на якому домені розміщена реклама.

Для прикладу покажу, як це працює в Google Chrome. Для цього перейдіть в меню (три вертикальні крапки зверху справа) >> Інші інструменти >> Інструменти розробника.

Перейдіть на вкладку «Елементи» та у верхній частині натисніть на вказівник.

Після того можна навести вказівник на будь-яке рекламне оголошення та побачити адресу, яку можна заблокувати.

Скільки потрібно часу, щоб запрацював список блокування?

Зазвичай оновлення білих та чорних списків відбувається миттєво. Проте у мене чорні списки оновлюються довше і це займає певний час. Така поведінка може створити враження, що список не працює або додавання не спрацювало.

Щоби примусити Pi-hole оновити свою базу блокувань, можна вручну запустити оновлення через розділ Tools >> Update Gravity у вебінтерфейсі. Це оновлює всі списки та застосовує зміни.

Якщо ж проблема не в самих списках, а в роботі DNS — наприклад, після зміни серверів або локальних доменів — тоді допоможе команда pihole restartdns, яка перезапускає DNS-сервер Pi-hole. Її аналогом у графічному інтерфейсі є будь-яка зміна в розділі Settings >> DNS, яка після збереження автоматично викликає перезапуск DNS без потреби в ручному втручанні. Я, наприклад, змінюю галочку в Upstream DNS Servers, зберігаю, а потім повертаю, як було до того і знову зберігаю.

Як полагодити сайт, який не працює через Pi-Hole?

Найбільше, що дратує у використанні Pi-Hole, це блокування конкретних елементів на конкретних сайтах, оскільки ці елементи мають інший домен. Щоб визначити, чи причетний до цього Pi-Hole, можна вимкнути Pi на 5 хвилин (для цього в меню є окрема кнопка Disable Blocking).

Та подивитись, чи нормально працює сайт без Pi-Hole. Для чистоти експерименту рекомендую очищати кеш або використовувати альтернативний браузер. Якщо без Pi-Hole сайт працює нормально, тоді проблема в блокувані Pi-Hole. Перед тим як щось робити, спробуйте пошукати в інтернеті Pi-Hole + назва програми. Можливо, хтось мав таку проблему та вже знайшов рішення. Якщо рішення немає, можна переглянути лог розширення Adam One та логи Pi-Hole Query Log та Tools >> Tail log files >> pihole.log

Наведу власний приклад — сайт Family Search, де я досліджую родовід. У мене не працювала кнопка завантаження окремого зображення. Виявилось, що ця кнопка не працювала через блокування трекера з домену auth.split.io. Я це зміг побачити в pihole.log та Query Log. Після додавання його в білий список кнопка повернулась. Якщо у вас щось не працює з Pi-Hole, напишіть в коментарях, спробую вам допомогти.

Чим відрізняється Adblock / Ublock та Pi-Hole?

Браузерні розширення (як-от uBlock Origin чи Adblock Plus) блокують рекламу вже після завантаження сторінки, приховуючи окремі елементи. Вони працюють лише в браузері на конкретному пристрої. Натомість Pi-hole блокує рекламні домени ще на рівні DNS — тобто реклама навіть не завантажується. Списки блокувань для браузерних розширень несумісні зі списками для Pi-hole, оскільки працюють за різними принципами. Попри це, ці інструменти добре доповнюють одне одного.

Як створити свій список Pi-hole?

На даний момент існує лише один український список блокування для Pi-Hole. Дуже важливо обирати надійні списки, яким ви довіряєте. Якщо таких списків немає, можна створити самостійно. Для цього треба спочатку знайти ідею: що саме робитиме ваш список. Блокуватиме рекламу, сайти фейкових новин, шкідливі ресурси чи, навпаки, дозволятиме доступ лише до певних ресурсів.

Чорний або білий список Pi-hole це .txt-файл в одному з трьох підтримуваних форматів, зазвичай розміщений десь онлайн. Я рекомендую використовувати доменний формат запису, оскільки він найпростіший для розуміння та найкоротший. Це просто список сайтів у текстовому файлі. Розмістити свій список можна у будь-якому зручному місці. Локально або онлайн на Github, GitLab, Codeberg Gitea тощо. До прикладу я створив репозиторій сайтів, що прикидаються українськими медіа. raw.githubusercontent.com/...​cklist/main/blocklist.txt

На яких сайтах перевірити блокування української реклами?

На початку роботи з Pi-hole у мене виникло питання, як перевірити ефективність блокування? На яких сайтах можна перевірити рекламу? Для українських можна подивитись список найбільш відвідуваних сайтів України.

Також для вашої простоти можете відвідати сайти:

Для міжнародних можна скористатись сайтами-тестерами:

Або сайти з рекламою:

Поширені помилки

Відсутність трафіку від клієнтів

Для мене це найпоширеніша проблема. Візуально вона виглядає так: періодичні стовпчики лише PTR (poiner record) трафіку. Зазвичай це відбувається, коли адреса pi-hole вказана як адреса DNS, а сам Pi-hole з якоїсь причини змінив IP-адресу. Якщо для Pi-hole у вас не зарезервована адреса, зробіть це. Це дозволить уникнути таких ситуацій в майбутньому.

Якщо у вас виникнуть помилки, питання, або проблеми, пов’язані з Pi-holen, ви можете поставити це питання на форумі розумного будинку.

Альтернативи Pi-hole

Pi-hole — це популярне рішення для блокування реклами та трекерів на рівні DNS, проте існують інші варіанти, які можуть краще відповідати окремим сценаріям використання або технічним вимогам. Деякі з них пропонують більше можливостей налаштування, інші — працюють без потреби в локальному сервері.

Technitium DNS Server — це одна з найзручніших альтернатив для самостійного розгортання. Він має сучасний вебінтерфейс, підтримує захищені протоколи DoH та DoT, дозволяє створювати власні DNS-зони, локальні записи, а також налаштовувати чорні та білі списки. Цей сервер добре підходить для домашніх мереж і невеликих офісів, де потрібна більша гнучкість, ніж у Pi-hole.

Blocky — легкий DNS-проксі, орієнтований на продуктивність і прозорість. Він не має графічного інтерфейсу, зате конфігурується через простий YAML-файл і легко інтегрується з системами моніторингу, як-от Grafana. Blocky підійде тим, хто не боїться роботи з терміналом і хоче мінімалістичне, але ефективне рішення.

NextDNS — хмарний сервіс, який пропонує подібний до Pi-hole функціонал без потреби запускати власний сервер. Він дозволяє створювати профілі, блокувати рекламу, переглядати детальну статистику запитів і використовувати захищені DNS-протоколи. Його часто обирають для мобільних пристроїв або в ситуаціях, коли немає можливості підтримувати локальний сервер. Водночас це рішення потребує довіри до стороннього провайдера.

pfBlocker-NG — це розширення для фаєрволу pfSense, яке дозволяє блокувати як домени, так і IP-адреси. Воно більше орієнтоване на досвідчених користувачів і адміністраторів, адже потребує окремого шлюзу або роутера на базі pfSense. pfBlocker-NG особливо ефективне в складних мережах, де важлива глибока інтеграція з фаєрволом.

CoreDNS та PowerDNS — це потужні DNS-сервери, які зазвичай використовуються у великих інфраструктурах, хмарних середовищах або для хостингу. Вони підтримують модулі, API, бази даних та масштабування, але для домашнього використання є надто складними та ресурсомісткими.

Висновок

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

Натомість спочатку спробуйте м’якші правила і поступово додавайте нові. За моїм власним досвідом блокування 10-20% трафіку дозволяє прибрати майже усю рекламу.

Сподобалась стаття? Підписуйтесь на автора, щоб отримувати сповіщення про нові публікації на пошту.

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті

👍ПодобаєтьсяСподобалось30
До обраногоВ обраному29
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

ДНС запити працюють трохи не так... Запит посилається на всі прописані ДНС і система використовує той ДНС від якого найшидше прийшла відповідь. Отже, якщо мережа завантажена або слабкий ПК (де стоїть піхоле) відповідь від ДНС можи швидше прийти від запасного — тут випливає реклама. Рекомендовано прописати ДНС тільки піхоле, або як запасний можна налаштувати безкоштовний план від nextdns. Також слід зауважити, що багато сучасних інтернет центрів (роутери) мають вбудований інтернет захист (той самий піхоле але без шифрування) — у мене стоїть keenetic. Цілком задоволений його роботою та гнучкими налаштуваннями...

Запит посилається на всі прописані ДНС

Зазвичай resolve відпрацьовується через libc, і зазвичай послідовно (нп glibc чи bsd libc). З паралельним відпрацюванням згадується тільки не дуже розповсюджений libc варіант з musl в linux. Якщо продовжити що ще є в linux з паралельним відпрацюванням — то певно опція systemd-resolve (тобто якщо в системному прописано тільки localhost сервер з systemd, той вже по свому відпрацьовує).

Дякую за статтю, дуже корисно!
Поставив собі на старий нетбук на Intel Atom (Z3735F) з MX Linux XFCE.

На ноутбуці вже наполовину не працювала клавіатура і система вже тяжкувато працювала.
І ось у мого нетбука вже нове життя: блокувальник реклами + dnscrypt-proxy.
Старый Intel Atom с выключенным экраном оказался очень энергоэффективен — около 6Вт/час (месяц: ≈4 кВт·ч, очень дешево). Виходить, що за енергоефективністю близький до RaspberryPi. Але raspberry-pi потрібно купувати, а старий ноутбук на мобільному чіпі вже є).

Можливо, в майбутньому поставлю nginx і буду деплоїти свої пет-проекти на ньому, чому б і ні.

Дякую що поділились досвідом. Круто що старе залізо працює, а не припадає пилом. Розкажіть детальніше про dnscrypt-proxy. Важко встановити та налаштувати?

Чесно кажучи, у DevOps-штуках я слабкий і користувався ChatGPT, але головне — воно працює :)

Робив приблизно так для налаштування DNSCrypt-proxy (проксі-сервер, який шифрує твої DNS-запити, щоб їх ніхто не міг перехопити або підмінити.):

1. Установка DNSCrypt-proxy

zsh
sudo apt update
sudo apt install dnscrypt-proxy -y

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

zsh
sudo nano /etc/dnscrypt-proxy/dnscrypt-proxy.toml
dnscrypt-proxy.toml
# Порт, на якому слухає:
listen_addresses = ['127.0.0.1:5054']

# Вибір резолверів (краще фільтрованих за критеріями):
require_dnssec = true
require_nolog = true
require_nofilter = true

# Можна явно вказати сервери:
server_names = ['cloudflare', 'quad9-dnscrypt-ip4-filter-pri', 'mullvad-doh']

# DNS RESOLVERS: Cloudflare (1.1.1.1:53) and Quad9 (9.9.9.11)
bootstrap_resolvers = ['9.9.9.11:53', '1.1.1.1:53']

3. Запуск та автозавантаження

zsh
sudo systemctl disable --now dnscrypt-proxy.socket
sudo systemctl enable dnscrypt-proxy
sudo systemctl restart dnscrypt-proxy
systemctl status dnscrypt-proxy

(важливо вимкнути `dnscrypt-proxy.socket`, щоб він не займав порт 53, який потрібен Pi-hole)

4. Налаштування Pi-hole

У веб-інтерфейсі Pi-hole:
Settings → DNS → Upstream DNS Servers → Custom 2 (IPv4)

Вкажи:

127.0.0.1#5054

Потім відредагуй файл:

zsh
sudo nano /etc/pihole/setupVars.conf

і зміни рядок:

PIHOLE_DNS_1=127.0.0.1#5054

Збережи файл і перезапусти Pi-hole:

zsh
pihole restartdns # або pihole reloaddns # або sudo systemctl restart pihole-FTL 

5. Перевірка

zsh
dig @127.0.0.1 example.com

У відповіді має бути флаг `ad` (DNSSEC підтвердження). Це означає, що зашифровані DNS-запити працюють правильно.

Також можна перевірити на сайті:
1.1.1.1/help

✅ Схема роботи тепер така:
пристрої → Pi-hole → DNSCrypt-proxy → шифровані резолвери (DoH/DNSCrypt/DoT)

Можеш @bogdan-sverdlyuk перевірити, ти все-таки більш у цьому досвідчений, і додати у свою статтю, якщо захочеш.

P. S.: Ще додатково я робив «Address Reservation» в налаштуваннях роутеру для того, щоб у нетбуку був статичний IP. Щоб після перезавантаження нетбуку — не змінився IP ноутбуку і можна було піключатись по SSH до того самого адресу

res.cloudinary.com/...​/cnfu2cb2ie5z7zw1wtqt.png

Спробував налаштувати по своїй же інструкції на іншому ноутбуці з Debian — все запрацювало.
Єдиний нюанс, воно копі-пастить в

dnscrypt-proxy.toml

з dou.ua трошки невірно і лапки вставляє іншого формату, тому краще усі команди в ручну переписувати, щоб потім не дебажити.

Ще важливо щоб у вас було:

bash
sudo cat /etc/pihole/setupVars.conf
PIHOLE_DNS_1=127.0.0.1#5054

Якщо це не так, то через редактор nano додайте строку PIHOLE_DNS_1=127.0.0.1#5054:

bash
sudo nano /etc/pihole/setupVars.conf

Ось додаткова перевірка, що DNSCrypt-proxy працює:

dig @127.0.0.1 -p 5054 dnssec-failed.org

Повинно повернути status: SERVFAIL (ключ ad тут не обов’язковий)

І ось ця перевірка:

dig @127.0.0.1 -p 5054 sigok.verteiltesysteme.net

Повинно повернути status: `NOERROR` і flags повинен мати `ad`

Дякую за ваш досвід. Ви не хочете написати окремий топік, або статтю від свого імені? Це чудово доповнить цю статтю.

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

Так, воно не правильно вставляє лапки з сайту dou. Можливо проблема в мені і я не вірно їх якось вставляв на сайт доу а потім не правильно копіював. Але важливо те, що для dnscrypt-proxy.toml — це невірно

listen_addresses = [’127.0.0.1:5054′]

вірно

listen_addresses = [’127.0.0.1:5054′]

ці лапки виглядають схоже.

Написати окрему статтю — я вважаю, що саме статтю треба, щоб написала людина, яка професійно займається DevOps. Я всього лиш поділився досвідом того як я вирішував проблему «під ручку» із ШІ :) Треба щоб мій досвіт перевірила професійна в цьому людина та звірила кожну команду, і, можливо, професійно описала чому так а не йнакше) Можливо така людина саме Ви, Богдан, або хтось інший.

Реально є проблема в коментах із лапками — я спробував відобразити різні лапки, а воно видало однакові —  та '

Можливо, треба мені інший тег було використати (не <blockquote>)

listen_addresses = [’127.0.0.1:5054′]
listen_addresses = ['127.0.0.1:5054']

так, емпіричним шляхом зʼясував, що треба тег не blockquote використовувати було мені, а саме code

Я замінив у блоках коду ``` на теги pre, і тоді лапки показуються правильніше (до тексту не застосовується типограф, який міняє лапки, тире тощо).

Це якісь неправильні поради

(важливо вимкнути `dnscrypt-proxy.socket`, щоб він не займав порт 53, який потрібен Pi-hole)
# /etc/systemd/system/dnscrypt-proxy.socket
[Unit]
Description=dnscrypt-proxy socket

[Socket]
ListenStream=
ListenDatagram=
ListenStream=127.0.2.1:55353
ListenDatagram=127.0.2.1:55353

[Install]
WantedBy=sockets.target

Додав, дуже тобі дякую. Переписав розділ Налаштування DNSCrypt з Pi-hole

Скажите хлопцы, а ютубовскую рекламу на телевизоре оно тоже будет блокировать. Как заблокировать ютуб рекламу на Андроид телевизоре, кто то может подсказать?

Купить ютуб премиум

додам ще один лайфхак, робити енергонезалежну точку вдома, у якої є VPN (наприклад, wireguard) сервер, ця інфраструктура має у собі pihole та інші безпекові заходи, та тепер користуєтесь домашньою інфраструктурою з будь якої точки планети, маючи фільтрований dns тощо.

Гарна ідея. Це дуже важко зробити? Поділіться, будь ласка, міні інструкцією як це зробити.

Єдине, що потрібно — IP, доступний з мережі (бажана статичний, але можна й динамічний). Ставиш на роутер або sbc (rpi/orange/etc) wireguard, відкриваєш порт, додаєш клієнтів і вуаля.

скажите на сколько он платный начал делать так он деньги начал просить?

Дитина грає в мобільні ігри. І бувають випадки, щоб відкрився якийсь ігровий контент — треба продивитись рекламу. А вона не вантажиться.

Можна вимкнути pi-hole на 5 хв. Подивитись який домен відповідає за ігрову рекламу в логах pi-hole і додати цей домен до білого списку

Вважаю важливим згадати про зручне альтернативне блокування реклами, без покупки залізяк. На пк юзаю ublock lite + sponsorblock(блокує на ютубі спонсорські вставки) — ця зв’язка блокує 90% реклами.

А от на телефоні юзаю nextdns — гугліть їх сайт. Як створите акк, отримаєте персональний ДНС і інструкцію з налаштування. Це зазвичай кілька кроків в налаштуваннях телефону. І все, реклами не буде ніде, дуже зручно і безкоштовно. Можна і в налаштуваннях роутера прописувати, але тоді безкоштовного ліміту в місяць вам не вистачить, скоріше за все. З мінусів відмічу те, що рекламні видачі гугла(перші 1-2 сайти) не будуть відкриватися, а також не буде працювати реклама у іграх(якщо ви за неї хочете отримувати плюшки).

Ну і не юзайте днс та інші продукти Адгуард, автор вірно каже.

Хлопцы скажите кто разбирается, а можно этот пихоли подружить с микротиком или поженить?www.youtube.com/...​hannel=NetSysProSolutions кто то уже так делал? Интересует именно микротик младших версий

у dhcp конфігурації мікрота вказати адресу піхоля і має працювати.

Дам навоттку подальших покращень. Всі ці рухи зі зміною dns на клієнтах вирішуються централізовано — змініть в вашому домашньому DHCP-сервері адреса DNS-серверів. Першим поставте свій Pi-hole, далі — якісь відомі публічні. 8.8.8.8, 1.1.1.1, etc.
Все. Тепер клієнти, у яких стоїть автоматичне отримання dns, використовуватимуть pi-hole по-замовчуванню.

Так і не зміг його нормально з видачею Google подружити: або половина лінків не працює, бо редиректить через рекламні домени, або через розблокування одного домену, усі Google Ads починають пролазити.

>Враховуючи усі ці дії, я наполегливо рекомендую відмовитись від використання усіх продуктів та списків блокувань Adguard

Дякую, дуже круто, АЛЕ! для піхола потрібна якась залізяка на якуий він працюватиме, для гиків з досвідом не буде проблем, але також потрібно щоб залізяка окрема під це працювала цілодобово, тож для звичайних користувачим легше усього втановити блокувальник у браузері.

І ще питання, чи можна встановити піхол на мікротіке?

Згоден, що використовувати розширення найлегший варіант. Лише не AdGuard. Також Adblock використовує російсько український список easylist, заснований на правилах Adguard. Ublock використовує український фільтр від AdGuard. Тому видаляйте російські фільтри, ставте українські (github.com/ukrainianfilters/lists) і буде добре.

Pi-hole не важко встановити. Можна встановити на Raspberry, Orange Pi, або на будь який інший однопалатний, міні, або звичайний компʼютер. Можна встановити в безкоштовну (free tier) віртуальну машину Oracle, або Render.

Ще один варіант використання сторонніх хмарних DNS сервісів накшталт NextDNS, або Control D

Дякую Вам.
Спробую локально Українські фільтри.
А взагалі нагуглив таке для mikrotik — adlist DNS, потрібна RouterOS V7
itorakul.com.ua/dns-mikrotik

Вау, клас навіть інструкція українською є

Ваш путівник дуже вчасно!

Нещодавно помітив що Fedora при оновленні пакетів спробувала дзеркало yandex ру. Мене в піт кинуло.

Я колись у 2018 відкривав тікет на OpenSUSE, вже навіть юзер протух, а вони так по ходу ніфіга і не зробили
bugzilla.opensuse.org/show_bug.cgi?id=1097284

Це дзеркало операційної системи?

Так, яке постачаєтсья з офіційним дистрибутивом при виборі країни Україна. Не знаю вже як зараз, але саме у 2018 році в мене особисто була ця проблема, яку я, власне, і виклав в багзіллі.

Федора корпоративний зонд, чому саме її вибрали?

Одна з причин, що це було багацьоко років тому. Я тоді ще не знав про існування .bashrc ssh tmux і таке інше. Тобто в мене вибір був між Manjaro, Ubuntu, Fedora. Я тоді ставив їх в наведеному порядку, і працював поки не стикався з проблемою, яку не розумію і не знаю як виправити. Зносив усе, ставив ще раз. На третій раз ставив наступну ОС. На Федорі проблем було тоді менше всього.

Як знаєте що це zонд від червоношляпих?

Як знаєте що це zонд від червоношляпих?

Так, я не хочу навязувати свою точку зору або вдаватись до крайнощив.
Щоб обрати дістр «для себе» потрібно багато їх спробувати)
Так, Федора пропонує корпоративну якість, але федора це безкоштовний тестовий полігон для корпоративних продуктів червоної шляпи і про це забувати не треба.
Я вважаю особисто що лінукс на десктопі все ж поки ще сирий у порівнянні з віндовс, ні, я нехочу сказати нічого поганого, але щоб юзати лінукс як десктопі потрібне терпіння і готовність зтікататись з проблемами які треба бути вирішувати.
Ось цікава думка, і блог взагалі.
unixdigest.com/...​ation-behind-systemd.html

Тепер зрозуміло чому systemd так не люблять.

Systemd як моноліт (який потрохи втягує в себе все більше сервісів) розроблюють явно не під iot девайси в класичному unix way з купою маленьких тулз з різним ступенем перекриття між собою, в тому є свої плюси і мінуси. На слаборесурсних девайсах можна використовувати os з openrc (навіть і з альтернативними libc і не настільки повним функціоналом як в glibc, типу нп з musl як в alpine). У випадку з лінуксом (на відміну від віндовс) є достатньо альтернатив для конструювання комбінацій системного софта під свої задачі. А взагалі — якщо наставити купу докерів та електрон софта — то що там під капотом хост системи буде — то геть зовсім не сама тормознута частина щоб там не було.

Ніколи не розумів за що не люблять systemd. Класна стаття, тепер зрозумів. Red Hat будують один великий зручний бекдор

Приклад де такий підхід, як в systemd, непогано вкладається в загальну архітектуру — gnomeos. Тобто immutable os в якій для системної частини(іміджу) використовуються атомік апдейтс через systemd-updated, плюс системні сервіси з одного фреймворка (на відміну від можливої мозаїки), плюс фс снапшот-бекап системного розділу на всяк випадок (навіть якщо він immutable під час роботи), і де юзер (чи скажемо адмін) не дуже має що поламати руцями щоб щось перестало робити. Стд юзер софт йде нп з flatpak контейнеризацією — що теж значно менше по оверхеду і взагалі легше рішення ніж докер стайл для аппс.

p.s. найлегші альтернативи то напевно на базі busybox рішень, але і відповідно не настільки повний функціонал

Я користуюсь браузером Brave

Накрило теплими спогадами з 2018, коли я почав вкатуватися в ІоТ: зібрав міні-кластер з 3-х рпі 3 + асус тінкербоард в спеціальному багатоповерховому кейсі. На одній пішкі запустив pihole, зразу загнав локальний днс-сервак в налаштування роутера. Правда там ще куча всякого лайна крутилась і pihole лагав неймовірно. Прийшлось все перенести на NAS від Сінолоджі. Згодом виявилось, що популярні сайти не дураками зроблені, і реклама там сервиться з того ж хоста, що і основний контент. Тобто сама суть блокування реклами по днс втратила свою силу. Ще якийсь час хостив адгард, але в результаті перейшов чисто на браузерні рішення, які в цьому плані набагато ефективніші.

Чим воно на практиці краще ніж просто поставити Firefox з ublock origin? Баннери зі сторонніх сайтів ріже, рекламу в ютубі ріже.

Роблячи щось серйозне з одноплатника, недостатньо просто підняти сам сервіс, попрацювати з ротацією логів і іншими пишучими на сд-карту сервісами чи винести на зовнішній SSD щоб не зносилась надто швидко, забезпечити фізичну кнопку для плавного вимкнення, а ще краще, додати повноцінний ДБЖ який при пропаданні живлення буде сам коректно вимикати систему і стартувати при появі живлення, зібрати все це в корпусі, періодично оновлювати систему...

Все це гарно як пет-проект для розуміння чим займаються в embedded linux, але для jet job done напевно буде простіше реалізувати це на mikrotik або одним з багатьох сервісів на домашньому сервері.

Якщо ціль блокування реклами на компютері нічим не краще. Лише дивіться на списки які використовуєте. Нещодавно дефолтний український фільтр UBlock був замінений на російський український фільтр (він російський і не такий якісний)

Значно краще — не тільки один браузер, а єдині правила для всіх програм на всіх пристроях у домашній мережі. У мене показує в статистиці безліч сміття і трекерів заблокованого з різних пристроїв. Але згоден що Pi для такої критично 24/7 штуки це сумнівний вибір, краще просто лінукс-серверочок.

хз з якого боку воно сумнівно. я свою зібрав, налаштував, закинув на шафу — і вже більше року аптайму, все прекрасно. це саме задача для распберрі, який лінукс серверочок)

Я колись теж кілька разів налаштовував і закидував, і все працювало. Певний час, поки не переставало завантажуватись і треба було знову згадувати як це все переконфігувати. Було давно, може зараз флешки кращі, ОС не так швидко їх стирає, тож можливо це моя особиста травма, але більше я з Pi не зв’язувався.

може зараз флешки кращі,

а, тут мабуть буде в тему мем «я не з такої сімʼї»)) в мене малинка з ssd працює, а не з флешки. з флешки воно таке повільне, що я навіть хз які задачі можна такому доручити

з флешки воно таке повільне, що я навіть хз які задачі можна такому доручити

Разове завантаження під задачу з мінімізацією диск io після того. А взагалі флешки то дешеві розходники, вилетіла одна іншу вставив. Iot девайс з emmc нп все швидше буде з дисковим io, там свої плюси/мінуси будуть.

Read-only файлові системи (overlayFs) давно вирішили цю проблему, нічого не сиплеться

Намагався використовувати adblock на openwrt. Але не зміг підібрати вірно списки для блокування, щоб і реклама різалась, і вхідні дзвінки на телефони в різних меседжерах проходили.

Якщо мені не зраджує склероз то DNS сервера AdGuard оно прямо вже можна прибити цвяхами до свого роутера «в два кліка» — то чи є зміст красноглазіть з врахуванням того що тобі за це не платять?

Якщо вам не подобається self-hosted рішення і ви не хочете нічого всановлювати це нормально. Існують зручні альтернативи: NextDNS, Control D, або інші.

Використовувати будь які продукти AdGuard погано: ця компанія досі працює на росії, їх податки це вбиті українці. Це також погано те з точки зору безпеки ваших даних: великі російські IT компанії або працюють з владою, або віджимаються, або закриваються.

Adguard російська компанія, хоча і маскується щоппц. Довіряти відповідно їм не можна, тому рішення цілком має право на існування. Знаєте приказку про безкоштовний сир?)

Можу поділитися ще кількома порадами зі свого досвіду користування Pi-hole:

1. Забезпечте стабільне живлення.
Найкраще під’єднати Raspberry Pi до невеликого джерела безперебійного живлення (UPS), щоб він міг працювати навіть під час відключень електроенергії. Те саме стосується і роутера. Якщо Pi вимкнеться — разом із ним «ляже» ваш локальний DNS-сервер, і в результаті інтернет перестане працювати.

2. Виділіть Raspberry Pi лише для Pi-hole.
Ідеально, якщо на ньому буде працювати лише Pi-hole, без додаткових навантажень. Якщо ж на цій самій машині запущені ще й Docker-контейнери, торрент-клієнти, Plex, інші сервери тощо — усе це створює додаткове навантаження і може викликати затримки у роботі DNS або навіть повні зависання.

Це цікаво я сам намагаюсь притримуватись ідеї один пристрій для одного сервісу. Але у випадку з Pi-hole це в мене додаток на компʼютері Home Assistant Green. У мене раніше був 3B+ (зависав страшно) і писав таку статтю dou.ua/forums/topic/41151

Чи є різниця в функціональності між додатком в Home Assistant, та окремою інсталяцією? Я зміг знайти лише, що наразі у додатку не реалізований DHCP — але він мені поки що й не потрібний. HA в мене працює в Proxmox, тож встановити додаток — взагалі ніяких проблем (поки що я так і зробив) — але ж і додати ща одну віртуальну машину суто під Pi-hole також не проблема — питання лише в тому, чи є якісь переваги

Різниця є. Ви отримуєте оновлення доповнення, коли його випускає розробник доповнення. Наразі це часто.

Для DoH доповнення Cloudflared не підходить, бо працює лише як тунель, а dns-proxy немає доповнення. Звісно їх можна встановити окремо в своій операційній системі, але вже легше docker stack зробити.

Достукатись до додатку важко, або неможливо. Спочатку потрібно увійти в Home Assistant, а потім в Pi-hole. Якщо захочете зробити якийсь high availability майте це на увазі

Також можливо ще щось не реалізовано, що може вам знадобитись в майбутньому.

Я сам використовую Pi-hole як доповнення на своєму Home Assistant Green. На даний момент не бачу недоліків для себе. Приємно те що можна встановити в один клік.

Якщо вам різниці немає використовуйте оригінальні образи Pi-hole. До речі для Proxmox також можна встановити в одну команду через proxmox scripts community-scripts.github.io/...​oxmoxVE/scripts?id=pihole

3B+ (зависав страшно)

Якщо враховувати що там ram тільки 1g, то я б не розраховував на докери і віртуалки від слова зовсім. Плюс gl2 по графиці, тобто і gui може тупити (нп, софт що на gtk4 буде крутитися з софт рендерінг).
Якщож легкий софт/ос задовольняє і відповідне тому залізу, і плюс нормальне живлення, — все норм (принаймні було краще у порівнянні з маловідомими iot девайсами з такого плану ресурсами).

О, нещодавно підняв pihole, правда на NUC x64 сервері на Linux (з Pi був негативний доступ в плані стабільності). Це прям life changing штука, сайти що раніше були обвішені банерами (як той же speedtest) тепер просто працюють.
Ще момент про який мало в статті — там є вбудований локальний кешуючий in-memory DNS сервер (FTL) — менше пінг при відкритті сайтів вперше с пристрою.

FYI — набрав собі такі джерела для блокування:

https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts		
https://s3.amazonaws.com/lists.disconnect.me/simple_tracking.txt		
https://s3.amazonaws.com/lists.disconnect.me/simple_ad.txt		
https://big.oisd.nl		
https://o0.pages.dev/Lite/domains.txt		
https://raw.githubusercontent.com/hagezi/dns-blocklists/main/adblock/multi.txt

Клас дякую. Про FTL не знав. З приводу big.oisd.nl цей список позиціонується як надійний та незалежний, але у нього входять російські списки AdGuard.

тема дуже прикольна — ця стаття наштовхнула на ідею зробити фільтрацію реклами для всієї домашньої мережі, а не окремо на девайсах. Налаштовувати кастомне рішення був не готовий, тому проаналізував дані через Claude і зупинився на controld.com. Вийшло дуже зручно — все фільтрується в одному місці для всіх девайсів в мережі. Можна кастомізувати фільтри. Ріже рекламу дуже ефективно, подивимось як покаже себе. За 2$ в місяць я радий як слон ) За статтю дякую.

Цікаво, це щось накшталт NextDNS? Дякую що читаєте.

так, саме воно, але з підтримкою, різними фільтрами і трішки ai під капотом. принаймні так пишуть і Claude дав дуже високу йому оцінку

Пише, що 4$ на місяць. Або 40$ на рік

так, я також не сильно зрозумів чому так. мабуть це один з тарифних планів. Claude сказав що буде 2$, при реєстрації мені також показало 4$, я трішки розчарувався, але вирішив, що всеодно спробую. тепер в адмінці показує що на те, що я зараз використовую — буде $2 з наступного місяця. До речі зручно, бо можна взяти 1 місяць безкоштовно без необхідності привʼязувати карту.

Потужний мануал!

Проте я використовую локальний Adguard Home тільки через те, що з коробки там можна налаштувати DoH і згенерувати сертифікат для Apple пристроїв. Для мене це поки що кілер фіча. І оскільки це локальний оупен-сорс продукт — я не побачив там якихось загроз (поки що). Хоча повністю згоден, що користуватись їх застосунками (хоч клієнти також оупен сорс) — не варто, бо бог знає що в них там на серверах.

Я побачив у статті є згадка, що можна додати цю бажану мені фічу завдяки стороннім програмам, тож у вільний час, можливо, спробую це і перейду на Pi-hole.

Проте також хочу додати, що у статті повністю не розкритий процес додавання свого dns серверу на ios. Якщо додати dns сервер просто прописавши це в налаштуваннях мережі — це не буде працювати у застосунках (по типу реклами в іграх). Для того щоб це працювало в застосунках — треба генерувати конфігураційний профіль, де буде прописаний днс як проксі через DoH. Тоді реклама в застосунках блокуватиметься. (Проте можуть бути проблеми з сайтами схованими за впн, але це також поправляється в цій конфігурації).
Також, особисто в мене, днс відкритий назовні, тому я підключений до нього з будь якої точки світу і реклама в мене фільтрується усюди

П.с. Хотів теж колись написати статтю про локальний днс, але подумав, що писати про едгард буде крінжою — і забив))))

Ви досі можете це зробити) Крім AdGuard існує багато альтернатив

Blocky все це вміє, зегенерували сертифікат через сертбота і вперед. Або через nginx proxy manager згенерували і прокинули собі DoH.

Та nginx і сертифікат — це найлегше з цього і вже налаштовано))

Для мене не використовувати будь яке ПЗ AdGuard питання принципове. Навіть якщо ПЗ локальне, open source і без бекдорів, це все одно російська компанія тісно повʼязана з російським урядом і яка працює на окупованій українській території.

Мабуть допишу у статтю про налаштування doh та профілю в Pi-hole. Дякую за ідею.

Pi-hole шикарна штука. Почала десь лізти реклама — відкрив комп, відкрив devtools, глянув де воно лізе, підкинув ці домени у блекліст — вуаля, знову все чисто

Почала десь лізти реклама — відкрив комп, відкрив devtools, глянув де воно лізе, підкинув ці домени у блекліст

коротше зрозуміло, як сервіс воно — useless

з чого такий висновок?) воно місяцями працює чудово. просто буває якась рекламно-казіношна мразота купить собі домен, якого ще немає в блеклистах. Так от його можна взяти, і руками собі підкинути. Це ж навпаки плюс. Якщо ні — то просто почекати якийсь час, блеклісти оновляться, і може хтось інший додасть

Альтернативи Pi-hole

роутери mikrotik мають можливість використовувати adlist

Роутери mikrotik, зокрема hAP ax^3, можуть крутить pi-hole прямо в себе в контейнері. Головне, щоб вистачало ОЗП. Ну, і швидку флешку на USB3 запхать, щоб не ганять встроєний сторадж.

на вбудований сторадж ви і не розгорнете, для Pi-Hole треба набагато більше вільного місця

Головне, що pi-hole хоче 512МБ+ пам’яті, а про зовнішній сторадж я написав.

Підписатись на коментарі