GNU/Linux >> Znalost Linux >  >> Panels >> Docker

Jak nastavit Pi-hole na Synology NAS

Dnes se podíváme na to, jak nastavit Pi-hole na Synology NAS.

Podíváme se na dvě různé metody, které obě používají Docker k instalaci Pi-hole na Synology NAS. První metoda, na kterou se podíváme, je „snazší“ a měla by být použita, pokud nechcete do svého NAS používat SSH. Tato metoda využívá hostitelské síťové rozhraní. Druhá metoda vyžaduje, abyste do svého Synology NAS zadali SSH, abyste vytvořili síťové rozhraní macvlan pro Docker. Abych odpověděl na otázku, kterou si myslíte, obě mají stejnou funkcionalitu, ale první možnost bude používat IP adresu vašeho NAS (a jiný webový port), zatímco druhá možnost (se síťovým rozhraním macvlan) bude mít vlastní IP adresa.

Než začneme,je nesmírně důležité poznamenat, že redundantní servery DNS je velmi důležité. Důrazně doporučuji, abyste si koupili levný Raspberry Pi Zero a nakonfigurovali na něm Pi-hole tak, abyste měli dva servery Pi-hole DNS. To zajistí, že po restartu vašeho NAS vaši klienti nepřijdou o služby rozlišení DNS.

1. Počáteční kroky

Tyto kroky je třeba provést pro obě instalace, takže tyto kroky nejprve odstraníme.

1. Nainstalujte Docker z Centra balíčků Synology.

2. Musíme vytvořit dvě složky, do kterých budeme mapovat náš Docker image. Ve výchozím nastavení Docker vytvoří složku s názvem docker po dokončení instalace. Uvnitř této složky vytvoříme složku s názvem pihole . Uvnitř této složky vytvoříme dvě podsložky. Vytvořte jednu složku s názvem pihole a další složka s názvem dnsmasq.d .

2. Host Network Interface (Možnost 1) – Synology NAS Pi-hole Setup

Jak je uvedeno výše, tato možnost bude používat hostitelské síťové rozhraní. Z tohoto důvodu budete muset přistupovat k Pi-hole pomocí IP adresy vašeho Synology NAS a definovaného portu.

3. Otevřete Docker , přejděte do Registru a vyhledejte Pi-hole. Dvakrát klikněte na Díra/Díra (oficiální obrázek dokovacího zařízení Pi-hole) a stáhněte si jej.

4. Vyberte Nejnovější . Obrázek se nyní stáhne.

5. Poklepáním na obrázek Pi-hole spusťte konfiguraci Dockeru.

6. Zadejte název kontejneru a poté vyberte Pokročilé Nastavení . POZNÁMKA :Pokud máte v úmyslu používat Pi-hole pro DHCP, musíte zaškrtnout Spustit kontejner s vysokým oprávněním.

7. Nyní musíme nakonfigurovat Pokročilé Nastavení .

  • Zaškrtněte možnost Povolit automatické restartování.

  • V části Hlasitost části, musíme namapovat složky, které jsme vytvořili, na interní umístění Pi-hole Docker. Vyberte možnost Přidat Složka a přidejte dnsmasq.d složku a zadejte cestu pro připojení jako /etc/dnsmasq.d . Proveďte totéž pro složku pihole s cestou pro připojení jako /etc/pihole .

  • V části Síť , vyberte možnost Použít stejnou síť jako hostitel Docker.

  • Přejděte do Prostředí sekce . Budeme muset přidat několik proměnných.
  • Klikněte na + podepište a přidejte tyto proměnné:
    • WEBPASSWORD: heslo, se kterým chcete přistupovat k portálu pro správu.
    • WEB_PORT: Port, pomocí kterého chcete přistupovat k portálu pro správu. To musí být něco, co se nepoužívá. Obecně platí, že něco z 8000 by mělo být v pořádku.
    • DNSMASQ_LISTENING: místní
    • ServerIP: Toto již existuje. Změňte toto na IP adresu vašeho NAS.

8. Klikněte na Použít k vytvoření ukotvitelného kontejneru Pi-hole.

9. Protože používáte hostitelské síťové rozhraní, budete muset otevřít port 53 a výše vybraný „WEB_PORT“ (použil jsem 8888) na bráně Synology. Toto je výchozí port DNS a port pro webový portál Pi-hole. Pokud chcete vědět, jak nakonfigurovat firewall, vytvořil jsem tutoriál zde.

