Якщо вам набридла нав'язлива реклама на всіх ваших пристроях, і вдома збирає пил Raspberry Pi, ви потрапили в потрібне місце. За допомогою Pi-hole ви можете створити блокувальник реклами на рівні мережі який фільтруватиме рекламу та трекери для всіх підключених пристроїв: комп’ютерів, мобільних телефонів, планшетів, смарт-телевізорів і навіть консолі.
У цьому посібнику ви крок за кроком дізнаєтеся, як використовувати Pi-hole на Raspberry Pi, як налаштувати його з панелі адміністрування та як змусити решту пристроїв у вашій мережі використовувати його як DNS-сервер, навіть у випадках, коли ви не можете змінити налаштування маршрутизатора. Мета полягає в тому, щоб до кінця у вас був... стабільна, актуальна та добре налаштована система що значно зменшує кількість реклами у вашій домашній мережі.
Що таке Pi-hole і як він працює на Raspberry Pi?
Pi-hole — це програмне забезпечення, яке встановлюється на Raspberry Pi та діє як DNS-сервер для всієї вашої локальної мережіЩоразу, коли пристрій намагається отримати доступ до домену, він спочатку запитує DNS. Pi-hole перехоплює ці запити, порівнює їх зі списками рекламних та відстежувальних доменів, і якщо виявляє, що вони надходять від реклами або трекерів, повертає неіснуючу або локальну IP-адресу, щоб контент не завантажувався.
Цей підхід є дуже потужним, оскільки Він блокує рекламу ще до того, як вона потрапить до браузера.Замість встановлення розширень на кожен пристрій, ви централізуєте блокування в одній точці: Raspberry Pi. Усе, що проходить через цей DNS (мобільний телефон, ПК, телевізор тощо), отримує вигоду від фільтрації.
На практиці Pi-hole значно зменшує кількість видимої реклами, а також відстеження третіх сторін. Це не ідеально (він не блокує абсолютно все), але покращення дуже помітне, і, крім того, Це не залежить від кожного браузера чи операційної системи.
Необхідні умови для використання Pi-hole на Raspberry Pi
Перш ніж розпочати встановлення чогось, потрібно переконатися, що ви відповідаєте низці вимог. базові вимоги до апаратного забезпечення та мережіБез цього решта посібника буде дуже складною:
- Raspberry Pi з оперативною пам'яттю щонайменше 512 МБПідійде будь-яка відносно сучасна модель (Pi 2, 3, 4 тощо). Pi-hole дуже легкий, тому вам не потрібна потужна машина.
- SD-карта з вільним місцем щонайменше 2 ГБВ ідеалі, вона повинна мати більшу ємність і бути пристойної якості, адже операційна система та сама Pi-hole виграють від швидкої та надійної карти.
- Встановлено ОС Raspberry Pi (Raspbian)Ви можете використовувати Lite-версію, якщо вам не потрібне графічне середовище. Головне, щоб у вас була запущена операційна система на базі Debian.
- Підключення до Інтернету на Raspberry PiЦе можна зробити через кабель Ethernet (найстабільніший варіант) або Wi-Fi. Вам знадобиться з’єднання як під час встановлення, так і для оновлень і розв’язання DNS.
- Доступ до панелі адміністрування роутераУ типовій домашній мережі це зазвичай можливо. Вам потрібно буде змінити налаштування DNS, які маршрутизатор призначає пристроям через DHCP.
У деяких конкретних випадках, наприклад, коли ви перебуваєте в загальнодоступній або корпоративній мережі, де немає доступу до маршрутизатора, вам доведеться вдатися до альтернативні конфігурації для маршрутизації трафіку через Raspberry Pi, як описано нижче.
Підготовка Raspberry Pi: встановлення та базова конфігурація
Перший крок — підготувати Raspberry Pi з операційною системою та віддаленим доступом через SSH, щоб ви могли зручно керувати ним без необхідності... підключайте клавіатуру та монітор, коли захочете щось зіграти.
Встановлення ОС Raspberry Pi на SD-карту
Почніть із завантаження останньої версії Raspberry Pi OS з офіційного веб-сайту. Для використання як DNS-сервера та блокувальника реклами зазвичай достатньо наступного. 64-розрядна Lite-версія, який не містить графічного середовища та споживає менше ресурсів.
Після завантаження образу його потрібно записати на SD-карту. Наприклад, у macOS ви можете знайти карту за допомогою команди дискутильний список а потім використовувати dd для перенесення образу на карту. У Windows зручніше використовувати інструменти з графічним інтерфейсом, такі як Win32 Disk Imager або Balena Etcher, які значно спрощують процес запису.
Коли дамп завершиться, безпечно вийміть SD-карту, вставте її в Raspberry Pi, підключіть монітор і клавіатуру, якщо ви використовуєте його вперше, і увімкніть його. Якщо все працює правильно, ви повинні побачити Екран завантаження ОС Raspberry Pi та пройдіть початкове налаштування.
Увімкніть SSH-доступ на Raspberry Pi
Щоб мати змогу керувати Pi-hole без наявності Raspberry Pi поруч, бажано ввімкнути SSH-сервер у системіТаким чином, ви можете підключитися з комп'ютера за допомогою клієнта, такого як PuTTY (у Windows) або команди ssh (у Linux та macOS).
На Raspberry Pi виконайте:
sudo raspi-config
У меню перейдіть до розділу «Параметри інтерфейсу», виберіть SSH і поставте галочку навпроти опції «Так», щоб активувати її. Майстер відобразить повідомлення з підтвердженням цього. SSH-сервер тепер увімкнено.
Щоб дізнатися, яку IP-адресу було призначено вашому Raspberry Pi в локальній мережі, ви можете скористатися:
hostname -I
Команда поверне одну або декілька IP-адрес, наприклад 192.168.1.50Це адреса, яку ви використовуватимете зі свого комп’ютера для підключення через SSH за допомогою команди типу:
ssh usuario@192.168.1.50
Майте на увазі, що користувач за замовчуванням або той, якого ви налаштували під час першого завантаження, – це той, якого ви повинні використовувати в команді ssh, і це завжди гарна ідея. змінити пароль за замовчуванням - - якщо ви ще цього не зробили.
Оновіть свою систему перед встановленням Pi-hole
Оскільки Raspberry Pi доступний через SSH, час оновити систему. Це запобігає проблемам із залежностями та покращує безпеку. Виконайте:
sudo apt update
sudo apt upgrade
Після завершення ваша ОС Raspberry Pi буде оновлена та готова до встановлення. програмне забезпечення, необхідне для Pi-hole.
Варіанти встановлення Pi-hole на Raspberry Pi
Pi-hole пропонує дуже простий у використанні автоматичний інсталятор. Існує кілька способів запуску цього інсталятора, залежно від того, чи ви віддаєте перевагу клонуванню репозиторію Git, чи використанню скрипта, завантаженого безпосередньо з Інтернету. Обидва варіанти призводять до одного й того ж майстра налаштування.
Інсталяція за допомогою автоматизованого скрипта
Найпоширеніший та найшвидший спосіб встановлення Pi-hole – це використання офіційного скрипта, який завантажується та запускається в один рядок. У терміналі Raspberry Pi ви можете виконати:
wget -O basic-install.sh https://install.pi-hole.net
sudo bash basic-install.sh
Ще один поширений варіант, який поєднує curl з bash, це:
curl -sSL https://install.pi-hole.net | bash
В обох випадках завантаження буде Автоматичний установник Pi-hole і він запуститься безпосередньо, відкривши серію екранів конфігурації, де ви визначите основні налаштування.
Встановлення з репозиторію GitHub
Якщо ви бажаєте мати трохи більше контролю над завантаженим кодом, ви можете клонувати офіційний репозиторій Pi-hole з GitHub. Спочатку переконайтеся, що у вас встановлено Git з:
sudo apt install git
Потім клонуйте репозиторій за допомогою:
git clone --depth 1 https://github.com/pi-hole/pi-hole.git Pi-hole
cd "Pi-hole/automated install/"
sudo bash ./basic-install.sh
Кінцевим результатом буде той самий інтерактивний інсталятор, але ви отримаєте код безпосередньо з репозиторію. У будь-якому випадку, рекомендація така: Завжди звертайтеся до офіційної документації Pi-hole.оскільки кроки можуть змінюватися з новими версіями.
Майстер встановлення та початкового налаштування Pi-hole

