un routeur pare feu sans fil sur raspberry pi

Comment Installer un Routeur Pare-feu sur Raspberry Pi ? (Wi-Fi)

Un Raspberry Pi ne dispose que d’un seul adaptateur Ethernet, il n’est donc pas nécessairement le meilleur appareil pour créer un routeur réseau, mais nous pouvons toujours utiliser l’adaptateur sans fil sur un côté du routeur. Je vais vous montrer comment faire cela dans cet article.

Un Raspberry Pi peut être utilisé comme routeur réseau en configurant l’adaptateur Wi-Fi comme point d’accès et en acheminant le trafic vers le LAN et Internet via le câble Ethernet. Il est ensuite possible d’ajouter un pare-feu pour filtrer ce qui est accessible aux clients Wi-Fi.

Gardez à l’esprit que c’est un vaste sujet avec de nombreux services et notions de réseau à comprendre.
Je commencerai par la théorie, puis expliquerai comment installer et configurer chaque pièce du puzzle.

Remarque : Cet article a été mis à jour pour Raspberry Pi OS Bookworm. Je recommande vivement de l’utiliser, car il simplifie la plupart du processus grâce à l’utilisation de Network Manager.

À propos, si vous débutez sur Raspberry Pi et que vous souhaitez accélérer les choses (tout en vous amusant), n’hésitez pas à télécharger mon e-book Maitrisez Raspberry Pi en 30 jours. Il s’agit d’un défi de 30 jours dans lequel vous apprendrez une nouvelle compétence chaque jour. Vous économiserez du temps et de l’argent et pourrez enfin profiter de votre Raspberry Pi à son plein potentiel. Je vous offre d’ailleurs 10% de remise aujourd’hui si vous utilisez ce lien !

Avoir une vision claire de l’objectif

Ce n’est pas un simple tutoriel que vous pouvez réaliser en copiant/collant quelques commandes sans forcément comprendre quoi que ce soit. Ainsi, en fonction de votre niveau actuel en administration réseau et système, il est préférable de d’abord commencer par un peu de théorie.

Qu’est-ce qu’un routeur ?

En termes simples, un routeur est un appareil réseau qui connecte deux sous-réseaux ensemble.

Si vous avez deux ports Ethernet sur votre ordinateur qui sont connectés à des réseaux différents, votre ordinateur peut servir de routeur. Mais nous utilisons généralement un appareil conçu pour cela (comme votre routeur Internet).

router

Dans ce schéma, nous avons deux réseaux différents connectés par un routeur : 1.0 et 2.0. Si le routeur est bien configuré, il permettra aux ordinateurs A et B de se voir (et d’échanger des données), même s’ils sont sur des réseaux différents.

Les modèles de Raspberry Pi ont des limites, et la principale limitation dans ce cas est qu’il n’y a qu’un seul adaptateur Ethernet. Mais nous utiliserons l’adaptateur Wi-Fi pour créer un deuxième réseau.

En gardant le schéma précédent comme exemple, nous pouvons remplacer le routeur par un Raspberry Pi, en utilisant le câble RJ45 d’un côté et un hotspot sans fil de l’autre. C’est un routeur car nous allons le configurer pour que le PC A et le PC B puissent communiquer à travers le Raspberry Pi.

Je vais clarifier l’objectif final de ce tutoriel dans une minute, mais d’abord parlons de la partie pare-feu.

Pare-feu

Un pare-feu est comme un filtre sur notre routeur. C’est un logiciel qui vérifie ce qui entre et sort, et quels appareils il devrait autoriser ou bloquer en fonction de règles prédéfinies.

Par exemple, dans l’exemple précédent, nous pouvons configurer que A peut envoyer un ping à B, mais ne peut pas accéder au serveur HTTP sur B. J’utiliserai un logiciel appelé “iptables” pour cela, mais vous pouvez utiliser n’importe quel autre logiciel de pare-feu si vous préférez.

