howto:raspberry-pi:pihole_pivpn

Filtrer les publicités avec Pi-hole et PiVPN

Vous avez un Raspberry qui ne vous sert à rien sous la main ? Alors c'est sûrement le moment de se pencher sur deux logiciels qui une fois combinés s'avèrent très efficaces : Pi-hole et PiVPN. Le principe est de filtrer les publicités avec Pi-hole, et de pouvoir en profiter à peu près n'importe où pour le peu que vous ayez une connexion internet avec PiVPN.

Ces deux programmes sont faciles à installer, à prendre en main et à contrôler. Ils sont de plus très peu gourmands en énergie, ce qui convient très bien à l'utilisation du Raspberry ici.

J'ai ici utilisé un Raspberry 3B+, connecté au réseau avec un câble ethernet, et la distribution Raspbian Stretch Lite disponible ici.

Plusieurs fois au cours de ces installations il va vous être demandé de choisir des serveurs DNS sur lesquels vous connecter. Je ne peux que vous conseiller d'éviter ceux par défaut, détenus par Google, et de plutôt choisir ceux proposés par FDN qui fournit des DNS respectueux de votre vie privée ou d'aller faire un tour sur OpenNIC qui vous donne les DNS privés les plus proches de vous. Si toutefois vous vous sentez un peu perdu optez pour ceux de CloudFare (1.1.1.1) qui sont proposés directement dans la liste.

#Pi-hole Pi-hole donc est un outil de contrôle des DNS sur tout le réseau local (pour rappel, le DNS a pour rôle de transformer une adresse URL textuelle en adresse IP chiffrée). Il permet de filtrer, par exemple la publicité, en bloquant les DNS publicitaires. Il existe en effet des listes de DNS connues afin de bloquer les addwares, mais Pi-hole permet également de bloquer ou autoriser ce que vous voulez à l'aide de listes noires et de liste blanches.

Tout d'abord, Pi-hole demande une adresse fixe pour fonctionner, il va donc falloir attribuer une IP statique (fixe) à notre Raspberry. Pour cela le plus simple reste d'aller faire un tour sur votre page de configuration de routeur (192.168.<0/1>.1 ou 192.168.<0/1>.254 selon les cas) et d'y configurer un bail statique qui sort de la plage DHCP pour votre appareil Raspi.

Assurez-vous de mettre à jour vos paquets :

`sudo apt-get update && sudo apt-get upgrade`

Puis installez git, dont on aura besoin pour l’installation de Pi-hole :

`sudo apt-get install git`

Ensuite rentrez simplement ces lignes ci-dessous :

``` git clone –depth 1 https://github.com/pi-hole/pi-hole.git Pi-hole cd “Pi-hole/automated install/” sudo bash basic-install.sh ``` Vous devriez avoir cet aperçu :

Laissez-vous ensuite guider par l'installateur, et si vous ne savez pas quoi choisir à un moment donné, laissez par défaut !

Arrivé à la fin de l'installation, le programme nous fournit un mot de passe, il est à noter précieusement. Il nous servira à nous connecter à l'interface d’administration web.

L’interface Web de Pi-Hole va servir à analyser votre réseau local sur le court comme le long-terme grâces aux logs enregistrés, mais aussi d'y configurer un serveur DHCP, de gérer vos listes noires, etc.

