Jak skonfigurować Pi-hole + Unbound na Raspberry Pi — Poradnik

Jak skonfigurować Pi-hole + Unbound na Raspberry Pi — Poradnik

W ostatnim czasie (trochę też na potrzeby tego bloga) zdecydowanie więcej bawię się Raspberry Pi. Niedawno w swoich poradnikach pokazywałem, jak poczciwą malinkę można przerobić na dysk sieciowy/NAS’a oraz retro konsolę do emulacji. Tym razem przechodzimy do tematów związanych z blokowaniem reklam i bezpieczeństwem w sieci, bo w tym artykule pokażę, jak krok po kroku skonfigurować Pi-Hole oraz Unbound na Raspberry Pi.

Czym jest i jak działa Pi-hole?

Zanim przejdziemy do prawidłowej części tego poradnika, warto powiedzieć (albo napisać) kilka słów na temat, czym w ogóle jest Pi-hole i na jakiej zasadzie on działa.

Zacznijmy od tego, jak funkcjonuje dzisiejszy Internet, a więc tak: strony Internetowe stoją na komputerach-serwerach, które udostępniają swoją treść do sieci publicznej za pomocą Port Forwaridingu. Normalnie, aby dostać dostęp do takiego serwera, musielibyśmy znać jego dokładny adres IP (w przypadku tej strony jest to np. 193.122.15.4). Adresy IP są łatwe do rozpoznania przez komputery, jednak dla nas ludzi, zapamiętanie długich ciągów cyfr dla każdej odwiedzanej strony byłoby jednak niezwykle trudne. Właśnie dlatego powstał system o nazwie DNS.

DNS (ang. Domain Name Server) to usługa automatycznie tłumacząca adresy IP na dużo prostszy do zapamiętania adres domeny. Po zakupie wybranego adresu domeny, właściciel przypisuje do niego adres IP serwera, na którym stoi jego strona. Jeśli po tym wpiszemy wspomnianą nazwę domeny (np. gameodyssey.pl) w przeglądarce, to serwer DNS automatycznie przetłumaczy ją na adres IP, a my otrzymamy dostęp do zawartości strony. Dzięki temu, zamiast zapamiętywać długie adresy IP, możemy po prostu posługiwać się prostymi i łatwiejszymi w zapamiętaniu (no, w większości przypadków) nazwami, aby wejść na nasze ulubione strony.

Okej, czas w końcu przejść do Pi-Hole: Pi-hole to u podstaw tak zwany “DNS sinkhole” (w wolnym tłumaczeniu dziura/dół DNS), czyli specjalny rodzaj serwera DNS, który niektóre zapytania ignoruje/blokuje/wrzuca je do dziury. W tym przypadku tymi “niektórymi zapytaniami” będą głównie reklamy, skrypty śledzące i inne nieprzyjemności. Pi-Hole korzysta z faktu, że tego rodzaju treści są zazwyczaj udostępniane z innej lokacji/innego adresu IP niż sama strona, na której przebywamy (przykładowo: większość stron Internetowych do wyświetlania reklam, korzysta z systemu AdSense od Google). Pi-Hole, jako serwer DNS ma już w swojej pamięci przygotowaną listę domen  serwujących reklamy/skrypty (którą notabene możemy samodzielnie rozszerzyć). Jeśli wchodząc na jakąś stronę Pi-Hole wykryje, że dany element pochodzi ze znanego adresu, to jest on po prostu blokowany, a cała reszta strony, może zostać załadowana poprawnie (no… najczęściej).

Czego będziemy potrzebować?

Dobra, kończymy z teorią i przechodzimy do praktyki. Do skonfigurowania Pi Hole w naszej sieci będziemy potrzebowali kilku rzeczy, konkretnie:

  • Raspberry Pi (lub tak naprawdę dowolnego innego komputera, a nawet NAS’a; jeśli korzystacie z innego komputera niż RPI, to możecie zignorować/odpowiednio zmodyfikować kolejne wymagania)
  • Karty pamięci, na której zainstalujemy system
  • Czytnika kart pamięci
  • Zasilacza do Raspberry Pi

Jeśli chodzi o rodzaj Raspberry Pi to według niektórych znalezionych przeze mnie opinii: Pi-Hole powinno działać nieźle nawet na tanich komputerkach Raspberry Pi Zero W. Osobiście większe zaufanie miałbym jednak do serwera DNS podłączonego do Internetu przez kabel, a nie przez Wi-Fi, więc wolałbym coś z portem Ethernet (np. Raspberry Pi 3/4/5 albo [z kompletnie innej stajni] tanie Orange Pi Zero 3).

Jako że DNS jest wymagany do podstawowej pracy Internetu, to niektóre osoby polecają, aby skonfigurować Pi-hole na dwóch urządzeniach w naszej sieci (np. na dwóch malinkach). W ten sposób, gdy z jakiegoś powodu jeden z naszych komputerków przestanie działać, to urządzenia automatycznie połączą się z drugą maszynką zamiast z publicznym serwerem DNS (co spowodowałoby ponowne wyświetlenie reklam i ew. odblokowanie zablokowanych stron). Dla użytkowników konfigurujących Pi-Hole głównie po to, aby blokować reklamy będzie to w moim odczuciu trochę przesada, ale jeśli chodzi Wam głównie o prywatność/bezpieczeństwo w sieci to można taki wariant przemyśleć.

Instalacja systemu operacyjnego na karcie pamięci RPI

Ok, jak zwykle pierwszym krokiem przy każdym projekcie z Raspberry Pi, będzie zainstalowanie systemu na karcie microSD. UWAGA! Ten proces usunie wszystkie dane z karty pamięci, dlatego przed podjęciem tych działań, warto je gdzieś przenieść. (Jeśli macie już działającą malinkę/inny komputer z systemem operacyjnym to oczywiście możecie pominąć ten krok).