Vous pouvez même choisir de ne pas installer de pare-feu du tout. Si vous faites confiance à toutes les parties du réseau (comme dans le cas d’un serveur hébergé chez vous, par exemple), un pare-feu n’est pas nécessaire.

Mon objectif

Si vous utilisez votre Raspberry Pi à la maison, vous n’avez probablement pas besoin de connecter deux réseaux.
Mais mon objectif ici est de créer un nouveau point d’accès sans fil avec un pare-feu et d’autres logiciels intéressants pour surveiller le réseau et filtrer un certain type de trafic.

Donc, si ceci est le réseau actuel :

mon réseau actuel

L’objectif est de le faire ressembler à ceci à la place :

Voici les principales étapes à suivre pour obtenir le même résultat :

Téléchargez mon antisèche !
Format PDF pratique, avec les 74 commandes à retenir pour maîtriser son Raspberry Pi.
Télécharger maintenant
  • Installez votre Raspberry Pi sur le réseau.
  • Activez le point d’accès Wi-Fi avec un sous-réseau différent.
  • Créez un pont entre les deux réseaux.
  • Créez des règles de pare-feu.
  • Installez d’autres logiciels intéressants.

Ne vous inquiétez pas, je vais expliquer chaque étape en détail. Passons à la première étape de ce processus.

Installez votre Raspberry Pi

La première chose à faire est d’installer votre Raspberry Pi sur le réseau. Rien de compliqué à ce stade, installez simplement une nouvelle version de Raspberry Pi OS et obtenez un accès via SSH. Voici ce que vous devez faire :

  • Installez Raspberry Pi OS en suivant ce tutoriel.
    Vous n’avez pas besoin de la version Desktop sauf si vous voulez utiliser le Raspberry Pi pour d’autres choses également.
  • Branchez le Raspberry Pi sur le réseau avec un câble RJ45.
    Nous utiliserons le Wi-Fi plus tard, alors ne l’utilisez pas comme connexion principale.
  • Configurer une adresse IP statique pour le Raspberry Pi est probablement une bonne idée.
    Vous pouvez cliquer sur le lien pour lire mon tutoriel sur ce sujet.
    Bien que ce soit obligatoire du côté du Wi-Fi, c’est juste par commodité pour l’adaptateur Ethernet.
  • Une fois fait, mettez à jour votre système en faisant :
    sudo apt update
    sudo apt upgrade
  • Si vous ne l’avez pas fait directement dans Raspberry Pi Imager, activez SSH dans raspi-config > Interface options.
    sudo raspi-config

    Vous l’utiliserez dans ce tutoriel pour copier/coller des commandes à partir de cette page.
    Vous pouvez trouver plus de détails sur l’utilisation de SSH dans ce tutoriel si nécessaire.

Voilà, vous avez effectué les étapes de préparation, et nous pouvons maintenant commencer l’installation du routeur.

Si les commandes Linux ce n’est pas trop votre truc, n’hésitez pas à jeter un œil à cet article qui vous explique les commandes qu’il faut absolument connaître. Je vous donne aussi une antisèche à télécharger pour les avoir toujours sous la main !

Installer un routeur sans fil

Une fois le système installé, votre prochaine étape consiste à créer le hotspot avec l’adaptateur sans fil. Depuis Bookworm et l’utilisation de Network Manager, cela peut maintenant être fait en quelques lignes de commande.

Remarque : J’ai un didacticiel plus approfondi sur comment configurer un point d’accès Wi-Fi sur Raspberry Pi sur le site. Je vous donne ici la version courte, mais vous pouvez le consulter pour plus de conseils pas à pas. Et si vous utilisez une version plus ancienne de Raspberry Pi OS, les étapes spécifiques aux anciennes versions ne sont disponibles que là (je les ai retirées de l’article que vous lisez ici).

Configurer le pays du Wi-Fi