Pour y accéder, ouvrez simplement un navigateur web et allez sur `http:<ADRESSE_IP_DE_VOTRE_RASPBERRY>/admin/` puis `Login` et enfin rentrez le mot de passe donné en fin d'installation. Il conviendra de paramétrer chaque appareil du réseau local afin d’utiliser le RPi comme serveur de DNS, c’est-à-dire d’utiliser son adresse locale, pour moi 192.168.0.100 . Il est également conseillé d'ajouter un DNS de secours (cf. FDN et OpenNIC au début de ce tuto). Si votre box internet le permet, vous pouvez alors la paramétrer pour que son serveur DHCP (adresses IP distribuées, non fixes) passe par votre Raspberry, là aussi en lui ajoutant l'adresse de votre appareil en tant que DNS. Toutefois, certaines box ne le permettent pas. Dans ce cas, vous pouvez d'abord désactiver le DHCP de votre box sur sa page de configuration, puis rendez-vous dans la section paramètres de l'interface web de Pi-hole. Là configurez votre nouveau serveur DHCP (il est conseillé de conserver les anciennes valeurs de la plage d'IP afin d'éviter les conflits d'adresses), puis `Save`, et si il n'y a pas de message d'erreur tout est bien qui fonctionne bien ! ==== Applications ==== Voilà, tout est prêt à fonctionner, mais est-ce que cela marche ? Et bien, voici un lien de test : https://blockads.fivefilters.org/?pihole (à tester en ayant déactivé au préalable vos extensions/plugins de navigateur qui pourraient elles aussi bloquer les addwares afin d'éviter de fausser le test). Si tout marche bien, vous aurez cette page qui s'affiche alors : ==== Mise-à-jour ==== Un dernier point concernant la mise-à-jour : Pi-hole reste un logiciel, il a besoin d'upgrade de temps en temps, et mettre régulièrement à jour la base de données des DNS à filtrer est une bonne pratique. Pour cela, deux simples commandes : * `pihole -up` pour la mise-à-jour logiciel * `pihole -g` pour la mise-à-jour de la base de données # PiVPN Si tout se passe bien chez vous dans votre réseau local, si vous êtes content des services de Pi-hole, vous pouvez alors passer à l'étape supérieure : profiter de Pi-Hole partout où vous allez (enfin…presque !). Comme vous vous en doutez PiVPN va créer un VPN qui permet depuis l'extérieur (en dehors de votre réseau local) de se connecter chez vous, et plus précisément sur votre Raspberry. Vous allez alors pouvoir profiter de Pi-Hole même en dehors de chez vous. Ceci a ses limites bien entendu, notamment une baisse conséquente de débit internet selon l'endroit où vous vous trouvez et selon votre connexion locale chez vous. Malgré tout, ça ne coute rien d'essayer et puis PiVPN peut bien sûr servir à bien d'autres projets, un VPN a de multiples applications possibles. ==== Installation ==== Avant de s'attaquer à l'installation à proprement parlée, il va nous falloir effectuer une petite manipulation : nous allons devoir rediriger un port de notre box vers un port du Raspberry. Ainsi lors d'une connexion extérieure sur ce port à l'aide du VPN, tout passera par notre appareil. Pour effectuer cette redirection de port, il faut se rendre sur la page de configuration de votre routeur. - Exemple pour une box Orange : - Exemple pour une box Free : Vous remarquerez l'utilisation du port 1194 par défaut, et le choix du protocole UDP (si vous ne savez pas choisir entre TCP et UDP, prenez UPD par défaut). Nous pouvons maintenant attaquer l'installation. Nous aurons besoin ici de curl, normalement déjà installé sur Raspbian Stretch : `sudo apt-get install curl` Ensuite lancez l’installation par : `curl -L https://install.pivpn.io | bash` Déroulez l’installateur, avec là encore à l'esprit que si vous ne savez pas répondre laissez les valeurs par défaut. Arrivé à cette page, deux possibilités : soit laisser l'adresse IP chiffrée telle quelle, soit utiliser les services de No IP qui nous fournissent une adresse textuelle sous la forme `<user>.ddns.net` . L'avantage de la deuxième option est qu'elle prévient d'un éventuel changement d'adresse IP, mais demande quelques manipulations supplémentaires. Une fois au bout, faîtes le reboot proposé par le programme puis une fois réactivé tapez simplement : `pivpn -a` Il vous sera ensuite demandé un nom pour le profil VPN, puis un mot de passe pour sécuriser votre tunnel. Enfin, PiVPN vous indique alors qu'il a mis à disposition un fichier `ovpn` qui se situe : `/home/pi/ovpns/<nom_du_profil>.ovpn` Ne reste plus qu'à le copier sur une clé USB ou le transférer sur votre ordinateur via SCP, puis l'exploiter avec OpenVPN, logiciel libre de connexion VPN disponible sur toutes les plateformes, y compris Android. Note à propos du protocole SCP : bien qu'utilisant une connexion SSH, ce protocole peut également s'utiliser sous Windows via une interface graphique, grâce au logiciel WinSCP. ==== Applications ==== Tout est en place ? Il ne reste plus qu'à tester ! Pour cela connectez-vous sur un réseau extérieur (pas votre réseau local !), puis à l'aide de votre fichier `ovpn` et d'OpenVPN connectez-vous sur votre Raspberry. Dans notre cas, nous pouvons directement tester si le bloqueur de publicités de Pi-Hole est bien actif grâce au VPN tout en vérifiant notre accès internet https://blockads.fivefilters.org/?pihole . Si vous avez chez vous des fichiers de partages entre PC du type Samba, vous pouvez tout aussi très bien installer samba sur votre Raspberry et tester avec le VPN d’accéder à ces fichiers partagés ! Article lié : Créer un simple NAS avec SAMBA et PiVPN

  • howto/raspberry-pi/pihole_pivpn.txt
  • Dernière modification: 2020/11/26 11:24
  • (modification externe)