GNU/Linux >> Tutoriels Linux >  >> Panels >> Docker

Comment configurer Pi-hole sur un Synology NAS

Aujourd'hui, nous allons voir comment configurer Pi-hole sur un Synology NAS.

Nous examinerons deux méthodes différentes qui utilisent toutes deux Docker pour installer Pi-hole sur un Synology NAS. La première méthode que nous allons examiner est "plus simple" et doit être utilisée si vous ne souhaitez pas vous connecter en SSH à votre NAS. Cette méthode utilise l'interface réseau hôte. La deuxième méthode nécessite que vous vous connectiez en SSH à votre Synology NAS pour créer une interface réseau macvlan pour Docker. Pour répondre à la question que vous vous posez, ils se retrouvent tous les deux avec la même fonctionnalité, mais la première option utilisera l'adresse IP de votre NAS (et un port web différent) tandis que la seconde option (avec l'interface réseau macvlan) aura la sienne Adresse IP.

Avant de commencer, il est extrêmement important de noter qu'il est très important d'avoir des serveurs DNS redondants. Je vous suggère fortement d'acheter un Raspberry Pi Zero bon marché et de configurer Pi-hole dessus afin d'avoir deux serveurs DNS Pi-hole. Cela garantira que lorsque votre NAS est redémarré, vos clients ne perdent pas les services de résolution DNS.

1. Étapes initiales

Ces étapes doivent être effectuées pour l'une ou l'autre installation, nous allons donc d'abord les éliminer.

1. Installez Docker depuis le Centre de paquets de Synology.

2. Nous devons créer deux dossiers sur lesquels nous allons mapper notre image Docker. Par défaut, Docker créera un dossier nommé docker une fois l'installation terminée. À l'intérieur de ce dossier, nous allons créer un dossier nommé pihole . À l'intérieur de ce dossier, nous allons créer deux sous-dossiers. Créez un dossier nommé pihole et un autre dossier nommé dnsmasq.d .

2. Interface réseau hôte (option 1) - Configuration du Synology NAS Pi-hole

Comme indiqué ci-dessus, cette option utilisera l'interface réseau hôte. Pour cette raison, vous devrez accéder à Pi-hole en utilisant l'adresse IP de votre Synology NAS et un port défini.

3. Ouvrez Docker , accédez au registre , et recherchez Pi-hole. Double-cliquez sur Pi-hole/Pi-hole (image docker Pi-hole officielle) pour la télécharger.

4. Sélectionnez Dernier . L'image va maintenant être téléchargée.

5. Double-cliquez sur l'image Pi-hole pour lancer la configuration Docker.

6. Donnez un nom à votre conteneur, puis sélectionnez Avancé Paramètres . REMARQUE  :Si vous avez l'intention d'utiliser Pi-hole pour DHCP, vous devez cocher Exécuter le conteneur en utilisant des privilèges élevés.

7. Nous devons maintenant configurer le Avancé Paramètres .

  • Cochez Activer redémarrage automatique.

  • Dans le volume section, nous devons mapper les dossiers que nous avons créés aux emplacements internes Docker Pi-hole. Sélectionnez Ajouter Dossier et ajoutez le dnsmasq.d dossier et tapez le chemin de montage sous la forme /etc/dnsmasq.d . Faites de même pour le dossier pihole avec le chemin de montage comme /etc/pihole .

  • Sous Réseau , sélectionnez Utiliser le même réseau que l'hôte Docker.

  • Naviguer vers l'environnement rubrique . Nous devrons ajouter quelques variables.
  • Cliquez sur le + signez et ajoutez ces variables :
    • MOT DE PASSE WEB : mot de passe avec lequel vous souhaitez accéder au portail d'administration.
    • WEB_PORT : Le port avec lequel vous souhaitez accéder au portail d'administration. Cela doit être quelque chose qui n'est pas utilisé. Généralement, quelque chose dans les 8 000 devrait convenir.
    • DNSMASQ_LISTENING : locale
    • IP du serveur : Cela existe déjà. Remplacez-le par l'adresse IP de votre NAS.

8. Cliquez sur Appliquer pour créer le conteneur docker Pi-hole.

9. Puisque vous utilisez votre interface réseau hôte, vous devrez ouvrir le port 53 et le "WEB_PORT" que vous avez sélectionné ci-dessus (8888 est ce que j'ai utilisé) sur votre pare-feu Synology. Il s'agit du port DNS par défaut et du port du portail Web Pi-hole. Si vous voulez savoir comment configurer le pare-feu, j'ai créé un tutoriel ici.

10. Ouvrez le Panneau de configuration et accédez à Pare-feu . Sélectionnez Modifier Règles .

11. Créez une règle avec le port personnalisé que vous avez défini ci-dessus. Le protocole peut être laissé comme TCP .

12. Créer une règle avec le port DNS qui est 53 . Sous protocole, sélectionnez Tous .

13. Assurez-vous que les règles sont au-dessus de votre Deny All règle.

14. Vous devriez maintenant pouvoir accéder à Pi-hole en utilisant cette adresse Web :http://[NAS IP_ADDRESS] :[WEB_PORT]/admin

15. Le processus d'installation est maintenant terminé. Accédez à la section Configuration DNS pour terminer le processus de configuration.

3. Interface réseau Macvlan (option 2) - Comment configurer Pi-hole sur un Synology NAS

Au moment de la rédaction de cet article, je n'arrive pas à faire fonctionner la v5.1.1 (dernière version) avec cette méthode. J'ai effectué plusieurs tests et je peux confirmer que les v5.0 et v5.1 fonctionnent correctement.

La v5.1.2 semble avoir résolu le problème causé par la v5.1.1 !

Comme indiqué ci-dessus, les avantages de terminer la configuration de cette manière sont que nous pouvons donner à notre Pi-hole sa propre adresse IP. Cela nécessite que nous nous connections en SSH à notre Synology NAS.

1. Assurez-vous que vous pouvez vous connecter en SSH à votre Synology NAS. Ouvrez le Panneau de configuration , sélectionnez Terminal et SNMP , et Activer SSH service. Si vous utilisez le pare-feu de Synology, assurez-vous d'autoriser le trafic du port 22. J'ai créé une vidéo expliquant comment vous connecter en SSH à votre Synology NAS si vous rencontrez des problèmes.

2. SSH dans votre Synology NAS à l'aide de votre outil SSH préféré. La première chose que nous devons faire est de créer un resolv.conf fichier pour permettre à Docker d'obtenir les bonnes adresses de serveur DNS. Cette étape n'est peut-être pas obligatoire pour vous, mais j'ai eu de gros problèmes pour configurer Pi-hole sans cela. Exécutez ces commandes :

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

3. Dans le fichier qui est créé, entrez les deux lignes ci-dessous et enregistrez le fichier. Si vous ne savez pas comment utiliser l'éditeur vi, vous pouvez apprendre à l'utiliser ici. REMARQUE  :Si vous rencontrez des problèmes avec cela, créez simplement un fichier local nommé resolv.conf avec les deux lignes ci-dessous et téléchargez-le dans votre dossier pihole dans DSM.

nameserver 127.0.0.1
nameserver 8.8.8.8

4. Maintenant que le fichier est créé, nous devons créer une interface réseau docker macvlan. Tout d'abord, nous devons déterminer quelles interfaces réseau existent actuellement (sur votre Synology NAS) et noter le nom de l'adaptateur. Pour ce faire, exécutez la commande ci-dessous et notez le nom de l'interface réseau qui contient l'adresse IP de votre Synology NAS (dans cet exemple, la mienne est eth0).

ifconfig

5. Ensuite, vous devez exécuter la commande ci-dessous tout en remplaçant le sous-réseau correct (la plupart sont 192.168.1.0/24 par défaut). Vous devez également choisir une adresse IP que vous souhaitez utiliser et qui n'est pas utilisée actuellement. J'utiliserai 192.168.1.198. REMARQUE :ph_network sera le nom du réseau (vous pouvez le remplacer comme vous le souhaitez).

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

Notre réseau est maintenant créé. Nous pouvons ensuite quitter notre session SSH et la désactiver dans DSM (si vous ne l'utilisez pas). Si vous le désactivez et avez créé une règle de pare-feu pour lui, vous devez également désactiver la règle de pare-feu.

6. Ensuite, nous devons créer un réseau de ponts. C'est ce qui va permettre à notre hébergeur (NAS) de communiquer avec notre conteneur Pi-hole. Ouvrez Docker et accédez au Réseau section. Sélectionnez Ajouter et entrez un sous-réseau qui n'est pas utilisé actuellement. L'adresse IP du pont que je crée sera 192.168.10.2.

7. Nos nouveaux réseaux sont maintenant créés. Ensuite, nous devons créer notre conteneur Pi-hole.

8. Ouvrez Docker , accédez au registre , et recherchez Pi-hole . Double-cliquez sur Pi-hole/Pi-hole (image docker Pi-hole officielle) pour la télécharger.

9. Sélectionnez v5.1 . L'image va maintenant être téléchargée.

10. Donnez un nom à votre conteneur, puis sélectionnez Paramètres avancés . REMARQUE  :Si vous avez l'intention d'utiliser Pi-hole pour DHCP, vous devez cocher Exécuter le conteneur en utilisant des privilèges élevés.

11. Nous devons maintenant configurer les Paramètres avancés .

  • Cochez Activer redémarrage automatique.
  • Dans le volume section, nous devons mapper les dossiers que nous avons créés aux emplacements internes Docker Pi-hole. Sélectionnez Ajouter Dossier et ajoutez le dnsmasq.d dossier et saisissez le chemin de montage sous la forme /etc/dnsmasq.d. Faites de même pour le dossier Pi-hole avec le chemin de montage comme /etc/pihole .
  • Contrairement à la première option, nous devons mapper notre resolv.conf fichier également. Sélectionnez Fichier et accédez au resolv.conf fichier que nous avons créé. Entrez le chemin de montage sous la forme /etc/resolv.conf.

  • Sous le réseau section, ajoutez les deux réseaux que nous avons créés (ph_network, ph_bridge) et supprimez le pont réseau.

  • Cliquez sur le + signez et ajoutez ces variables :
    • MOT DE PASSE WEB  :le mot de passe avec lequel vous souhaitez accéder au portail d'administration.
    • DNSMASQ_LISTENING : locale
    • HÔTE_VIRTUEL : trou d'épingle
    • IP du serveur : Cela existe déjà. Remplacez-le par l'adresse IP du ph_network que nous avons créé ci-dessus (192.168.1.198).

12. Cliquez sur Appliquer pour créer le conteneur docker Pi-hole.

13. Vous devriez maintenant pouvoir accéder à Pi-hole en utilisant cette adresse Web :http://[IP_ADDRESS]/admin

4. Configuration DNS - Comment configurer Pi-hole sur un Synology NAS

Maintenant que la configuration de Pi-hole est terminée, nous devons déterminer un moyen de diriger nos clients vers notre serveur DNS. Il existe deux manières principales de procéder :

  • Faites pointer le serveur DNS de votre routeur vers l'adresse IP de votre serveur Pi-hole. Cela garantira que tout appareil connecté utilisera Pi-hole comme serveur DNS.
  • Pointez chaque client vers votre serveur DNS. Ceci est avantageux si vous souhaitez que seuls certains clients utilisent Pi-hole comme serveur DNS.
    • Instructions Windows
    • Instructions Mac OS
    • Instructions Linux

Je fais pointer les serveurs DNS de mes routeurs vers mon serveur Pi-hole car je veux m'assurer que chaque appareil s'y connecte.

5. Conclusion

Ce didacticiel explique comment configurer Pi-hole sur un Synology NAS. Le processus n'est pas trop mal et Pi-hole est génial ! Je l'utilise depuis un certain temps et même si je rencontre occasionnellement un problème où il bloque quelque chose dont j'ai besoin, le trouver et l'ajouter à la liste blanche est un processus assez simple.

Encore une fois, je soulignerai l'importance des serveurs Pi-hole redondants. Il y a tellement d'avantages à avoir un deuxième serveur DNS, et avec des kits Raspberry Pi Zero étant aussi bon marché que 25 $, ça vaut le coup.

Merci d'avoir lu le tutoriel. Si vous avez des questions, n'hésitez pas à les laisser dans les commentaires !


Docker
  1. Comment partager des données entre des conteneurs Docker sur Ubuntu 22.04

  2. Installation de Docker sur macOS

  3. Docker contre Kubernetes

  4. Créez, étiquetez et téléchargez votre propre image Docker

  5. Comment créer un registre Docker privé sur Ubuntu Linux

Comment vérifier l'utilisation de l'espace disque sous Linux

Commande Du sous Linux

Comment installer Pimcore CMS sur Ubuntu 18.04 LTS

Comment installer WordPress sur Debian 8

Comment installer le lecteur de film Popcorn Time sur Ubuntu 20.04 LTS Focal Fossa

Pop!_OS contre Ubuntu :lequel est le meilleur ?