En théorie, ce n’est plus nécessaire, car vous l’avez probablement fait via Raspberry Pi Imager ou l’Assistant de bienvenue. Cependant, au cas où vous utiliseriez un tout nouveau Raspberry Pi OS, assurez-vous d’avoir configuré le pays du Wi-Fi sur le Raspberry Pi.

Le Wi-Fi restera désactivé tant que cette option ne sera pas configurée.

  • Ouvrez raspi-config.
    sudo raspi-config
  • Allez à “Localisation Options” > “WLAN Country”.
  • Sélectionnez votre pays dans la liste.
  • Confirmez et quittez.

Activer le point d’accès

Activer un point d’accès avec Network Manager est plus simple, mais nécessite quelques lignes de commande que vous ne pouvez vraiment pas deviner sans ce tutoriel.
Voici les principales étapes à suivre :

  • Commencez par activer l’interface Wi-Fi dans le gestionnaire de réseau avec :
    sudo nmcli con add con-name hotspot ifname wlan0 type wifi ssid "RaspberryTips-Wifi"

    Vous pouvez remplacer le dernier paramètre par le SSID de votre choix, qui sera le nom du point d’accès Wi-Fi. Vous pouvez également remplacer “hotspot” par n’importe quoi d’autre, c’est le nom de la configuration. Assurez-vous simplement de modifier également les commandes suivantes.
  • Nous allons ensuite définir la sécurité du point d’accès et le mot de passe, par exemple :
    sudo nmcli con modify hotspot wifi-sec.key-mgmt wpa-psk
    sudo nmcli con modify hotspot wifi-sec.psk "raspberry"

    Le dernier paramètre est votre mot de passe Wi-Fi, assurez-vous d’utiliser quelque chose de plus compliqué :-).
  • Et enfin, configurez le gestionnaire de réseau pour qu’il fonctionne en mode point d’accès, avec des adresses IP partagées sur cette interface :
    sudo nmcli con modify hotspot 802-11-wireless.mode ap 802-11-wireless.band bg ipv4.method shared

Si tout se passe comme prévu, votre point d’accès devrait être opérationnel et visible dans quelques secondes. Vous pouvez essayer de vous y connecter depuis un autre ordinateur ou votre téléphone :

Vous devriez obtenir une IP sur un réseau différent de votre LAN principal. Par exemple, l’adresse IP de mon téléphone est maintenant 10.42.0.192, tandis que celle sur mon LAN est de type 192.168.X.Y.

Par défaut, tout est ouvert, et vous devriez avoir accès à Internet ainsi qu’à tout ordinateur ou serveur sur votre réseau principal (par exemple, je peux accéder à mon NAS et au serveur web depuis mon smartphone).

Dans certains cas, c’est suffisant, et vous n’avez besoin de rien de plus. Mais je suppose que certains d’entre vous voudront ajouter une couche de sécurité supplémentaire et filtrer ce qui est accessible et ce qui ne l’est pas. C’est là qu’ajouter un pare-feu est utile.

Comprendre les concepts du pare-feu

Encore une fois, je préfère prendre le temps d’expliquer un peu le pare-feu car je ne veux pas vous perdre dans les étapes suivantes. Si vous avez déjà l’habitude, vous pouvez passer à la section suivante.

Introduction

Le rôle d’un pare-feu est de bloquer ou d’autoriser l’accès d’une IP spécifique à une autre.
Souvent, nous utilisons également un port pour définir la permission exacte
.

Par exemple, nous pouvons refuser l’utilisation du port 22 (SSH) à tout le monde, sauf à l’ordinateur A qui peut se connecter à l’ordinateur B sur le port 22.

Liste noire ou liste blanche

Dans une configuration de pare-feu, vous commencez par choisir entre deux règles par défaut :

  • Blacklist : Tout autoriser sauf …
  • Whitelist : Tout refuser sauf …

En fonction de ce que vous voulez faire avec votre routeur Raspberry Pi, c’est à vous de choisir celle que vous voulez.

La première option est probablement acceptable si vous l’utilisez à la maison. Vous pouvez vouloir bloquer seulement certaines choses, comme le protocole torrent ou des adresses IP spécifiques.