10. Otevřete Ovládací panely a přejděte na Firewall . Vyberte možnost Upravit Pravidla .

11. Vytvořte pravidlo s vlastním portem které jste definovali výše. Protokol lze ponechat jako TCP .

12. Vytvořte pravidlo s portem DNS což je 53 . V části Protokol vyberte Vše .

13. Ujistěte se, že pravidla jsou nad vaším Odmítnout vše pravidlo.

14. Nyní byste měli mít přístup k Pi-hole pomocí této webové adresy:http://[NAS IP_ADDRESS]:[WEB_PORT]/admin

15. Proces instalace je nyní dokončen. Přejděte do části Konfigurace DNS a dokončete proces konfigurace.

3. Síťové rozhraní Macvlan (možnost 2) – Jak nastavit Pi-hole na zařízení Synology NAS

V době psaní tohoto příspěvku nemohu získat v5.1.1 (nejnovější verzi), aby fungovala s touto metodou. Testoval jsem několikrát a mohu potvrdit, že verze 5.0 a 5.1 fungují správně.

Zdá se, že verze 5.1.2 vyřešila problém, který způsobila verze 5.1.1!

Jak je uvedeno výše, výhody dokončení nastavení tímto způsobem spočívají v tom, že můžeme našemu Pi-hole přidělit vlastní IP adresu. To vyžaduje, abychom SSH do našeho Synology NAS.

1. Ujistěte se, že můžete SSH do svého Synology NAS. Otevřete Ovládací panely , vyberte Terminál a SNMP a Povolit SSH služby. Pokud používáte bránu Synology Firewall, ujistěte se, že povolujete provoz na portu 22. Vytvořil jsem video o tom, jak zapojit SSH do vašeho Synology NAS, pokud máte nějaké problémy.

2. SSH do vašeho Synology NAS pomocí vašeho oblíbeného nástroje SSH. První věc, kterou musíme udělat, je vytvořit resolv.conf aby Docker mohl získat správné adresy serveru DNS. Tento krok pro vás nemusí být povinný, ale bez tohoto jsem měl velké problémy s konfigurací Pi-hole. Spusťte tyto příkazy:

cd /[VOLUME_#]/docker/pihole
sudo vi resolv.conf

3. Do vytvořeného souboru zadejte dva řádky níže a soubor uložte. Pokud si nejste jisti, jak používat editor vi, můžete se naučit, jak jej používat zde. POZNÁMKA :Pokud s tím máte potíže, vytvořte místní soubor s názvem resolv.conf pomocí dvou řádků níže a nahrajte jej do složky pihole v systému DSM.

nameserver 127.0.0.1
nameserver 8.8.8.8

4. Nyní, když je soubor vytvořen, musíme vytvořit síťové rozhraní docker macvlan. Nejprve musíme zjistit, jaká síťová rozhraní aktuálně existují (na vašem Synology NAS) a poznamenat si název adaptéru. Chcete-li to provést, spusťte níže uvedený příkaz a poznamenejte si název síťového rozhraní, které má IP adresu vašeho Synology NAS (v tomto příkladu je moje eth0).

ifconfig

5. Dále musíte spustit níže uvedený příkaz a nahradit správnou podsíť (většina je ve výchozím nastavení 192.168.1.0/24). Musíte také vybrat IP adresu, kterou chcete používat a která se aktuálně nepoužívá. Budu používat 192.168.1.198. POZNÁMKA :ph_network bude název sítě (můžete jej nahradit, jak chcete).

sudo docker network create -d macvlan -o parent=eth0 --subnet=192.168.1.0/24 --gateway=192.168.1.1 --ip-range=192.168.1.198/32 ph_network

Naše síť je nyní vytvořena. Poté můžeme ukončit naši relaci SSH a deaktivovat ji v DSM (pokud ji nebudete používat). Pokud jej deaktivujete a vytvoříte pro něj pravidlo brány firewall, měli byste pravidlo brány firewall také deaktivovat.

6. Dále musíme vytvořit mostovou síť. To umožní našemu hostiteli (NAS) komunikovat s naším kontejnerem Pi-hole. Otevřete Docker a přejděte na Síť sekce. Vyberte Přidat a zadejte podsíť, která se aktuálně nepoužívá. IP adresa mostu, který vytvářím, bude 192.168.10.2.

7. Naše nové sítě jsou nyní vytvořeny. Dále musíme vytvořit náš kontejner Pi-hole.

8. Otevřete Docker , přejděte do Registru a vyhledejte Pi-hole . Dvakrát klikněte na Díra/Díra (oficiální obrázek dokovacího zařízení Pi-hole) a stáhněte si jej.

9. Vyberte v5.1 . Obrázek se nyní stáhne.

10. Pojmenujte svůj kontejner a poté vyberte Pokročilá nastavení . POZNÁMKA :Pokud máte v úmyslu používat Pi-hole pro DHCP, musíte zaškrtnout Spustit kontejner s vysokým oprávněním.

11. Nyní musíme nakonfigurovat Pokročilá nastavení .

  • Zaškrtněte možnost Povolit automatické restartování.
  • V části Hlasitost části, musíme namapovat složky, které jsme vytvořili, na interní umístění Pi-hole Docker. Vyberte možnost Přidat Složka a přidejte dnsmasq.d složku a zadejte cestu pro připojení jako /etc/dnsmasq.d. Proveďte totéž pro složku Pi-hole s cestou pro připojení jako /etc/pihole .
  • Na rozdíl od první možnosti musíme namapovat náš resolv.conf soubor také. Vyberte Soubor a přejděte na resolv.conf soubor, který jsme vytvořili. Zadejte cestu pro připojení jako /etc/resolv.conf.

  • V síti přidejte dvě sítě, které jsme vytvořili (ph_network, ph_bridge) a odstraňte most síť.

  • Klikněte na + podepište a přidejte tyto proměnné:
    • WEBPASSWORD :heslo, pomocí kterého chcete přistupovat k portálu pro správu.
    • DNSMASQ_LISTENING: místní
    • VIRTUAL_HOST: pihole
    • ServerIP: Toto již existuje. Změňte toto na IP adresu ph_network, kterou jsme vytvořili výše (192.168.1.198).

12. Klikněte na Použít k vytvoření ukotvitelného kontejneru Pi-hole.

13. Nyní byste měli mít přístup k Pi-hole pomocí této webové adresy:http://[IP_ADDRESS]/admin

4. Konfigurace DNS – Jak nastavit Pi-hole na Synology NAS

Nyní, když je nastavení Pi-hole dokončeno, musíme určit způsob, jak nasměrovat naše klienty na náš DNS server. Existují dva hlavní způsoby, jak toho dosáhnout:

  • Nasměrujte server DNS svého routeru na IP adresu serveru Pi-hole. To zajistí, že každé připojené zařízení bude používat Pi-hole jako svůj DNS server.
  • Nasměrujte každého klienta na váš server DNS. To je výhodné, pokud chcete, aby pouze určití klienti používali Pi-hole jako DNS server.
    • Pokyny pro Windows
    • Pokyny pro Mac OS
    • Pokyny pro Linux

Nasměruji servery DNS svých routerů na můj server Pi-hole, protože chci zajistit, aby se k němu připojilo každé zařízení.

5. Závěr

Tento návod vysvětlil, jak nastavit Pi-hole na Synology NAS. Proces není tak špatný a Pi-hole je úžasný! Chvíli jsem to používal, a i když jsem narazil na občasný problém, kdy blokuje něco, co potřebuji, najít to a přidat to na bílou listinu je docela snadný proces.

Ještě jednou upozorním na důležitost redundantních serverů Pi-hole. Mít druhý server DNS má tolik výhod a vzhledem k tomu, že sady Raspberry Pi Zero jsou levné za 25 USD, stojí to za to.

Děkujeme, že jste si přečetli tutoriál. Pokud máte nějaké dotazy, zanechte je prosím v komentářích!


Docker

Jak zkopírovat soubory pomocí Docker cp do vašeho kontejneru Docker

  1. Nainstalujte si Docker a naučte se základní manipulaci s kontejnery v CentOS a RHEL 8/7 – část 1

  2. Jak SSH do kontejnerů Docker [Krok za krokem]

  3. ctop – špičkové rozhraní pro monitorování kontejnerů dockeru

Jak nasadit aplikaci React do produkce pomocí Dockeru a NGINX s API proxy

  1. Jak nastavit Heimdall na Synology NAS

  2. Jak nasadit aplikaci Python Flask API na Docker

  3. Docker vs kontejnerová vs CRI-O:Hloubkové srovnání

Jak nainstalovat Docker Compose na Ubuntu

  1. Použijte Ngnix k Proxy Docker Containers na Ubuntu

  2. Docker Compose Up vs. Start a Down vs. Stop:Rozdíly vysvětleny

  3. Docker pro Mac:Kompletní průvodce instalací