Aby zainstalować system operacyjny na Raspberry Pi:

  1. Wchodzimy na oficjalną stronę Raspberry Pi i pobieramy stamtąd narzędzie Raspberry Pi OS Imager (niebieski przycisk Download for nazwa_systemu).
  2. Przechodzimy do folderu z pobranym plikiem i klikamy na niego dwukrotnie, by go otworzyć. Następnie przeprowadzamy klasyczną instalację programu (tak, samo, jak w przypadku innych aplikacji na naszym systemie).
  3. Po zakończeniu instalacji wyszukujemy wśród naszych aplikacji, programy Raspberry Pi Imager i uruchamiamy go.
  4. Podłączamy kartę microSD do komputera za pomocą odpowiedniego adaptera.
  5. Wracamy do okna programu Raspberry Pi Imager, zaznaczamy “Wybierz model” i zaznaczamy tam wariant naszej malinki (w moim przypadku będzie to np. Raspberry Pi 4).
    Wybór modelu RPI
  6. Teraz klikamy na “Wybierz OS” i kolejno zaznaczamy “Raspberry Pi OS Other” > “Raspberry Pi OS Lite (32/64-bit)”. Jest to lekki system operacyjny bez interfejsu graficznego (nie potrzebujemy go przy tym projekcie). Jeśli wolimy inny system operacyjny (bo np. potrzebujecie interfejsu graficznego do jednego z planowanych projektów), to zmienić polecany wariant na inną wersję.
    Wybieranie OS RPI
  7. Po wskazaniu systemu klikamy “Wybierz Dysk” i w otwartym okienku zaznaczamy kartę microSD podłączoną do komputera.
    Wybór karty pamięci
  8. Otwieramy okno konfiguracji systemu poprzez aktywację skrótu klawiszowego Ctrl + Shift + X.
  9. W pierwszej zakładce ustawiamy hostname (polecam “pi”), login (ponownie polecam “pi”) oraz hasło (będą one nam potrzebne do późniejszego połączenia z komputerem poprzez SSH. Jeśli chcemy wykorzystać na Raspberry Pi Wi-Fi, to zaznaczamy tutaj też opcję “skonfiguruj sieć Wi-Fi”, po czym wpisujemy SSID (nazwę) oraz hasło naszej sieci.
    Ustawienie loginu i hasła
  10. Przechodzimy do zakładki “Usługi” i upewniamy się, że opcja “Włącz SSH” jest aktywna. Jeśli chodzi o sposób weryfikacji, to: z hasłem będziemy mogli łatwiej się zalogować, a klucz publiczny SSH będzie potencjalnie bezpieczniejszy (co może potencjalnie mieć znaczenie, jeśli chcemy ustawić VPN na malince).
    Włączenie ssh
  11. Po wprowadzeniu wszystkich zmian w oknie konfiguratora klikamy przycisk “Zapisz”.
  12. Na sam koniec zaznaczamy “Kontynuuj” i potwierdzamy tę operację kilkakrotnie w wyświetlonych powiadomieniach. Po kilku chwilach nasz system powinien być już zainstalowany na karcie.
    Tak kontynuuj

Łączenie z Raspberry Pi poprzez SSH

Przyszła pora na zdalne połączenie z Raspberry Pi poprzez SSH z poziomu naszego komputera. W swoim przykładzie pokazuję jak to zrobić przy pomocy terminala Windows na Raspberry Pi, które sesję SSH ma zabezpieczoną przez hasło. Jeśli łączycie się z innego urządzenia/wybraliście zabezpieczenie kluczem, to do połączenia możecie wykorzystać popularne aplikacje takie, jak Putty czy Termius (cały proces wygląda tam dość podobnie).

Tak więc:

  1. Wpinamy przygotowaną wcześniej kartę do Raspberry Pi, pakujemy malinkę do obudowy (jeśli takową posiadamy), a następnie podłączamy nasz komputerem do zasilania oraz do Internetu za pomocą kabla (kiedy właśnie z takiego połączenia chcemy korzystać). Po chwili Raspberry Pi powinno się uruchomić.
  2. W międzyczasie na naszym komputerze wyszukujemy wśród aplikacji, program “terminal” i go uruchamiamy.
    Terminal Windows
  3. Po otwarciu okna Terminala wpisujemy w nim komendę ssh [email protected] — pierwsze pi to w tym przypadku ustalona nazwa użytkownika, a drugie pi to hostname. Alternatywnie, zamiast hostname możemy też użyć adresu IP komputerka.
    Łączenie SSH
  4. Teraz powinno zostać wyświetlone zapytanie, czy chcemy połączyć się z tym komputerem. Wpisujemy słowo „yes” i zatwierdzamy je enterem.
  5. W kolejnym kroku podajemy hasło, które ustaliliśmy przy instalacji.
    Hasło SSH

I to tyle! Jeśli wszystko zrobiliśmy poprawnie, to po wyświetleniu krótkiej ściany tekstu, powinniśmy zobaczyć, że z lewej strony wyświetlany jest hostname oraz nazwa użytkownika (zazwyczaj w kolorze zielonym).

Aktywna sesja SSH

Aktualizacja systemu i ustawianie statycznego adresu IP

Kolejnym krokiem jest zaktualizowanie systemu i nadanie malince statyczne adresu IP. W tym przypadku skorzystamy z metody “na router” jest ona nieco trudniejsza, ale ogólnie bardziej zalecana. Jeśli chcecie skonfigurować statyczny adres IP na samym urządzeniu, to możecie skorzystać np. z tego poradnika (UWAGA! Ten sposób nie zadziała na nowszych wersja Raspberry Pi OS).

Gdy chcemy zaktualizować system i nadać Raspberry Pi stały adres IP:

  1. Po połączeniu z RPI przez SSH wpisujemy i zatwierdzamy Enterem komendę sudo apt-get install update & sudo apt-get install upgrade — zaktualizuje to wszystkie paczki zainstalowane w systemie.
    Aktualizowanie paczek na RPI
  2. Wklejamy do terminala komendę hostname -I — wyświetli to aktualny adres IP komputera; powinniśmy go gdzieś zapisać, bo przyda się nieco później.
    Wywoływanie komendy Hostname
  3. Wpisujemy komendę nmcli -f GENERAL.HWADDR device show eth0 (jeśli korzystamy z kable Ethernet) lub nmcli -f GENERAL.HWADDR device show wlan0 (gdy korzystamy z Wi-Fi) — pokaże to adres MAC malinki (tak samo, jak IP będzie on zaraz potrzebny).
    Adres Mac Raspberry Pi
  4. Wklepujemy do terminala komendę ip route | grep default — wyświetli to adres IP naszego routera/jego strony konfiguracyjnej.
    Adres IP Routera
  5. Wchodzimy do dowolnej przeglądarki na naszym komputerze i w pasku wyszukiwania wpisujemy adres IP domowego routera. Po jego zatwierdzeniu powinniśmy zostać przekierowani na stronę konfiguracyjną urządzenia.
  6. Logujemy się na stronę Routera. Zazwyczaj domyślnym loginem i hasłem jest słowo “admin”. Bardzo często oryginalne dane uwierzytelniania można też znaleźć w instrukcji urządzenia, na stronie producenta lub na naklejce pod spodem routera.
  7. Po zalogowaniu do routera szukamy zakładki o nazwie “Serwer DHCP”/”Static IP” lub zbliżonej i na nią klikamy. Każdy Router wygląda pod tym względem nieco inaczej, dlatego jeśli mamy problemy ze znalezieniem odpowiedniej zakładki to warto wpisać w wyszukiwarce “statyczne IP nazwa_routera” i posłużyć się znalezioną, dedykowaną instrukcją.
    Zakładka DHCP
  8. Wchodzimy do opcji „Address Reservation”.
  9. Teraz klikamy na opcję “Add New”/”Dodaj nowy”.
    Add new
  10. Na wyświetlonej stronie wklejamy adres MAC Raspberry Pi oraz aktualny adres IP maliny. Warto też tutaj sprawdzić, czy na pewno zaznaczony jest status “Enabled”. Czasami zamiast manualnego podawania adresu MAC router pozwoli nam wybrać odpowiednie urządzenie z przejrzystej listy (zależy od modelu).
  11. Po wszystkim klikamy przycisk “zapisz”/”save”/”dodaj” lub podobny.
    Zapisywanie statycznego IP dla Pi-hole

Po takiej procedurze komputerek powinien mieć już statyczny adres IP.

Instalacja Pi-hole w systemie Linux

Teraz możemy już bez większych przeszkód zainstalować Pi-hole. Aby to zrobić:

  1. Wracamy do naszej sesji SSH połączonej z Raspberry Pi.
  2. Wklejamy i zatwierdzamy komendę sudo curl -sSL https://install.pi-hole.net | bash — wywołanie tego skryptu zainstaluje Pi-hole, a następnie uruchomi konfigurator aplikacji.
    Instalacja Pi-hole
  3. Po załadowaniu konfiguratora zaznaczamy “OK” i potwierdzamy pierwsze 2 komunikaty klawiszem Enter.
    Rozpoczęcie konfiguracji
  4. Na kolejnym ekranie otrzymamy powiadomienie, że do używania Pi-hole potrzebny jest statyczny adres IP. Jako że my skonfigurowaliśmy już takowy adres, to zaznaczamy “Continue” i klikamy Enter.
    Powiadomienie o statycznym IP dla Pi-hole
  5. W kolejnym kroku zaznaczamy, czy nasze Raspberry Pi używa kabla Ethernet (eth0), czy też Wi-Fi (wlan0) i ponownie klikamy Enter.
    Wybór Interfejsu Pi-hole
  6. Teraz Pi-hole poprosi nas o wybranie jednego z publicznych dostawców DNS. Możemy wybrać sposób kilku opcji dostępnych na liście lub zaznaczyć “Custom” i samodzielnie wpisać adres IP. Jeśli zamierzamy korzystać z Unbound, to ten wybór nie ma zbyt dużego znaczenia, bo w konfiguracji z tą aplikacją Raspberry Pi będzie pełniło rolę rekursywnego serwera DNS. Po zaznaczeniu jednej z opcji klikamy Enter.
    Wybór DNS
  7. W kolejnym powiadomieniu zostaniemy zapytani, czy chcemy użyć domyślnej listy do blokowania reklam i stron. Zaznaczamy “Yes” (polecam), jeśli chcemy lub “No”, gdy nie chcemy z niej skorzystać i klikamy Enter.
    Pobieranie domyślnej listy
  8. Przy pytaniu o instalację interfejsu administracyjnego, polecam wybrać “Yes”. Pozwoli to nam o wiele łatwiej zarządzać Pi-hole i jego możliwościami z poziomu przeglądarki.
    Admin interfejs
  9. Przy zapytaniu o serwer Web (potrzebny do panelu administracyjnego) ponownie klikamy “Yes”.
  10. Ostatnie pytanie, dotyczy zbierania logów dotyczących aktywności oraz blokowanych stron. Tutaj też polecam wybrać “Yes”, a następnie zaznaczyć jeden z dostępnych trybów (0=pokazywanie wszystkiego, 1=wyłączanie pokazywania konkretnych domen, 2=wyłączanie pokazywania domen oraz klientów, 3=wyłączenie wszystkich statystyk oprócz tych najbardziej anonimowych). Sam wybrałem tutaj opcję 0, czyli pokazywanie wszystkiego.
    Show Everyting

I to w sumie tyle! Teraz Pi-hole automatycznie skonfiguruje usługę według zaznaczonych wartości.
Jeśli (tak, jak polecałem) wybraliśmy przy konfiguracji instalację interfejsu administracyjnego, to na sam koniec zostanie wyświetlone powiadomienie z adresem, który musimy wprowadzić w przeglądarce oraz hasłem potrzebnym do zalogowania w usłudze.

Konfiguracja Pi-hole w przeglądarce

Aby otworzyć menu konfiguracyjne Pi-hole wystarczy wejść do dowolnej przeglądarki i w jej pasku adresowym wpisać adres_IP_RPI/admin (czyli np. 192.168.1.12/admin). Zaraz po tym trafimy na stronę logowania, gdzie musimy wpisać hasło wyświetlone pod koniec instalacji. Alternatywnie, jeśli chcemy zmienić nasze hasło dla panelu Pi-hole, to możemy wpisać w terminalu komendę sudo pihole -a -p i samodzielnie wpisać nasze hasło.

Logowanie do Pi-hole

Poniżej opisuję najważniejsze funkcje/rzeczy, które można znaleźć/zmienić w panelu Pi-Hole.

Statystyki dotyczące blokowania reklam

Pierwszym co zobaczymy po zalogowaniu do panelu Pi-hole, będą statystyki dotyczące podłączonych urządzeń oraz zablokowanych połączeń/reklam i innych niedogodnych rzeczy. Możemy tam np. sprawdzić, ile zapytań wykonaliśmy od instalacji Pi-Hole, jaki procent z nich został zablokowany, które domeny były blokowane najczęściej, czy też, na których urządzeniach zablokowaliśmy najwięcej reklam. Oprócz tego w lewym górnym rogu zobaczymy ogólne obciążenie naszego Raspberry Pi oraz temperaturę jego podzespołów. Dzięki tym wszystkim statystyką możemy dokładnie monitorować, jak funkcjonują nasze urządzenia w sieci oraz jak efektywne jest Pi-hole w naszym przypadku.

Statystyki Pi-hole

Dodawanie nowych Adlist/wykluczonych domen

Po skonfigurowaniu Pi-hole w sposób pokazany powyżej, będziemy mieli tylko jedną domyślną listę zablokowanych domen. Jest ona niezła w blokowaniu reklam dla większości stron, ale na pewno nieidealna. Jeśli chcemy zwiększyć skuteczność blokowania reklam lub lepiej zabezpieczyć naszą sieć, to dobrym pomysłem będzie dodanie dodatkowych list do Pi-hole. Aby to zrobić:

  1. Wchodzimy do panelu administracyjnego Pi-hole.
  2. Przechodzimy do zakładki “Adlists”.
  3. W polu “Address” wklejamy link do listy z wykluczonymi domenami.
  4. Zaznaczamy przycisk “Add”, by dodać listę.
    Dodawanie ad-listy
  5. Teraz otwieramy zakładkę “Tools” i wybieramy narzędzie “Update Gravity”.
  6. Klikamy niebieski przycisk Update — po wykonaniu tej czynności lista powinna zostać zaktualizowana, a domeny na niej obecne zaczną być blokowane. Tę czynność warto powtarzać co kilka tygodni/miesięcy, aby zapewnić aktualność listy.
    Update Gravity

Jeśli chodzi o listy, które warto dodać, to na pewno dobrym pomysłem będzie zastosowanie listy domen niebezpiecznych utrzymywanych przez zespół Cert Polska. Owa lista kompatybilna z Pi-hole jest dostępna pod tym adresem: https://hole.cert.pl/domains/domains_hosts.txt

Inne listy zweryfikowane przez społeczność można też znaleźć na stronie https://firebog.net/

Trzeba tylko pamiętać, że dodanie zbyt dużej liczby list może potencjalnie spowodować problemy, więc najlepiej dodawać je pojedynczo i testować przez kilka dni.

Lokalny DNS dla innych urządzeń w sieci

Bardzo ciekawą opcją dodaną niedawno do Pi-hole jest DNS dla urządzeń z sieci lokalnej. Dzięki temu rozwiązaniu możemy przypisać praktycznie dowolną nazwę do urządzenia z sieci lokalnej, co będzie niezwykle przydatne, gdy mamy w sieci serwer WWW, serwer Plex oraz inne urządzenia, z którymi często się łączymy. Normalnie musielibyśmy znać adres IP każdego naszego urządzenia, a dzięki lokalnemu DNS możemy łatwo zamienić adres IP na prostszą i czytelniejszą nazwę.
Kiedy chcemy dodać adres do lokalnego DNS zarządzanego przez Pi-hole:

  1. Otwieramy panel administracyjny Pi-hole i klikamy na zakładkę “Local DNS”.
  2. Najpierw wchodzimy w “DNS Records”.
  3. Teraz w polu “Domain” wpisujemy wymyśloną przez nas nazwę, z której chcemy korzystać, a w polu “IP Address” wklejamy adres IP urządzenia z naszej sieci (przykładowo: pi.local dla RPI z adresem 192.168.1.14). Klikamy “Add”, by dodać go do listy. Co do zasady tego typu rekord powinniśmy do przypisania fizycznego komputera lub maszyny wirtualnej obecnej w sieci. Jest to tak zwany rekord A.
    Dodawanie rekordu A
  4. Jeśli oprócz rekordu A, chcemy też dodać CNAME record (tak zwany alias), to ponownie klikamy na “Local DNS” i zaznaczamy “CNAME Records”. Tutaj w polu “Domain” wpisujemy nazwę, z której będziemy chcieli korzystać, a w polu “Target Domain” wpisujemy ustaloną w poprzednim punkcie nazwę domeny przypisaną do adresu IP danego urządzenia (rekord A). Co do zasady rekordy CNAME powinny być używane dla usług (np. dla serwera Plex). Poprzez zmapowanie CNAME do nazwy naszej domeny, a nie bezpośrednio do adresu IP możemy zabezpieczyć się przed ewentualną zmianą IP urządzenia. Przykładowo jeśli mamy serwer Plex na komputerze w naszej sieci i we wszystkich naszych konfiguracjach zastosowaliśmy CNAME record, to po ewentualnej zmianie IP komputera, możemy po prostu odpowiednio zmodyfikować nasz rekord A w ustawieniach Pi-Hole i wszystko powinno działać poprawnie. W przeciwnym wypadku musielibyśmy manualnie zmieniać IP/rekord A w ustawieniach aplikacji na wszystkich urządzeniach korzystających z serwera Plex.
    Dodawanie Cname

Odblokowywanie i blokowanie poszczególnych domen

Niestety czasem przy przeglądaniu Internetu z wykorzystaniem Pi-Hole, będziemy mogli zauważyć, że nasza czarna dziura działa trochę “zbyt efektywnie” i zablokuje rzeczy, których raczej nie powinna zablokować. Dobrym przykładem są tutaj na przykład linki partnerskie z Aliexpress, których kliknięcie spowoduje wyświetlenie klasycznej wiadomości “kurza twarz”. Inna sytuacja, która będzie wymagała naszej uwagi, to taka, że trafimy na domenę, która powinna być zablokowana, a jednak tak nie jest.

Na szczęście w panelu Pi-hole można to dość łatwo naprawić. W tym celu:

  1. Otwieramy panel Pi-hole.
  2. W innej karcie/na innym urządzeniu wchodzimy na stronę, która nie działa poprawnie lub stronę, którą chcemy zablokować.
  3. W panelu Pi-Hole przechodzimy do zakładki Query Log.
  4. Wśród ostatnich zapytań (zablokowane zaznaczone na czerwono/działające poprawnie na zielono) szukamy zapytania z nazwą domeny.
  5. Klikamy przycisk “Whitelist”/”Blacklist” z prawej strony, aby ją odblokować lub zablokować.
    Wyłączanie blokowania dla domeny Pi-hole

Manualne blokowanie/odblokowywanie jednej domeny

Alternatywnie, zamiast odblokowywać domenę z logów, możemy też dodać domenę do White listy/Black listy wchodząc do zakładki “Domains”. Tam po wpisaniu adresu domeny w polu “Domain” i kliknięciu przycisku “Add to Whitelist” (odblokowanie) bądź “Add to Blacklist” (zablokowanie) osiągniemy zamierzony efekt.

Tworzenie grup użytkowników

W panelu administracyjnym Pi-hole łatwo stworzymy grupy składające się z różnych użytkowników. Pozwoli to nam m.in. na dodanie blokowania domeny lub adlisty tylko dla wybranych użytkowników w sieci. Kiedy chcemy stworzyć taką grupę:

  1. Upewniamy się, że urządzenia, które chcemy dodać do grupy, korzystają z Pi-Hole.
  2. W panelu Pi-Hole wchodzimy do zakładki “Groups”.
  3. Teraz w polu “Name wpisujemy nazwę dla grupy”, a następnie klikamy przycisk “Add”. Opcjonalnie możemy też dodać opis grupy w polu “Description”.
    Tworzenie grupy
  4. Po utworzeniu grupy wchodzimy do zakładki “Clients”.
  5. Klikamy na listę opisaną jako “Known clients” i zaznaczamy na niej wybrane urządzenie. Klikamy “Add”, by dodać je do listy klientów.
    Dodawanie klienta
  6. Na liście klientów w polu “Group assignment” zmieniamy domyślną opcję, na nazwę wcześniej utworzonej grupy i zatwierdzamy ją przyciskiem “Apply”.
    Wybór grupy dla klienta w Pi-hole
  7. Po wszystkim wchodzimy do zakładki “Domains” lub “Adlist” i przy nazwie domeny/listy, która ma być stosowana tylko w obrębie danej grupy, zmieniamy “Group assignment” z “Default” na nazwę naszej grupy.
    Grupu Assignment

Wyłączanie blokowania

Jeżeli coś w naszej sieci nie działa poprawnie i nie jesteśmy kompletnie pewni, czy winowajcą jest Pi-Hole, to dobrym pomysłem będzie chwilowe wyłączenie blokowania i zawężenie podejrzanych. W tym celu:

  1. Wchodzimy do panelu Pi-Hole.
  2. Klikamy na “Disable Blocking”.
  3. Zaznaczamy, na jak długo blokowanie ma zostać wyłączone (od góry: nieskończoność, 10 sekund, 30 sekund, 5 minut, własny czas).
    Wyłączenie blokowania

Ustawianie Pi-hole jako domyślnego DNS

Po skonfigurowaniu Pi-Hole na RPI wystarczy już tylko ustawić adres IP komputerka, jako domyślny DNS dla naszego urządzenia.

Jeśli chcemy, żeby “ochrona” objęła całą sieć, to powinniśmy dodać wspomniany adres bezpośrednio na routerze. Alternatywnie możemy też ustawić DNS manualnie w ustawieniach połączenia na danym urządzeniu. Obie te opcje (w wariantach dla różnych systemów operacyjnych) pokazuję poniżej.

Po skonfigurowaniu Pi-hole na danym urządzeniu warto sprawdzić efekty jego działania np. na stronie speedtest.net, która standardowo jest wręcz usiana reklamami.

Na Routerze przez zmianę DNS

Pierwszą opcją na ustawienie Pi-Hole na routerze, jest zmiana domyślnych adresów DNS. W tym celu:

  1. Wchodzimy i logujemy się na stronę konfiguracyjną Routera (tak samo, jak przy ustalaniu statycznego IP).
  2. Szukamy zakładki “Network/WAN” lub podobnej i do niej wchodzimy. Ponownie, jeśli macie problem ze znalezieniem poprawnej opcji, to najlepiej wygooglować frazę “zmiana DNS nazwa_routera”.
  3. Po otwarciu odpowiedniej zakładki wpisujemy w polu DNS Server/Primary DNS Server adres IP malinki z działającym Pi-hole.
  4. Jeśli mamy inne urządzenie z Pi-hole w sieci to wpisujemy jego adres do drugiego pola oznaczonego jako “DNS”. W innym przypadku najlepiej wpisać w tym polu adres publicznego dostawcy DNS (czyli np. 1.1.1.1 dla CloudFlare lub 8.8.8.8 dla Google).
  5. Po wprowadzeniu wszystkich zmian zapisujemy zmiany przyciskiem “Save”.
    Ustawienie DNS na routerze

I to już wszystko! Teraz każde nasze urządzenie łączące się z routerem będzie korzystało z usługi Pi-hole.

Na Routerze przez konfigurację DHCP

Alternatywnie, zamiast zmieniać DNS na Routerze, możemy też skonfigurować serwer DHCP na Pi-hole. Będzie to bardzo przydatne w przypadku niektórych urządzeń od operatorów (np. Orange Funbox), gdzie jakakolwiek zmiana DNS jest po prostu zablokowana. W celu ustawienia Pi-hole jako naszego serwera DHCP:

  1. Wchodzimy na stronę Routera i przechodzimy zakładki “DHCP”.
  2. Szukamy tam linijki “Start IP Addresss”/”Początkowy adres IP” oraz “End IP Address”/”Końcowy adres IP”.
    Start i End IP
  3. Na drugiej karcie wchodzimy na stronę konfiguracyjną Pi-hole. Następnie otwieramy tam zakładkę “Settings” i w górnej części zaznaczamy “DHCP”.
  4. W polu DHCP Settings” w Pi-hole zaznaczamy opcję “DHCP server enabled”. Następnie w polu “From” wpisujemy początkowy adres IP a w polu “To” końcowy adres IP, które przed chwilą podejrzeliśmy na routerze. W polu “Router” poprawiamy adres IP naszego routera jeśli zajdzie taka potrzeba.
    Włączenie DHCP na Pi-hole
  5. Powracamy do strony konfiguracyjnej routera i w opcjach serwerach DHCP zmieniamy opcję “Enable”/Włączony”, na “Disable”/”Wyłączony”. Zapisujemy zmiany przyciskiem “Save”/”Zapisz”.
  6. Na sam koniec na stronie Pi-hole zjeżdżamy w dół i klikamy przycisk “Save”.

Od teraz Pi-hole powinno być poprawnie wykorzystywane jako serwer DHCP + bloker reklam w naszej sieci.

Na komputerze z Windowsem

Kiedy chcemy zmienić DNS na komputerze z Windowsem:

  1. Wyszukujemy i otwieramy Panel Sterowania.
  2. Przechodzimy do zakładki “Sieć i Internet” > “Centrum sieci i udostępniania”, a następnie klikamy na nazwę obok wartości “Połączenia” (w moim przypadku jest to Ethernet).
    Wybór połączenia panel sterowania
  3. W otwartym okienku wybieramy “Właściwości”.
  4. Teraz zaznaczamy opcję “protokół Internetowy w wersji 4 (TCP/IPv4)” i znowu klikamy na “Właściwości”.
    Właściwości IPv4
  5. Zmieniamy domyślną opcję operowania DNS z “Uzyskaj adres serwera DNS automatycznie” na “Użyj następujących adresów serwerów DNS”. Zaraz po tym w dwóch poniższych polach wpisujemy adresy IP malinek z działającym Pi-hole. Jeśli nie mamy drugiego komputera pracującego jako DNS Sinkhole, to jako “alternatywny serwer DNS” możemy ustawić np. 1.1.1.1 (Cloudflare), albo 8.8.8.8 (Google).
    Manualne ustawienie DNS Pi-hole dla Windows
  6. Klikamy OK, aby zapisać zmiany.

Na Macu

W celu manualnego dodania serwerów DNS Pi-hole na macOS:

  1. Klikamy na menu Apple w lewym górny rogu i wybieramy “Ustawienia systemowe” (macOS 13 i wyżej) lub “Preferencje systemowe” (macOS 12 i niżej).
  2. Wchodzimy do kategorii związanej z siecią oraz Wi-Fi.
  3. Zaznaczamy nazwę naszego połączenia sieciowego, a następnie klikamy na “Szczegóły”/”Zaawansowane”.
  4. Teraz przechodzimy do zakładki “DNS”.
  5. Klikamy przycisk “+” i wpisujemy adres IP naszej malinki z Pi-hole.
  6. Kiedy chcemy dodać drugi adres, ponownie klikamy + i wpisujemy tam adres IP drugiego urządzenia z działającym Pi-hole lub adres serwera DNS publicznego dostawcy.

Na Linuxie

Aby manualnie zmienić DNS na Linuxie:

  1. Wchodzimy do ustawień systemu.
  2. Szukamy, a następnie przechodzimy do zakładki związanej z Internetem/siecią Wi-Fi.
  3. Zaznaczamy sieć, z którą jesteśmy połączeni, a zaraz po tym klikamy na zakładkę IPv4 (na niektórych dystrybucjach trzeba najpierw nacisnąć przycisk “edytuj”, aby okienko z odpowiednią zakładką zostało pokazane).
  4. Teraz:
    1. Jeśli korzystamy interfejsu Gnome lub podobnego, to klikamy na suwak przy opcji “Automatic”.
    2. Jeśli korzystamy z interfejsu KDE lub podobnego, to zmieniamy opcję “Automatic”, na “Automatic (Only addresses)”.
  5. Klikamy na pozycję DNS Servers/Other DNS Servers i wpisujemy w niej adres IP naszej malinki.
  6. Jeśli chcemy dodać drugi adres serwera DNS (np. dla drugiej malinki lub publicznego dostawcy) to klikamy na ikonę listy z prawej strony i wpisujemy odpowiedni adres IP.

Na Androidzie

W celu dodania Pi-hole jako DNS na Androidzie:

  1. Wchodzimy do ustawień telefonu i przechodzimy do kategorii Wi-Fi.
  2. Klikamy na nazwę naszego Wi-Fi, aby otworzyć ustawienia sieci.
  3. Zmieniamy Ustawienia IP z “DHCP” na “Statyczne”.
  4. Zostawiamy pierwsze opcje jako domyślne i zmieniamy tylko adres DNS 1 (oraz DNS2 jeśli mamy dwa ustawione RPI) na adresy komputerków z Pi-hole. Jeśli nie mamy drugiego Pi-hole to przy opcji DNS2 możemy wprowadzić np. publiczne adresy od Google (8.8.8.8) albo od Cloudflare (1.1.1.1).
    Ustawienie DNS na Androidzie
  5. Zapisujemy zmiany ptaszkiem w prawym górnym rogu.
  6. Wracamy do głównej zakładki ustawień i w wyszukiwarce wpisujemy “Prywatny DNS”.
  7. Klikamy na pierwsze wyświetlaną opcję i upewniamy się, że jest ona wyłączona.
    Wyłączenie prywatnego DNS

Na iOS

Kiedy chcemy manualnie zmienić adres DNS na iPhone:

  1. Otwieramy ustawienia systemu.
  2. Przechodzimy do zakładki Wi-Fi.
  3. W prawym górnym rogu klikamy niebieski przycisk “edycja”. Jeśli zostaniemy o to zapytani to potwierdzamy tę operację przez Face ID/Touch ID.
  4. Teraz wybieramy ikonkę “i” przy nazwie naszej sieci domowej.
  5. Zjeżdżamy w dół i zmieniamy opcje “Konfiguruj DNS” z “Automatycznie” na “Ręcznie”.
  6. Jeśli w otwartej zakładce widzimy już adres IP naszego Routera, to usuwamy go czerwonym przyciskiem “usuń”.
  7. Zaznaczamy “dodaj”, a zaraz po tym w dodanym polu wpisujemy adres IP naszego Raspberry Pi.
    Zmiana DNS na iPhone
  8. Ponownie klikamy “dodaj”, ale tym razem wpisujemy adres IP naszego drugiego urządzenia Pi-hole lub jednego z publicznych DNS (np. 8.8.8.8 dla Google albo 1.1.1.1 dla Cloudflare).

Czym jest Unbound i po co tego używać?

Przechodzimy do kolejnej części naszej sieciowej układanki, czyli do Unbound.

Domyślnie Pi-Hole jest serwerem DNS rozpoznającym tylko zapytania do zablokowania (czyli reklamy, skrypty telemetrii, podejrzane strony, etc.). Wszystkie inne zapytania są przekazywane do publicznego DNS wybranego przez nas przy konfiguracji. Problemy z takim zachowaniem mogą być dwa:

  • Właściciel publicznego serwera DNS (np. Google) może potencjalnie odczytać naszą aktywność w sieci z wykorzystaniem logów.
  • Istnieje potencjalne ryzyko zatrucia serwera DNS (sytuacja, w której atakujący podmienia adres IP w serwerze DNS, co sprawia, że po wejściu na daną stronę zostajemy przekierowani pod inny adres IP)

Rozwiązaniem obu tych problemów ma być Unbound. Unbound to rekursywny, lokalny serwer DNS, który samodzielnie kontaktuje się z centralnymi serwerami DNS, aby uzyskać odpowiedź na nasze zapytanie. W pewnym sensie Unbound eliminuje więc potrzebę korzystania z pośrednika, jakim jest Google czy Cloudflare

Jako że to my zarządzamy naszym serwerem Unbound, to nie musimy przejmować się zbieraniem logów czy też zatruciem serwera DNS. To właśnie z tego powodu Unbound powinno zapewnić nam teoretycznie lepszą prywatność oraz bezpieczeństwo.

Po skonfigurowaniu Unbound zapewne zauważymy, że pierwsze zapytanie do danej strony jest przetwarzane nieco dłużej niż zwykle. Na szczęście po tych pierwszych odwiedzinach Unbound odkłada informacje o stronie do swojej pamięci Cache, dzięki czemu następnym razem zostanie ona załadowana bardzo szybko (często nawet minimalnie szybciej niż przy publicznym DNS).

Instalacja i konfiguracja Unbound na Raspberry Pi

W celu zainstalowania Unbound na Raspberry Pi:

  1. Tak samo, jak wcześniej, łączymy się z Raspberry Pi za pomocą SSH.
  2. Wydajemy komendę sudo apt install unbound — zainstaluje to opisywaną aplikację.
    Instalacja Unbound
  3. Wpisujemy komendę sudo nano /etc/unbound/unbound.conf.d/pi-hole.conf — utworzy to nowy, pusty plik konfiguracyjny dla unbound i otworzy go w edytorze tekstowym.
    Edycja pliku Unbound
  4. Do pliku pi-hole.conf wklejamy konfigurację z oficjalnej dokumentacji Pi-hole (widoczna poniżej).
server:

    # If no logfile is specified, syslog is used

    # logfile: "/var/log/unbound/unbound.log"

    verbosity: 0

    interface: 127.0.0.1

    port: 5335

    do-ip4: yes

    do-udp: yes

    do-tcp: yes

    # May be set to yes if you have IPv6 connectivity

    do-ip6: no

    # You want to leave this to no unless you have *native* IPv6. With 6to4 and

    # Terredo tunnels your web browser should favor IPv4 for the same reasons

    prefer-ip6: no

    # Use this only when you downloaded the list of primary root servers!

    # If you use the default dns-root-data package, unbound will find it automatically

    #root-hints: "/var/lib/unbound/root.hints"

    # Trust glue only if it is within the server's authority

    harden-glue: yes

    # Require DNSSEC data for trust-anchored zones, if such data is absent, the zone becomes BOGUS

    harden-dnssec-stripped: yes

    # Don't use Capitalization randomization as it known to cause DNSSEC issues sometimes

    # see https://discourse.pi-hole.net/t/unbound-stubby-or-dnscrypt-proxy/9378 for further details

    use-caps-for-id: no

    # Reduce EDNS reassembly buffer size.

    # IP fragmentation is unreliable on the Internet today, and can cause

    # transmission failures when large DNS messages are sent via UDP. Even

    # when fragmentation does work, it may not be secure; it is theoretically

    # possible to spoof parts of a fragmented DNS message, without easy

    # detection at the receiving end. Recently, there was an excellent study

    # >>> Defragmenting DNS - Determining the optimal maximum UDP response size for DNS <<<

    # by Axel Koolhaas, and Tjeerd Slokker (https://indico.dns-oarc.net/event/36/contributions/776/)

    # in collaboration with NLnet Labs explored DNS using real world data from the

    # the RIPE Atlas probes and the researchers suggested different values for

    # IPv4 and IPv6 and in different scenarios. They advise that servers should

    # be configured to limit DNS messages sent over UDP to a size that will not

    # trigger fragmentation on typical network links. DNS servers can switch

    # from UDP to TCP when a DNS response is too big to fit in this limited

    # buffer size. This value has also been suggested in DNS Flag Day 2020.

    edns-buffer-size: 1232

    # Perform prefetching of close to expired message cache entries

    # This only applies to domains that have been frequently queried

    prefetch: yes

    # One thread should be sufficient, can be increased on beefy machines. In reality for most users running on small networks or on a single machine, it should be unnecessary to seek performance enhancement by increasing num-threads above 1.

    num-threads: 1

    # Ensure kernel buffer is large enough to not lose messages in traffic spikes

    so-rcvbuf: 1m

    # Ensure privacy of local IP ranges

    private-address: 192.168.0.0/16

    private-address: 169.254.0.0/16

    private-address: 172.16.0.0/12

    private-address: 10.0.0.0/8

    private-address: fd00::/8

    private-address: fe80::/10


Po wszystkim musimy tylko zrestartować malinkę lub sam serwis unbound za pomocą komendy sudo service unbound restart.

Poprawność działania usługi możemy sprawdzić wpisując komendę dig gameodyssey.pl @127.0.0.1 -p 5335 — efekt wydania takiej komendy powinien być podobny do tego, co jest widoczne na poniższym obrazku:

Dig gameodyssey.pl

Ustawienie Unbound w połączeniu z Pi-hole

Teraz gdy Unbound jest już włączony, musimy jeszcze dodać go jako DNS do Pi-Hole, aby mógł być on wykorzystywany przez nasze urządzenia. W tym celu:

  1. Otwieramy przeglądarkę i wchodzimy na stronę konfiguracyjną Pi-hole (adres_IP_malinki/admin).
  2. Wchodzimy do zakładki “Settings”.
  3. Teraz w górnej sekcji klikamy na “DNS”.
  4. Odznaczamy wszystkie budki w części zatytułowanej “Upstream DNS Servers” po lewej stronie.
    Odznaczenie wszystkich DNS
  5. Klikamy na opcję “Custom 1 (IPv4)” i wpisujemy tam adres 127.0.0.1#5335 — ta opcja sprawi że zapytania DNS będą rozwiązywanie przez localhosta (czyli nasze urządzenie) oraz serwi Unbound. Jeśli chcemy to możemy tutaj też zaznaczyć “Custom 2 (IPV4) i wpisać tam adres publicznego serwera DNS lub adres IP drugiej malinki z Unbound zakończony ciągiem #5335.
    Ustawienie niestandardowego DNS dla Pi-hole
  6. Zjeżdżamy na sam dół strony i zapisujemy zmiany niebieskim przyciskiem “Save”.
    Zapisywanie zmian w Pi-hole

To już wszystko! Teraz Pi-hole (i wszystkie urządzenia podłączone do niego) powinny już używać Unbound. Możemy to bardzo łatwo potwierdzić, wchodząc w zakładkę “Query Log”. Nowe zapytania rozwiązywane przez Unbound powinny mieć tam status “OK (answered by localhost#5335).

Pi-hole + Unbound a dodatki do blokowania reklam — porównanie

Na koniec chciałem zrobić małe porównanie pomiędzy Pi-hole a dodatkami do przeglądarek typu uBlock Origin, z których korzystam na co dzień od wielu lat.

Więc tak, plusy Pi-hole w takim porównaniu to:

  • Działanie w dowolnej aplikacji — Chyba największą zaletą Pi-hole jest to, że blokowanie reklam działa praktycznie w dowolnej aplikacji. Nie ważne czy mówimy tu o przeglądarce, aplikacji serwisu społecznościowego, czy nawet o grze mobilnej: po ustawieniu blokera DNS reklamy w tych aplikacjach zostaną zablokowane (o ile jest to możliwe). W przypadku dodatków do przeglądarki (jak podpowiada zresztą sama nazwa) możemy liczyć na ochronę przed reklamami i skryptami tylko w obrębie przeglądarki, na której zostały one aktywowane.
  • Możliwość ustawienia praktycznie na dowolnym urządzeniu/dla całej sieci — sporą zaletą Pi-hole jest też na pewno to, że może ono funkcjonować praktycznie na dowolnym urządzeniu w naszej sieci. Od komputera, poprzez telefony, aż po inteligentne telewizory, czy nawet lodówki. Wszystkie te urządzenia możemy “wyczyścić” z reklam i podejrzanych usług.
  • Teoretycznie lepsza prywatność/bezpieczeństwo z wykorzystaniem Unbound — Pi-hole w połączeniu z Unbound teoretycznie powinno zapewniać lepszą prywatność oraz bezpieczeństwo niż prosty plugin do przeglądarki. W końcu przy takiej konfiguracji publiczni dostawcy DNS nie mają dostępu do naszej aktywności w sieci i nie musimy się też przejmować ewentualnym zatruciem serwera. W praktyce nie jestem pewien czy ta różnica byłaby dla kogoś “odczuwalna”.
  • Funkcja prywatnego DNS — Bardzo ciekawym rozwiązaniem dla osób wieloma lokalnymi serwisami może okazać się funkcja prywatnego DNS, której oczywiście nie znajdziemy w przypadku przeglądarkowych pluginów.

Minusy Pi-hole względem dodatku, takiego jak uBlock Origin to między innymi:

  • Brak blokowanie reklam w serwisach samodzielnie hostujących reklamy — Największa wada związana z Pi-hole to zapewne brak możliwości blokowania reklam w serwisach samodzielnie hostujących reklamy. Dotyczy to między innymi reklam na YouTube czy na Twitch.tv. Ublock Origin z takimi reklamami nie ma żadnego problemu.
  • Trudniejsza konfiguracja — Postawienie Pi-hole wiąże się też na pewno z nieco trudniejszą konfiguracją. W przypadku pluginu do przeglądarki wystarczą 2-3 kliknięcia, a z Pi-hole cały proces jest trochę bardziej zaawansowany (choć nie powiedziałbym, że jakoś specjalnie trudny).
  • Konieczność posiadania odpowiedniego sprzętu — Do Pi-hole najlepiej sprawdzi się dedykowane urządzenie, na którym zainstalujemy tę usługę, jednak zakup takowego sprzętu wiąże się z jakimiś kosztami. Przy pluginach takimi rzeczami po prostu nie musimy się przejmować.
  • Brak możliwości wyłączenia blokowania na danej stronie — W moim odczuciu dość irytującym problemem z Pi-hole jest brak możliwości wykluczenie danej strony z blokowania reklam. W przypadku napotkania strony, która nie pozwala na stosowanie adblocka lub po prostu takiej, która chcemy wesprzeć finansowo, będziemy więc musieli tymczasowo wyłączyć całe pi-hole lub wyszukać wszystkich blokowanych dostawców i dodać ich do whitelisty (co poskutkuje też pokazywaniem reklam od tego dostawcy na innych stronach). Z dodatkiem typu uBlock origin tylko jedno kliknięcie dzieli nas od trwałego wyłączenia reklam tylko w obrębie odwiedzanej strony.
  • Działa tylko w sieci lokalnej (możliwe do rozwiązania z VPN) — Przy domyślnej konfiguracji Pi-hole oraz Unbound będą działać tylko i wyłącznie w obrębie naszej lokalnej, a dodatek do przeglądarki będzie działać niezależnie od miejsca pobytu. Ten problem możemy jednak rozwiązać konfigurując na Raspberry-Pi usługę VPN (co jest pokazane w oficjalnej dokumentacji Pi-hole).

Jak widać, oba te rozwiązania mają swoje mniejsze/większe wady oraz zalety. Przy wojażach przez Internet dobrym pomysłem może być więc wykorzystanie zarówno pluginów przeglądarkowe jak i Pi-hole, by zapewnić sobie największe bezpieczeństwo oraz komfort wynikający z braku wyskakujących okienek, czy reklam (tutaj warto przemyśleć wyłączenie blokowania na znanych stronach, jeśli chcemy, by twórca otrzymał wynagrodzenie z reklam).

Podsumowanie

Mam nadzieję, że ten poradnik pomógł wam przy konfiguracji Pi-Hole w waszej sieci lokalnej. W razie jakichkolwiek pytań możecie zadać je w komentarzu, a postaram się odpowiedzieć!

Podobał Ci się artykuł i chcesz wesprzeć tworzenie podobnych treści? Możesz postawić mi kawę/herbatę (zapewne to drugie) w serwisie buycoffee.to

Zaproszenie na kawę

Komentarz

Informacja: W celu wykluczenia z dyskusji botów komentarze są zatwierdzane ręcznie, dlatego może minąć kilka godzin, zanim pojawią się one na stronie.

2 odpowiedzi na „Jak skonfigurować Pi-hole + Unbound na Raspberry Pi — Poradnik

  1. Awatar Paweł
    Paweł

    Można prosić o sprawdzoną listę blokad polskich reklam?

    1. Hej, u siebie korzystam praktycznie tylko z domyślnej listy do blokowania reklam dostarczanej przez pi-hole i block listy od Cert. W większości przypadków raczej nie spotykam się z reklamami na polskich stronach, dlatego nic specjalnego tutaj do konfiguracji nie wprowadzałem i raczej nie będę w stanie pomóc z taką listą do blokowania polskich reklam :/

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *