Il peut être intéressant pour les particuliers ou les entreprises d’avoir un firewall pour limiter l’accès à certains sites, soit pour protéger ses enfants, soit pour limiter les risques sur le réseau de l’entreprise. Et ce pour un coût réduit, un Raspberry Pi que vous trouverez à moins de 40€, une carte réseau USB que vous trouverez à partir de 3,50€, une carte SD de 4Go à 6€ et la distribution IPfire de Linux (pour processeur arm) que vous trouverez gratuitement ici.
Télécharger IPfireCe qui nous fait le tout à moins de 50€.
Prérequis
Pour pouvoir installer IPfire sur la carte SD, il faut tout d’abord installer le l’utilitaire Win32_Disk_Imager et d’avoir téléchargé le fichier « .img » de la distribution IPfire (lien donné en introduction).
Télécharger Win32DiskImagerInstallation de IPfire sur la carte SD du Raspberry Pi
Insérez votre carte SD dans le lecteur de votre ordinateur, une fois celle-ci reconnue, lancez Win32DiskImager (que vous avez installé préalablement) et cliquez sur l’icône représentant un dossier :
Sélectionnez le fichier « .img » que vous avez téléchargé précédemment
Choisissez ensuite la lettre de lecteur correspondant à votre carte SD :
Attention de ne pas vous tromper de lecteur
Il suffit ensuite de cliquer sur « Write » pour lancer l’écriture sur la carte :
Vous pouvez voir un message de confirmation d’écriture :
C’est votre dernière chance de vérifier le lecteur. Confirmez avec « Yes »
Vous pouvez suivre l’avancement de l’écriture de IPfire sur votre carte SD :
Une fois terminé, le message « Write successfull » s’affiche
Il ne vous reste plus qu’à quitter l’utilitaire et éjecter la carte SD.
Configuration de base
Installez la carte SD dans le lecteur SD du Raspberry puis connectez la carte réseau USB que vous vous êtes procuré chez votre marchand préféré.
Le système démarre et reboot, c’est tout à fait normal.
Vous arrivez ensuite sur un super écran, fond bleu et fenêtre grise pour la configuration de IPfire (non non, nous n’avons pas remonté le temps), bien entendu la souris n’est pas prise en charge.
Première fenêtre, je vous passe le screen, c’est la sélection du clavier, pour moi ce sera donc fr-pc.
Seconde fenêtre sélection du fuseau horaire, pour moi « Europe/Paris ».
Image suivante nom de la machine :
IPfire me convient très bien donc je laisse
On vous propose ensuite d’entrer le nom de votre domaine :
N’ayant pas de domaine je laisse « localdomain »
Ensuite, il vous est demandé de définir le mot de passe du compte « root », c’est le compte utilisateur qui est actif sur IPfire pour l’accès en ligne de commande :
A vous de choisir votre mot de passe, attention à ne pas l’oublier (lorsque vous tapez votre mot de passe, le curseur n’avance pas mais les caractères tapés sont pris en compte)
Vient ensuite la demande du mot de passe du compte « admin » qui lui sert à s’authentifier sur la page d’administration web :
Je vous conseillerai un mot de passe différent du précédent
Configuration réseau
Vous arrivez alors au menu de configuration réseau :
On va commencer par le début, type de configuration réseau
Ici vous allez choisir la configuration que vous souhaitez, IPfire propose jusqu’à 4 paramétrages de carte réseau pour 3 réseaux différents sous IPfire, ces catégories ont un code couleur :
- Rouge = pour le wan
- Vert = pour le lan
- Orange = pour le DMZ (zone de dématerialisation)
- Bleu = pour le wlan
Pour ma part, je ne vais configurer que 2 réseaux, le rouge (accès à internet) et le vert (mon lan) :
Vous sélectionnez ce qui vous convient pour votre installation
Une fois sélectionné, vous êtes renvoyé au menu de configuration réseau :
Continuons « drivers and card assignements »
Ici il va s’agir d’assigner une couleur à une carte réseau :
Pour moi 2 couleurs disponible puisque j’ai choisi de ne configurer que 2 cartes. Sélectionné une couleur puis attribué lui une carte réseau, faites la même chose pour toutes vos cartes réseau
Une fois toutes les couleurs attribuées vous avez un récapitulatif :
Vérifiez et validez
Une fois validé, vous êtes renvoyé au menu de configuration réseau :
Nous allons configurer les interfaces réseau de nos cartes
Pour chaque couleur une configuration :
La verte pour le lan et la rouge pour le wan
Une fenêtre apparait lorsque vous configuré le lan, juste un avertissement pour dire que si on change l’IP actuelle de IPfire, il faudra nous reconnecter avec la nouvelle, en l’occurrence on s’en fiche un peu :
On valide « OK »
Déterminons l’adresse IP de notre machine IPfire :
A vous de voir en fonction de vos besoins
On passe ensuite à la suivante, pour moi la rouge :
Je mets mon interface rouge en DHCP afin qu’elle obtienne sa configuration par ma box ce qui rend mon IPfire Raspberry fonctionnel où que je le connecte
Il nous reste donc « DNS and Gateway settings » dans notre menu de configuration réseau :
Pour ceux qui ont choisi comme moi leur interface rouge en DHCP, vous n’avez pas besoin de configurer ceci
Pour les autres qui sont en IP statique ou ceux qui ont configuré en PPPoE :
Rien de bien compliqué, DNS et passerelle
Une fois configuré, on revient sur le menu de configuration réseau et on valide « Done » pour passer à la suite.
Il est temps de configurer le serveur DHCP de notre IPfire :
Pensez à cocher « Enabled » (avec la touche espace) afin d’activer le serveur DHCP, puis votre configuration, plage d’adresses, DNS, nom de domaine
Bravo, vous avez fini la configuration réseau de votre IPfire :
La machine redémarre, ça prend quelques minutes
Après redémarrage, vous pouvez vous « logger » avec votre login « root » et le mot de passe qui va avec. Vous pouvez vérifier votre configuration réseau des cartes de votre IPfire avec la commande « ifconfig | grep inet » :
Tout est bon, reste plus qu’à brancher le Raspberry entre la box/modem et le switch
Connexion à l’interface web de IPfire
Une fois connecté au switch derrière le Raspberry, vous pouvez vérifier que le serveur DHCP de IPfire fonctionne bien avec la commande (dans une fenêtre CMD) ipconfig :
Je retrouve donc mon localdomain, mon IP donné par IPfire et ma passerelle qui correspond à l’ip de IPfire
Je peux donc me connecter à l’interface web de IPfire, pour cela, ouvrez votre navigateur préféré et dans la barre d’adresse tapez https://ip_de_votre_IPfire:444
Vous avez donc la fenêtre d’authentification qui s’ouvre :
C’est ici que vous vous « logger » en tant qu’admin et le mot de passe qui va avec
Vous arrivez sur une belle page rouge avec le pinguin linux en flamme, il suffit de cocher « j’accepte les termes et conditions » et cliquez sur « yes ».
Mettre l’interface web en français
Ben oui quoi, pas tout le monde est bilingue, alors !!!
Sur la page d’accueil de l’interface web, allez sur « System » :
Puis cliquez sur « GUI Settings »:
Cliquez ensuite sur le menu déroulant dans « Display » :
Puis cliquez sur « Save », vous voici en français
Configuration du filtre d’URL
On peut bien entendu faire pleins de choses avec ce firewall, multiples services fourni avec la distribution et bien plus d’add-on encore. Pour ce qui m’intéresse ici, ce sont les filtres d’URL. Plusieurs catégories sont disponible mais vous allez voir qu’on peut les multiplier grâce notamment à la blacklist de l’université de Toulouse.
Dans l’onglet « réseau » vous avez « filtre de contenu » :
On peut voir 11 catégories
Importons la « blacklist » de l’université de Toulouse, pour se faire, sur la même page en bas vous avez « Maintenance URL filter » :
Il suffit d’indiquer l’URL de téléchargement de la liste de Toulouse :
ftp://ftp.ut-capitole.fr/pub/reseau/cache/squidguard_contrib/blacklists.tar.gz
Dans “Parcourir” indiquez le chemin de la liste téléchargée, ensuite mettez les paramètres que vous souhaitez, cliquez sur « télécharger blacklist » puis sur « valider paramètres de mise à jour »
Retournons en haut de page :
Nous sommes passé de 11 catégories à plus de 60, cochez celles que vous désirez bloquer
Pensez à sauvegarder une fois les catégories cochées
Une fois terminé et sauvegardé les paramètres, il faut activer le filtre dans le « webproxy », donc onglet « réseau » puis « webproxy » :
Il faut cocher les 3 cases, si vous ne cochez pas « transparent sur Green, vous devrez alors paramétrer le proxy dans chaque navigateur web
Il est possible de personnaliser le message d’erreur reçu lors d’une tentative de connexion à un site inconnu, pour ça c’est dans « filtre de contenu » (la page de la blacklist).
Nous pouvons faire un test, je tente un site interdit par IPfire :
Mince !!!
A SUIVRE PARAMÉTRAGE OPENVPN SOUS IPFIRE ON RASPBERRY PI…
Bonjour,
Avez-vous un modèle de carte réseau USB 2.0 / 3.0 qui fonctionne sans problème pour réaliser ce tutoriel ?
Merci,
Bonjour,
j’ai réalisé le tutoriel avec cette carte :
http://www.amazon.fr/Aukru-Adaptateur-USB-2-0-Ethernet/dp/B00OIGPWRI/ref=sr_1_2?ie=UTF8&qid=1428511167&sr=8-2&keywords=usb+r%C3%A9seau#productDetails
mais toute carte USB compatible Linux devraient fonctionner, vous avez eu des problèmes avec quelle carte?
Hello,
Perso j’ai cette carte usb 3 / ethernet
http://amzn.to/1E4Lex6
est-ce qu’elle pourrait convenir ?
Merci,
salut,
oui elle devrait fonctionner selon ses caractéristiques techniques.
je veux bien un retour dans le cas contraire.
merci
Peut-on faire en sorte que le webproxy n’agisse que pour une seule IP du réseau ? Genre pour filtrer l’ordinateur portable d’un enfant et pas celui des parents ?
Ip webproxy en passerelle pour laptop à protéger
Ip box internet en passerelle pour celui des parents
Merci 🙂
salut,
ça ne marchera pas comme ça, ton ipfire crée un autre réseau, il te faut obligatoirement une passerelle de se même réseau pour en sortir et atteindre la box par exemple
oui on peut le faire, sur la page où se trouve la liste des catégories à interdire, plus bas il y a :
Contrôle d’accès réseau en fonction
Adresses IP non filtrées
Salut,
Cela bloque aussi les images dans google ?
salut,
malheureusement on ne peut bloquer les vignettes, mais on peut bloquer l’origine de l’image ce qui a pour effet d’éviter qu’il puisse ouvrir le lien de l’image.
pour ça, toujours sur la page URLfilter, activer la liste de mots clé perso et tapez les mots qui réfèrent aux images non voulu.
vous pouvez aussi activer l’option « safe search » de google dans vos navigateur :
sur la page google en bas à droite « Paramètres »
Accédez à la page « paramètres de recherche »
Recherchez la section « Filtres SafeSearch ».
Activez SafeSearch en cochant la case située à côté de l’option « Filtrer les résultats à caractère sexuel explicite ».
Cliquez sur Enregistrer en bas de la page.
Bonjour,
comment faire pour avoir la même infra mais avec des accès en Gigabit. en effet j’ai la fibre. ce serait dommage de me brider à 100 mbits.
merci
à moins que le raspberry puisse gérer un USB/Ethernet 1Gb ce dont je doute, il faudra passer par une autre machine avec une carte réseau Gb
On touche le point sensible négatif du Rpi : 100 MB maxi.
Ca et le chipset USB/ethernet partagé.
il est vrai, mais je dirai plutôt qu’on touche à l’équilibre prix/prestation, on ne peut tout demander à un tarif aussi bas 😉
tout à fait mais trouver un micro PC type NUC avec deux interfaces Giga Intel … pas si simple
Bonjour, conseillez-vous ipfire ou pfsense pour une grosse structure? Merci d’avance pour votre réponse.
Martin
Bonjour,
les deux se valent dans l’ensemble, à voir avec exactitude ce dont vous avez besoin. IPfire reste très activement développé.
un comparatif que je trouve intéressant :
http://jimiz.net/2014/11/ipfire-pfsense-firewall-review/#axzz3XNRpabt9
Bonjour,
Je n’arrive pas a le faire fonctionner sur Raspberry pi 2 si vous avez une autre solution ou logiciel équivalente je suis preneur.
Merci
Bonjour,
je vais me procurer un Raspberry Pi 2, là je ne connais pas d’autres distrib de ce type qui passerai sur une config aussi petite que le raspberry (je vais quand meme chercher).
merci pour l’info
Merci pour ta réponse, il y a Squid je le fais tourner sur Raspbian mais j’ai pas encore eu le temps de le configurer. Je pense que c’est bien plus lourd que IPfire. Dommage que IPfire ne tourne pas sur Raspberry PI 2.
Cela fonctionne il avec un Raspberry Pi 2 ? Des nouvelles ?
Sinon pourrais je avoir le lien exacte Raspberry Pi qui fonctionne avec IPfire svp. Ca serait sympa 😉
Cela fonctionne il avec un Raspberry Pi 2 ? Des nouvelles ?
Sinon pourrais je avoir le lien exacte Raspberry Pi qui fonctionne avec IPfire svp. Ca serait sympa 😉
tous les raspberry jusqu’à la version B rev2
à partir de la version B+ il n’est pas compatible
Merci Christophe
Apparemment pas de raspberry 2pour ip Fire : http://forum.ipfire.org/viewtopic.php?t=12541
Je cherche quand même un lien internet précis pour le modèle qui fonctionne avec ipfire svp.
Super article. Je vais essayer et acheter
On dirait pfsense ou smoothwall. C’est la même « famille » ?
Merci 🙂
oui ça ressemble pas mal à pfsense dans les caractéristiques
malheureusement, ipfire n’aura pas de version compatible avec rpi2 à cause de la faiblesse du port ethernet qui est le même que le rpi.
http://forum.ipfire.org/viewtopic.php?t=12541
Bonjour. Merci pour ce tuto qui m’a permis de créé mon PI-fire 🙂 Comment faire pour déporter les logs sur une clé USB ? J’ai bien le la doc http://wiki.ipfire.org/en/optimization/transfer_logs/start mais je suis nul en anglais. Encore merci.
Bonjour,
je ne vois pas comment t’expliquer ça facilement, il faudrait traduire tout le wiki ce qui ferai un tuto vu la taille.
Bonjour Christophe !
Actuellement avec un vrai dédié & Ipfire, j’ai dans l’optique de tester et par curiosité ce Rasp 2 (que j’ai déjà). Ceci étant j’aurais aimé pouvoir discuter avec toi sur des aspects plus technique de cette config et de ton retour sur un avis personnel.
Est ce possible d’avoir un contact (skype/mail/phone/autres)?
Mon compte ici est celui de mon twitter 😉
Grand merci & à bientôt,
Kéro @progerance
Merci
Bonjour, A la lecture de ce tuto, j’en conclu qu’il est possible d’installer Ipfire sur Raspberry, mais en lisant les commentaires, j’en conclu que ça ne fonctionne pas en réalité à cause des 100 MB maxi de débit ethernet et le chipset USB/ethernet partagé. Voir ici aussi pour Pi2 : http://forum.ipfire.org/viewtopic.php?t=12541
Alors je me demande l’intérêt de ce tuto et surtout du titre trompeur. Ah société du spectacle, quand tu nous tient!