Mais en entreprise, c’est généralement la deuxième option qui s’impose. La bonne pratique consiste à bloquer tout ce qui n’est pas autorisé (si vous n’avez pas besoin de quelque chose, il est plus sûr de le bloquer).

In, Out et Forward

Que vous ayez opté pour une liste noire ou une liste blanche, vous créerez ensuite des règles pour filtrer ce qui est autorisé ou non. Chaque règle peut être définie dans trois directions :

  • Input : Paquets réseau entrant dans le pare-feu.
  • Output : Paquets sortant du pare-feu.
  • Forward : Paquets traversant le pare-feu.

Par exemple, si vous hébergez un serveur web, vous pouvez généralement bloquer tout ce qui est en entrée, à l’exception du trafic HTTP et HTTPS. Mais en sortie, ce que fait votre serveur sur l’internet n’est pas très important.

Dans notre cas, nous utiliserons principalement les règles FORWARD uniquement, car il n’y a rien sur le Raspberry Pi.
Il n’est pas nécessaire de le protéger davantage.

Configurer le service pare-feu

Maintenant que la théorie est claire, voyons comment la mettre en pratique.

IPTables

Il existe plusieurs paquets de pare-feu disponibles sur Raspberry Pi OS : iptables ou ufw par exemple.
Il existe également OpenWRT, une distribution compatible avec le Raspberry Pi, pour créer un pare-feu de routeur.

Dans ce billet, j’utiliserai iptables, qui est le plus utilisé et qui est préinstallé avec la plupart des systèmes d’exploitation.

Téléchargez mon antisèche !
Format PDF pratique, avec les 74 commandes à retenir pour maîtriser son Raspberry Pi.
Télécharger maintenant

S’il n’est pas déjà installé sur votre Raspberry Pi, vous pouvez l’installer avec :
sudo apt install iptables

Voir la configuration actuelle

Avant d’ajouter des règles, vérifions la configuration actuelle.
Elle est probablement vide si vous venez de l’installer, mais commençons quand même par le plus simple.

À tout moment de ce tutoriel, vous pouvez utiliser cette commande pour afficher la configuration du pare-feu :
sudo iptables -L

Pour l’instant, vous devriez obtenir quelque chose comme ceci :

Nous trouvons les éléments d’entrée, de sortie et de transmission dont j’ai parlé précédemment.
Pour chaque section, nous voyons que la politique par défaut est ACCEPT, donc tout est autorisé sauf ce que nous ajoutons (mode liste noire).

Vous pouvez utiliser cette commande ultérieurement pour vérifier si les nouvelles règles que vous avez ajoutées correspondent à ce que vous souhaitez.

Ajouter une règle FORWARD

Nous allons maintenant utiliser la commande iptables pour ajouter de nouvelles règles au pare-feu.

Chaque réseau étant différent, chaque table de règles de pare-feu est différente.
Je commencerai par un exemple basique, puis je vous donnerai toute la syntaxe pour ajouter des règles spécifiques à votre environnement.

  • Commencez par réinitialiser la configuration de iptables :
    sudo iptables -F
    Cela ne devrait rien faire à ce stade, mais c’est une commande à connaître au cas où vous casseriez quelque chose plus tard. De plus, les règles doivent être définies dans un ordre spécifique, il est donc préférable de commencer par une réinitialisation.
  • Ajoutez une règle DROP :
    Par exemple, disons que nous voulons refuser l’accès aux sites web HTTP pour les clients Wi-Fi.
    Nous pouvons ajouter ce genre de règle au pare-feu :
    sudo iptables -A FORWARD -p tcp --dport 80 -j DROP
    Cette commande spécifie que :
    – nous ajoutons une nouvelle règle (-A).
    – dans la section forward (FORWARD).
    – pour le protocole tcp (-p TCP).
    – pour le port HTTP (–dport 80).
    – et l’action est DROP (connexion en timeout).
  • Après cela, vous ne devriez pas être en mesure d’accéder à un site web comme celui-ci par exemple (mais les sites en HTTPS fonctionnent toujours).

C’est bon, votre première règle est opérationnelle.
Vous pouvez utiliser iptables -F pour supprimer toutes les règles et recommencer.
Ou vous pouvez utiliser la même commande avec l’opérateur -D au lieu de -A.
sudo iptables -D FORWARD -p tcp --dport 80 -j DROP

Cette commande permet de supprimer une règle spécifique et non pas toutes les règles comme avec la commande -F.

Syntaxe de la commande Iptables

Comme vous devriez déjà le comprendre, vous pouvez maintenant utiliser le même modèle de commande pour créer les règles de pare-feu dont vous avez besoin.

Le modèle de commande est le suivant :

  • opération :
    • -F: flush, supprimer toutes les règles, ne nécessite pas d’autres paramètres.
    • -A: append, ajouter une nouvelle règle.
    • -D: supprimer, supprimer une règle existante.
  • direction : INPUT, OUTPUT ou FORWARD (voir la section précédente).
  • protocole : principalement TCP ou UDP.
  • port : le numéro de port pour lequel vous souhaitez créer une règle.
    Vous trouverez ici une liste des ports les plus courants.
  • action : Définir le choix à faire pour le trafic correspondant.
    • ACCEPT : Autoriser l’accès (en mode liste blanche).
    • REJECT : Refuser l’accès et indiquer à l’expéditeur qu’il n’est pas autorisé.
    • DROP : Interdire l’accès, mais ne rien dire à l’expéditeur.

Il s’agit d’une brève introduction à ce que vous utiliserez principalement.
Si vous avez besoin de plus d’informations, utilisez « man iptables » ou consultez cette page pour connaître tous les paramètres.

Passer à la liste blanche

Comme vous pouvez le voir avec « iptables -L », nous sommes en mode liste noire : ACCEPT tout sauf les règles que nous ajoutons.

Si vous êtes dans un environnement plus strict, passez en mode liste blanche.
Par exemple, si vous créez un réseau Wi-Fi gratuit dans un hôtel ou une autre entreprise, vous voudrez probablement n’autoriser que quelques ports (comme le web et les e-mails).

Pour ce faire, vous devez créer une liste de tous les ports que vous souhaitez autoriser.
Si vous exécutez toutes les commandes manuellement, vous perdrez l’accès après la première.
Le plus simple est donc de créer un script qui exécute toutes les commandes en une seule fois.

Créer le script du pare-feu

  • Créer un nouveau fichier avec nano :
    sudo nano /usr/local/bin/firewall.sh
  • Collez ces lignes à l’intérieur :
    #!/bin/sh

    #Clear all rules
    iptables -F

    #Whitelist mode
    iptables -P INPUT ACCEPT
    iptables -P FORWARD DROP
    iptables -P OUTPUT ACCEPT

    #Allow PING for everyone
    iptables -A FORWARD -p icmp -j ACCEPT

    #Allow HTTP/HTTPS for WiFi clients
    iptables -A FORWARD -p tcp --dport 80 -j ACCEPT
    iptables -A FORWARD -p tcp --dport 443 -j ACCEPT

    #Allow POP/IMAP/SMTP for WiFi clients
    iptables -A FORWARD -p tcp --dport 25 -j ACCEPT
    iptables -A FORWARD -p tcp --dport 110 -j ACCEPT
    iptables -A FORWARD -p tcp --dport 993 -j ACCEPT

    #Allow PING for WiFi clients
    iptables -A FORWARD -p icmp -j ACCEPT

    #Allow NAT
    iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
    iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
  • Vous pouvez adapter ces lignes à vos besoins. Ce n’est qu’un exemple.
    Je n’applique pas de restrictions sur INPUT et OUTPUT dans cet exemple de script, mais vous pouvez le faire si vous souhaitez avoir un meilleur contrôle de votre utilisation du réseau.
  • Enregistrez et quittez (CTRL+O, CTRL+X).
  • Ajoutez les droits d’exécution à ce script.
    sudo chmod +x /usr/local/bin/firewall.sh
  • Exécutez-le.
    sudo /usr/local/bin/firewall.sh
  • Vérifiez si tout fonctionne correctement.
    Si quelque chose ne fonctionne pas, redémarrez le Raspberry Pi pour récupérer tous les accès.
    Ensuite, identifiez ce que vous avez loupé dans votre script.

Quand tout est bon, vous pouvez l’ajouter dans l’onglet init pour le lancer au démarrage.

Rendez votre configuration persistante

Pour l’instant, toutes les règles iptables ajoutées seront supprimées au prochain redémarrage. C’est souvent une bonne idée de procéder ainsi tant que vous testez la configuration (si vous faites une erreur, vous pouvez facilement revenir en arrière en redémarrant simplement le Raspberry Pi). Mais à un moment donné, vous voudrez sauvegarder votre travail.

Voici les étapes à suivre pour rendre votre configuration de pare-feu persistante :

  • Installez ce paquet :
    sudo apt install iptables-persistent
  • Il vous demandera si vous souhaitez sauvegarder vos règles pendant l’installation. Acceptez la sauvegarde si vous l’avez déjà configurée (et testée).
  • Et chaque fois que vous changez les règles, vous devrez exécuter cette commande pour les sauvegarder :
    sudo iptables-save > /etc/iptables/rules.v4
    Si vous obtenez une erreur “permission denied”, vous devez passer en root pour le faire:
    sudo su
    iptables-save > /etc/iptables/rules.v4
    exit

Surveillez le réseau

Maintenant que le routeur fonctionne (avec un pare-feu ou non), nous pouvons ajouter d’autres paquets pour améliorer les capacités du Raspberry Pi.

Dans cette partie, je propose d’ajouter une interface web pour surveiller ce qui se passe sur le Raspberry Pi (et sur le réseau).

Qu’est-ce que cet outil ?

L’outil que j’ai choisi est Webmin.

Il s’agit d’une interface web facile à installer qui vous montre la configuration actuelle, ainsi que plusieurs statistiques et graphiques sur l’utilisation du système.
Vous pouvez même modifier la configuration à partir de cette interface.

Si vous en connaissez d’autres, dites-le moi dans la communauté.
C’est un outil qui existe depuis longtemps, mais je ne connais pas d’outil plus récent pour le faire.

Installation de Webmin

J’ai un tutoriel complet sur ce site web sur la façon d’installer Webmin sur un Raspberry Pi, je vous laisse donc le consulter pour des instructions détaillées.

Il y a plusieurs façons de l’installer, soit en téléchargeant directement les fichiers, soit en ajoutant un dépôt. Je vous laisse choisir la méthode que vous préférez et j’y reviendrai par la suite.

Interface de Webmin

Webmin possède une interface web et supporte de nombreux outils, mais nous n’avons pas besoin de tout cela.
Nous utiliserons principalement ces outils dans la section « Networking ».

Par exemple, vous pouvez activer la surveillance de la bande passante ou gérer la configuration de votre pare-feu à partir d’ici :

webmin

Nous reviendrons plus tard sur cette interface, pour la configuration du proxy par exemple.

Ajouter un proxy et un filtre web

Qu’est-ce qu’un proxy ?

Un proxy joue trois rôles principaux :

  • Créer un cache de toutes les pages Internet pour augmenter la vitesse de navigation web.
  • Enregistrer toutes les pages visitées pour générer des rapports (domaine le plus visité, trafic le plus élevé, …).
  • Agir comme un bloqueur de sites web (optionnel) pour refuser l’accès à certains types de contenu.

Pour ce faire, nous allons installer Squid (le proxy) et SquidGuard (le filtre) sur le Raspberry Pi.

Installation de Squid

  • Squid est disponible dans le dépôt. Installez-le avec :
    sudo apt install squid
  • Sauvegardez le fichier de configuration :
    cd /etc/squid
    sudo mv squid.conf squid.conf.old
  • Passez à l’utilisateur root pour quelques secondes et supprimez tous les commentaires rapidement :
    sudo su
    cat squid.conf.old | egrep -v -e '^[[:blank:]]*#' | grep "\S" > squid.conf
    exit

    Ensuite, vérifiez le fichier de configuration :
    sudo nano squid.conf
    Vous devriez maintenant voir uniquement les lignes de configuration et vous pouvez modifier la configuration par défaut comme vous le souhaitez.
  • Redémarrez Squid pour appliquer les modifications :
    sudo systemctl restart squid

Une fois Squid configuré, vous avez deux possibilités pour l’utiliser :

  • Configurez votre navigateur web pour utiliser le Raspberry Pi comme proxy HTTP.
    Cela dépend de votre navigateur, mais vous devriez trouver cette option dans Options > Network settings.
  • Configurez iptables pour rediriger automatiquement tout le trafic HTTP vers squid.
    Cela devrait ressembler à quelque chose comme cela :  
    iptables -t nat -A PREROUTING -i wlan0 -p tcp --dport 80 -j DNAT --to 10.42.0.1:3128
    iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128

Vérifiez ensuite que les sites web HTTP fonctionnent correctement.
Vous pouvez voir tous les sites web visités dans le fichier journal de Squid :
sudo tail -f /var/log/squid/access.log

Module complémentaire Webmin

Il existe un module complémentaire de Webmin appelé « calamaris » que vous pouvez installer pour surveiller l’efficacité du proxy.
Installez-le avec apt :
sudo apt install calamaris

Puis retournez dans webmin, dans les modules non utilisés pour trouver de nouveaux outils pour la surveillance de Squid.

Installation de SquidGuard

Nous pouvons maintenant passer à l’installation de SquidGuard :

  • Installez le package SquidGuard :
    sudo apt install squidguard
  • Téléchargez une liste de sites Web par catégorie :
    wget http://squidguard.mesd.k12.or.us/blacklists.tgz
  • Extrayez les fichiers de l’archive :
    tar -zxvf blacklists.tgz
    Lors de l’extraction, certaines catégories de listes noires apparaîtront sur votre écran.
    Vous pouvez en choisir une et l’utiliser pour la configuration de SquidGuard plus tard.
    Vous pouvez ouvrir les fichiers pour obtenir quelques exemples de sites Web.
  • Déplacez les fichiers vers le dossier SquidGuard :
    sudo mv blacklists /var/lib/squidguard/db
  • Archivez le fichier de configuration SquidGuard original :
    cd /etc/squiguard
    mv squidGuard.conf squidGuard.conf.old
  • Créez un nouveau fichier de configuration :
    sudo nano squidGuard.conf
  • Collez ces lignes :
    dbhome /var/lib/squidguard/db logdir /var/log/squidguard dest violence {
    domainlist blacklists/violence/domains
    urllist blacklists/violence/urls
    log violenceaccess
    }
    acl {
    default
    {
    pass !violence
    redirect http://localhost/block.html
    } }

    Ceci est un fichier exemple, vous pouvez bloquer ce que vous voulez.
    Vous pouvez également ajouter plus de catégories en créant d’autres sections ‘dest’.
  • Sauvegardez et quittez (CTRL+O, CTRL+X).
  • Construisez la base de données SquidGuard :
    sudo squidGuard -C all -d
    Cela peut prendre beaucoup de temps. Si c’est trop long, retirez les fichiers dont vous n’avez pas besoin du dossier des listes noires.
    Utilisez screen si vous ne restez pas devant votre ordinateur (screen -S build).
    Ainsi, si la connexion SSH avec votre ordinateur est perdue, cela n’arrêtera pas la compilation.
  • Redémarrez Squid pour appliquer les modifications :
    sudo service squid restart