Після запуску скрипта встановлення майстер проведе вас через серію екранів, де ви налаштуєте ключові елементи системи: DNS, IP-адресу Raspberry Pi, списки блокування, веб-інтерфейс тощо. Хоча ви можете змінити майже все пізніше, важливо почати з цих кроків. Зверніть увагу на те, що ви обираєте на цьому етапі.
Вибір постачальника DNS для вищого рівня
Під час процесу одним із перших варіантів буде вибір DNS-сервер вищого рівняЦе сервер, на який Pi-hole пересилатиме нерозблоковані запити. Зазвичай пропонуються популярні варіанти, такі як Google, Cloudflare, OpenDNS або інші публічні провайдери.
Наприклад, ви можете вибрати Google (ECS) або будь-який інший надійний сервіс. Цей вибір впливає на конфіденційність та продуктивність запитів, тому краще обрати постачальника, з яким вам комфортно. Ви зможете обговорити це пізніше. Змінити цього постачальника з панелі адміністрування якщо ви хочете.
Налаштування статичної IP-адреси Raspberry Pi
Один з найважливіших моментів — встановити Статична IP-адреса для вашого Raspberry PiPi-hole завжди має бути доступний за однією й тією ж адресою, інакше пристрої, що використовують цю IP-адресу як свій DNS, не зможуть розпізнавати домени, якщо адреса зміниться.
Зазвичай інсталятор пропонує статичну IP-адресу на основі поточної IP-адреси Raspberry Pi, але ви можете налаштувати її відповідно до вашої мережі (наприклад, 192.168.1.2). Переконайтеся, що обрана IP-адреса ще не призначена іншому пристрою та що вона знаходиться в діапазоні IP-адрес вашого маршрутизатора.
В кінці цього кроку Raspberry Pi буде налаштовано за допомогою фіксована адреса у вашій локальній мережіЦе полегшить вам доступ через SSH та використання Pi-hole з інших пристроїв.
Списки блокування для реклами та трекерів
Pi-hole працює, спираючись на списки доменів, які вважаються рекламними, відстежувальними або шкідливими доменами. Під час встановлення вам буде запропоновано кілька варіантів. попередньо визначені списки блокування Вони широко використовуються спільнотою. Загалом прийнятно їх прийняти, оскільки вони забезпечують гарну відправну точку.
Ці списки можна розширити, скоротити або налаштувати пізніше через веб-інтерфейс. Якщо ви пізніше помітите, що легітимний сервіс перестав працювати (наприклад, певні розділи сторінок, що залежать від сторонніх доменів), ви можете Виключити певні домени з фільтрів або налаштуйте списки, які ви використовуєте.
Пароль для веб-інтерфейсу адміністрування
Після завершення встановлення майстер покаже вам останній екран з ключовою інформацією: IP-адресою сервера, адресою для доступу до веб-панелі та тимчасовий пароль адміністратораБажано записати цю інформацію, навіть якщо ви можете змінити пароль пізніше.
Якщо ви хочете встановити власний ключ, відмінний від того, що згенеровано інсталятором, ви можете виконати таку команду на Raspberry Pi:
pihole -a -p
За допомогою цієї команди ви матимете можливість встановити новий безпечний пароль або навіть залишити його порожнім (що не рекомендується в мережі, до якої можуть отримати доступ треті сторони).
Доступ до панелі конфігурації та керування Pi-hole
Після завершення встановлення Pi-hole надасть вам дуже повна веб-панель Звідси ви можете контролювати майже кожен аспект сервісу: статистику, списки блокування, DNS, журнали тощо.
Щоб отримати до нього доступ, відкрийте браузер на будь-якому пристрої у вашій мережі та введіть IP-адресу вашого Raspberry Pi, а потім, за необхідності, шлях адміністрування (у багатьох інсталяціях просто перейдіть за посиланням http://IP_DE_LA_PI/adminЗ’явиться екран входу, де потрібно ввести пароль адміністратора, наданий інсталятором, або той, який ви налаштували за допомогою попередньої команди.
Опинившись усередині, ви побачите Головна панель інструментів Pi-holeЗа допомогою графіків та лічильників у режимі реального часу: кількість оброблених DNS-запитів, кількість заблокованих запитів, відсоток блокування, найбільше запитуваних доменів, найактивніших клієнтів тощо. Ця інформація допомагає вам зрозуміти, що відбувається у вашій мережі, та виявити дивну або надмірну поведінку.
Розширені параметри налаштування з веб-інтерфейсу
На панелі ви можете налаштувати безліч параметрів. Серед найпоширеніших опцій, які вам варто розглянути:
- Конфігурація DNS: змінити сервери вищої ланки, увімкнути DNSSEC, додати власний DNS або об’єднати кількох провайдерів.
- Додаткові списки блокування: додайте нові списки реклами, трекерів або шкідливого програмного забезпечення для більш агресивної фільтрації або видаліть деякі з них, якщо вони викликають хибнопозитивні результати.
- Білі та чорні списки: дозволити певні домени, які блокуються помилково, або заблокувати певні домени, які ви хочете заборонити у своїй мережі.
- Контроль клієнтів: перевірте, який пристрій надсилає найбільше запитів, налаштуйте політики за IP-адресою або обмежте область дії певних блоків.
За потреби ви також можете змінити порт, на якому Інтерфейс адміністрування на основі lighttpdДля цього відредагуйте файл конфігурації веб-сервера:
sudo nano /etc/lighttpd/lighttpd.config
Після зміни порту або будь-якого іншого налаштування вам потрібно буде перезапустити службу lighttpd або сам Raspberry Pi, щоб зміни набули чинності.
Налаштуйте мережеві пристрої для використання Pi-hole
Встановлення Pi-hole не дуже корисне, якщо пристрої у вашій мережі не використовують його як DNS-сервер. Щоб трафік проходив через Raspberry Pi, ви повинні... Вкажіть DNS пристроїв на IP-адресу Pi-holeЦе можна зробити двома способами: на рівні маршрутизатора, для всіх пристроїв, або окремо на кожному пристрої.
Налаштуйте маршрутизатор для використання Pi-hole як DNS
Найзручнішим варіантом у більшості будинків є зміна мережевих налаштувань маршрутизатора таким чином, щоб він через DHCP-сервер призначав IP-адреса Raspberry Pi як основний DNS всім клієнтам мережі.
На типовому маршрутизаторі відкрийте панель адміністрування (зазвичай вводячи IP-адресу маршрутизатора у веб-браузер, наприклад, 192.168.1.1) та знайдіть розділ LAN або DHCP. Наприклад, на маршрутизаторах Asus ви отримуєте доступ до розділу «LAN», а потім до вкладки «DHCP-сервер». Там ви побачите такі поля, як «Основний DNS-сервер», де слід ввести статичну IP-адресу вашого Raspberry Pi.
Таким чином, усі пристрої, які отримують конфігурацію мережі через DHCP, почнуть використовувати Pi-hole як DNS-сервер без необхідності торкатися кожного з них. Це ідеальний підхід, коли у вас багато пристроїв або ви хочете, щоб ще менше налаштовуваних телевізорів та приладів користувалися перевагами блокування.
Налаштуйте DNS на кожному пристрої (ПК, мобільному телефоні тощо)
Якщо ви не можете або не хочете змінювати налаштування свого маршрутизатора, ви можете налаштувати DNS Pi-hole окремо на кожному пристрої. Це дає вам більше контролю, але вимагає більше роботи, а також Виключіть пристрої, на яких ви не можете отримати доступ до налаштувань DNS..
Наприклад, на комп’ютерах з Windows ви можете перейти до налаштувань мережевого адаптера (Wi-Fi або Ethernet), отримати доступ до властивостей TCP/IP та в розділі DNS вказати IP-адресу Raspberry Pi як основний DNS-сервер. У Windows 10 ця зміна вноситься на панелі мережевих налаштувань, перейшовши до додаткових параметрів, щоб вручну призначити DNS-сервер.
Процедура схожа на macOS, Linux, Android або iOS: у всіх випадках ви можете вказати в налаштуваннях мережевого підключення ручна DNS-адресаГоловне, щоб введене вами значення збігалося зі статичною IP-адресою вашого Raspberry Pi.
Розширений сценарій: використання Raspberry Pi як мосту Wi-Fi-Ethernet з Pi-hole
Бувають ситуації, коли у вас немає доступу до налаштувань маршрутизатора, наприклад, у публічних або спільних мережах, або в певних корпоративних середовищах. У таких випадках ви можете спробувати альтернативний підхід: використовувати Raspberry Pi як маршрутизатор. Міст між мережею Wi-Fi та пристроєм через Ethernet, вставивши Пі-отвір посередині.
Ідея приблизно така: комп'ютер без Wi-Fi підключається через кабель до Raspberry Pi, Raspberry Pi підключається через Wi-Fi до загальнодоступної мережі, і водночас, Запустіть Pi-hole для фільтрації DNS-запитів комп'ютераРядок підключення буде таким:
Комп'ютер без Wi-Fi + кабель Ethernet → Raspberry Pi + Pi-hole + Wi-Fi → Громадський Wi-Fi → Інтернет без (такої великої кількості) реклами
Щоб досягти цього, Raspberry Pi потрібно налаштувати на спільний доступ до Wi-Fi з'єднання з портом Ethernet, діючи як невеликий маршрутизатор або адаптер. Окрім Pi-hole, вам потрібно буде ввімкнути пересилання пакетів, налаштувати iptables або nftables для NAT та переконатися, що Комп'ютер, підключений через кабель, використовує сам Raspberry Pi як свій DNS-сервер..
Цей тип налаштування дещо складніший і не завжди безпосередньо задокументований, тому під час пошуку інформації легко знайти щось, що не зовсім відповідає вашій ситуації. Ключовим є те, що Raspberry Pi має два інтерфейси (Wi-Fi та Ethernet), що Wi-Fi діє як шлюз до Інтернету, а інтерфейс Ethernet отримує IP-адресу від Raspberry Pi та використовує Pi-hole як свій DNS-сервер. Таким чином, трафік від ПК буде фільтруватися Pi-hole, перш ніж потрапити до загальнодоступної мережі.
Технічне обслуговування, модернізація та найкращі практики Pi-hole
Як тільки ви все налаштуєте та запустите, не забудьте про Pi-hole. Хоча це досить стабільна система, вона важлива оновлюйте його і час від часу перевіряти їхню поведінку.
Оновіть Pi-hole до останньої версії.
Pi-hole містить дуже простий механізм оновлення. На самому Raspberry Pi просто виконайте:
pihole -up
Система завантажить останні версії необхідних компонентів та застосує оновлення. Ви також можете запуск оновлень через веб-інтерфейс У деяких версіях це спрощує процес для користувачів, менш звичних до командного рядка.
Підтримка Pi-hole в актуальному стані гарантує вам доступ до найновіших функцій, виправлень помилок та покращень безпеки. Оскільки він постійно піддається впливу DNS-трафіку та може бути мішенню для зловживань, рекомендується не залишати його неоновленим протягом тривалого часу.
Контролюйте та регулюйте замок
З часом ви побачите, що Pi-hole значно зменшує кількість реклами, яку ви бачите, хоча й не усуває її повністю. На панелі керування ви можете побачити, які домени блокуються найчастіше та чи є такі. будь-який легітимний веб-сайт, на який це впливає.
У цих випадках використання білих списків є надзвичайно важливим. Якщо ви виявите, що певний домен блокується та порушує потрібну вам функціональність, ви можете додати його до білого списку, і він знову запрацює. І навпаки, якщо ви знайдете особливо проблемні домени для сканування, яких немає у списках, ви можете вручну додати їх до чорного списку.
Загалом, і згідно з досвідом багатьох користувачів, Pi-hole досягає значне скорочення реклами та відстеженняпокращення швидкості завантаження багатьох сторінок та створення загалом приємнішого перегляду, особливо на пристроях, де не так просто встановити блокувальники контенту.
Після виконання всіх цих кроків ваш Raspberry Pi зазвичай стане чудовим маленьким союзником: централізованим DNS-сервером, який фільтрує рекламу для всієї вашої мережі та, з мінімальним обслуговуванням, забезпечує зручність, конфіденційність та певний спокій від постійного бомбардування рекламою в Інтернеті. Поділіться інформацією, щоб більше користувачів могли дізнатися про тему.