Cela devrait fonctionner maintenant, essayez d’accéder à une URL de la liste des domaines et vérifiez que vous êtes bloqué par SquidGuard.

L’installation de Fail2ban pourrait également être un excellent complément à cette configuration. Cliquez sur le lien pour en savoir plus.

Questions connexes

Puis-je ajouter un bloqueur de publicités à ce routeur ?

Oui, vous pouvez utiliser Pi-Hole pour cela. Il est facile à installer, et il vous suffit de définir le Raspberry Pi comme serveur DNS (manuellement ou dans le fichier de configuration DHCP, voir Firewall > DNS issues pour plus d’informations).

Puis-je utiliser un Raspberry pour créer un routeur “full Ethernet” ?

Oui, vous pouvez ajouter un HAT Ethernet à votre Raspberry Pi, comme ce HAT d’expansion (plus de détails sur Amazon). Il est parfait pour un pare-feu. Il devrait également fonctionner avec un adaptateur USB comme celui-ci.

Téléchargez mon antisèche !
Format PDF pratique, avec les 74 commandes à retenir pour maîtriser son Raspberry Pi.
Télécharger maintenant

Rappel: J'ai crée une communauté d'utilisateurs de Raspberry Pi qui vous permet de partage vos avancées, poser vos questions et recevoir de nombreux avantages exclusifs (anglophones uniquement). Cliquez sur le lien pour en savoir plus.

Conclusion

Voilà, vous devriez maintenant avoir une meilleure compréhension de la façon de créer un routeur pare-feu complet avec proxy sur un Raspberry Pi.

J’espère que cela vous conviendra.
Il m’a fallu beaucoup de temps pour écrire cet article, avec de nombreux tests que je n’ai pas inclus ici, mais vous avez les éléments les plus importants, avec les meilleurs outils.
Si vous rencontrez des problèmes, posez vos questions à la communauté et nous essaierons de vous aider.

De plus, ces outils sont basiques pour Linux, et vous pouvez trouver beaucoup d’aide sur Internet pour aller plus loin. Je vous donne tous les liens de documentation ici si nécessaire :

Téléchargez mon antisèche !
Format PDF pratique, avec les 74 commandes à retenir pour maîtriser son Raspberry Pi.
Télécharger maintenant

Ressources supplémentaires pour votre Raspberry Pi

Initiation au Raspberry Pi en vidéo
Si vous débutez et voulez passer rapidement à la vitesse supérieure, j’ai exactement ce qu’il vous faut.
Regardez ma formation vidéo qui vous aidera à démarrer du bon bien, choisir votre matériel, installer les meilleures applications et vous lancer directement dans vos premiers projets avec mon aide.
Regarder les vidéos dès maintenant

Maîtrisez votre Raspberry Pi en 30 jours
Vous avez besoin de plus ? Si vous êtes à la recherche des meilleures astuces pour devenir expert sur Raspberry Pi, ce livre est fait pour vous. Développez vos compétences sous Linux et pratiquez via de nombreux projets en suivant mes guides étape par étape. 10% de remise aujourd’hui !
Télécharger le livre au format PDF ici

Maîtrisez Python sur Raspberry Pi
Pas besoin d’être un génie pour coder quelques lignes pour votre Raspberry Pi.
Je vous apprends juste ce qu’il faut sur Python afin de réaliser n’importe quel projet. La seconde partie du livre est d’ailleurs consacrée à des exemples de projets où je vous guide pas à pas.
Ne perdez pas de temps, apprenez le strict nécessaire et économisez 10% avec ce lien :
Télécharger maintenant

Autres ressources pour profiter de votre Raspberry Pi
J’ai regroupé toutes mes recommandations de logiciels, sites utiles et de matériel sur cette page de ressources. Je vous invite à la consulter régulièrement pour faire les bons choix et rester à jour.
Visiter les pages ressources


Ce tutoriel ne marche plus à 100%? Prévenez-moi pour que je le mette à jour!

A lire également

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *