IPFire
| IPFire | |
| |
| Famille | Linux |
|---|---|
| État du projet | en développement constant |
| Dépôt | git.ipfire.org |
| Plates-formes | x86_64 ARM64[1] |
| Entreprise / Développeur |
Équipe IPFire |
| Licence | GPL |
| États des sources | Logiciel libre et open source |
| Dernière version stable | IPFire 2.29 - Core Update 202 ()[2] |
| Méthode de mise à jour | Pakfire[3] |
| Interface utilisateur par défaut | WebGUI[4] |
| Gestionnaire de paquets | Pakfire[5],[3] |
| Site web | www.ipfire.org |
IPFire est un firewall stateful destiné aux professionnels aussi bien qu'aux particuliers ; il est basé sur Linux From Scratch, une distribution Linux construite entièrement à partir du code source (contrairement aux autres distributions Linux, qui fournissent des paquets pré-compilés), que l'on peut installer sur un PC même un peu âgé, en fonction de ses besoins. On peut considérer l'ensemble comme une « distribution à usage spécifique » ou « distribution dédiée ».
Description
IPFire est un firewall, faisant naturellement office de routeur. Il est construit sur une base Linux From Scratch et, à la différence des autres distributions Linux, n'a pas vocation — pour des raisons évidentes de sécurité — à être utilisé en tant que système d'exploitation « normal » ; sa destinée est d'être installé sur un PC qui ne servira que de firewall / routeur et qu'on administrera, la plupart du temps, par le réseau ; typiquement : à partir d'un navigateur web, vers le port du serveur de la WebGUI (WUI)[4] ou d'une connexion SSH, à partir d'un terminal[6].
Concept
IPFire est la reprise, par une équipe de développeurs allemands[7], d'IPCop, pare-feu lui-même déjà basé sur Linux From Scratch, dont le développement a cessé en 2017.
L'un des concepts de base de cette distribution[8] est la facilité d'utilisation[9],[10], qui s'adresse principalement aux utilisateurs ayant peu de connaissances en administration des réseaux. Néanmoins, les développeurs ont veillé à ce que les administrateurs expérimentés disposent de toutes les options de configuration professionnelles[8].
Configuration requise
Au minimum[11] :
- processeur : depuis 2022, un processeur x86_64 ou ARM64 (et quelques autres[12]), cadencé à une fréquence de 1GHz ou plus ;
- RAM : 1GB minimum pour une configuration de base, mais prévoir plus si l'on compte ajouter des add-ons[13] et encore plus selon la taille du réseau ;
- HDD : un disque dur de 2GB minimum est requis[11], même si le système, en lui-même, nécessite seulement 200MB d'espace de stockage ; pour une configuration « de confort », les développeurs préconisent plutôt 4GB minimum (à cause des journaux et des add-ons) ; N.B. :
- IPFire supporte les disques de 3TB ou plus, de types IDE (PATA), SATA et SCSI. La plupart des contrôleurs RAID du marché sont également supportés[11].
- On peut utiliser un disque SSD (pour l'installation du système d'exploitation et des add-ons) ce qui aura pour avantage de considérablement réduire les délais de lectures/écritures, mais avec l'inconvénient de la durée de vie relativement courte (7 ans en moyenne, mais beaucoup moins sur un firewall, en raison d'un grand « TBW » (« Terabytes written », soit nombre de Téraoctets écrits)) de ce type de disques et du MTBF (qui dépend directement du TBW[14]).
- NICs : Deux cartes ethernet sont indispensables pour une utilisation minimale (« WAN » + « LAN ») et quatre sont requises pour utiliser la totalité des possibilités d'IPFire[15] :
- une pour le réseau « RED » (la patte « WAN », raccordée au modem / routeur xDSL ou fibre optique connecté au FAI) ;
- une deuxième, indispensable aussi, pour la connexion au LAN « GREEN » (la patte « LAN » du firewall, raccordée au(x) switch(es) du LAN) ;
- une troisième, facultative, pour le réseau « BLUE », raccordée à un point d'accès Wi-Fi (ou à un switch, lui-même connecté à un AP (Access Point / point d'accès)), pour gérer les connexions au(x) réseau(x) WiFI à l'intérieur du réseau ;
- enfin, une dernière, facultative également, pour le réseau « ORANGE », dédié à la DMZ.
Système de base
Le système de base[Quoi ?] est doté des fonctionnalités suivantes :
- serveur proxy avec filtre de contenu et fonctions de mise en cache pour les mises à jour (par exemple, les mises à jour Microsoft Windows, antivirus, etc.)
- système de prévention d'intrusions (IPS) Suricata
- VPN via IPsec et serveur OpenVPN
- serveur DHCP
- serveurs de noms avec mise en cache DNS (avec prise en charge de DNSSEC, dont DNS over TLS (DoT) )
- serveur de temps (NTP)
- Wake-On-LAN (WOL) (réveil depuis le réseau local)
- DNS dynamique (DynDNS, No-IP)
- Qualité de service (QoS)
- pare-feu stateful
- fonctions de surveillance du système et analyse des logs
- système de mises à jour des paquets sécurisée (chiffrée), fiable et facile à utiliser
- filtrage GeoIP (depuis la version 2.17 - Core Update 90)
- portail captif (depuis la version 2.19 - Core Update 115)
- protection SYN flood, contre les DDoS (depuis , version 2.29 - Core Update 187)
Pakfire : le gestionnaire de paquets
Pakfire est un système complet — et spécialement développé — de gestion des paquets, à l'instar de ses homologues (APT pour Debian ou YUM pour RedHat, Fedora ou CentOS).
Ses fonctionnalités les plus importantes sont :
- chiffrement : tous les paquets et les données transférées sont cryptés et signés numériquement par le serveur. Par conséquent, aucun paquet contrefait ne peut être installé ;
- miroirs : grâce au système de cryptage, on peut faire totalement confiance aux serveurs miroirs ;
- facilité et souplesse d'utilisation : l’installation des paquets est simple, avec sa propre interface graphique (WebGUI)[3], mais si l'on préfère, on peut utiliser la CLI, par l'intermédiaire de SSH, dans un terminal[5].
Addons
IPFire offre une grande quantité d'add-ons, qui sont régulièrement mis à jour par PakFire.
En ), il y a 99 add-ons disponibles[13], parmi lesquels on trouve :
- Tor[16] pour transformer IPFire en proxy Tor, grâce à Squid ;
- plusieurs serveurs de fichiers comme NFS[17], Samba[18], TFTPD[19] (lequel est très pratique pour héberger les images systèmes et les mises à jour des switches) ;
- Wireless Access Point[20], pour, à l'aide d'une carte Wi-Fi, transformer IPFire en point d'accès directement relié au réseau « BLUE » ;
- le serveur d'impressions CUPS[21], pour gérer les imprimantes du réseau ;
- Bacula[22] entre autres, comme solutions de backup ;
- postfix[23], le MTA bien connu sous Unix et fetchmail[24], pour récupérer, le cas échéant, le courrier sur un serveur POP ou IMAP ;
- Transmission[25], le client BitTorrent
- FreeRadius[26], offrant une solution centralisée d'authentification (communiquant avec LDAP (Active Directory, sous Windows), RADIUS et d'autres protocoles) ;
- Lynis[27] pour auditer les machines du réseau ou le firewall lui-même ;
- Près de 25 outils réseau, parmi lesquels :
- avahi[28] : découverte de services sur le réseau ;
- netcat / ncat [29] : « GNU-netcat » (« nc » de son petit-nom) est « le couteau-suisse de l'administrateur réseau » depuis 2004 ;
- nginx[30] : le descendant d'Apache, mini-serveur pouvant servir de proxy, de serveur mail et de serveur web, évidemment, à faibles coûts ; à placer aussi en DMZ ;
- nmap[31] : le scanner de ports le plus connu au monde, qu'on ne présente plus ;
- speedtest-cli[32] : testeur de bande passante en CLI, qui interroge le site Speedtest.net ;
- stunnel[33] : proxy permettant d'initier un tunnel chiffré TLS ;
- tcpdump[34] : permet de capturer des trames et d'analyser le trafic réseau (en CLI) ;
- traceroute[35] : plus besoin de le présenter non plus ;
- Une dizaine d'outils de surveillance, parmi lesquels :
- Et bien d'autres[Quoi ?], parmi lesquels :
- 7zip[38] : l'archiveur ultra-rapide, qui supporte les formats 7z, ZIP, CAB, ARJ, GZIP, BZIP2, TAR, CPIO, RPM et DEB ;
- firmware-update[39] et flashrom[40] : le premier met à jour les micro-logiciels inclus dans beaucoup de matériels actuels et le second permet de lire, voire d'écrire dans une ROM (donc, un firmware, un BIOS / EFI / coreboot, etc.) ;
- htop[41] : la version en mode semi-graphique (grâce à la bibliothèque ncurses, liée) de top, le moniteur d'utilisation mémoire (mémoire vive et mémoire partagée) et CPU, constamment rafraîchi ;
- Libvirt[42] et QEMU[43] : la première est la bibliothèque / API permettant au second d'émuler des architectures, offrant une solution de virtualisation correcte ;
- lshw[44] : affiche des informations très détaillées sur la partie matérielle de l'ordinateur sur lequel tourne IPFire ;
- le fameux mc[45] : gestionnaire de fichiers en mode semi-graphique, très pratique, puisqu'utilisable dans un terminal, dérivé de l'application Norton Commander sous DOS (MS-DOS, en l'occurrence);
- minicom[46] : l'incontournable émulateur ANSI et VT100, permettant de communiquer (en mode texte) avec le port RS-232 (« port série ») ce qui se révèle extrêmement utile quand on veut installer, configurer un switch ou un routeur sur lequel on n'a pas encore la main ;
- rsync[47] : une des meilleures solutions simples de synchronisation sécurisée (sauvegardes incrémentielles ou différentielles), en local ou à distance (via SSH) ;
- Enfin, il en existe également une petite dizaine d'autres, dédiés au multimédia[réf. nécessaire].
Notes et références
- ↑ (en-US) « ARM », sur ipfire.org, (consulté le ).
- ↑ Michael Tremer, « IPFire 2.29 - Core Update 202 released »
- 1 2 3 (en-US) « Pakfire », sur ipfire.org, (consulté le ).
- 1 2 (en-US) « Web Interface (WebGUI) », (consulté le ).
- 1 2 (en-US) « Using the Pakfire Console », (consulté le ).
- ↑ (en-US) « SSH Access », sur ipfire.org, (consulté le ).
- ↑ « IPFire Project », sur linkedin.com (consulté le ).
- 1 2 « IPFire », sur distrowatch.org, (consulté le ).
- ↑ « IPFire – La distribution Linux Routeur + Firewall », sur korben.info, (consulté le ).
- ↑ (en) « IPFire: A User-Friendly Linux Firewall Distribution », sur linux.com, (consulté le ).
- 1 2 3 (en-US) « System Requirements », sur ipfire.org, (consulté le ).
- ↑ (en-US) « ARM », sur ipfire.org, (consulté le ).
- 1 2 (en-US) « Add-ons », sur ipfire.org, (consulté le ).
- ↑ « Quelle est la durée moyenne de vie d’un SSD? », sur blog.kiatoo.com, (consulté le ).
- ↑ (en-US) « Network topologies and access methods », sur ipfire.org, (consulté le ).
- ↑ « Tor », sur ipfire.org, (consulté le ).
- ↑ (en-US) « NFS », sur ipfire.org, (consulté le ).
- ↑ (en-US) « Samba », sur ipfire.org, (consulté le ).
- ↑ (en-US) « tftpd », sur ipfire.org, (consulté le ).
- ↑ (en-US) « Wireless Access Point », sur ipfire.org, (consulté le ).
- ↑ (en-US) « CUPS », sur ipfire.org, (consulté le ).
- ↑ (en-US) « bacula », sur ipfire.org, (consulté le ).
- ↑ (en-US) « Postfix », sur ipfire.org, (consulté le ).
- ↑ (en-US) « fetchmail », sur ipfire.org, (consulté le ).
- ↑ (en-US) « Transmission », sur ipfire.org, (consulté le ).
- ↑ (en-US) « Freeradius Server », sur ipfire.org, (consulté le ).
- ↑ (en-US) « Lynis », sur ipfire.org, (consulté le ).
- ↑ (en-US) « avahi », sur ipfire.org, (consulté le ).
- ↑ (en-US) « netcat / ncat », sur ipfire.org, (consulté le ).
- ↑ (en-US) « Nginx », sur ipfire.org, (consulté le ).
- ↑ (en-US) « nmap », sur ipfire.org, (consulté le ).
- ↑ (en-US) « speedtest-cli », sur ipfire.org, (consulté le ).
- ↑ (en-US) « stunnel », sur ipfire.org, (consulté le ).
- ↑ (en-US) « tcpdump », sur ipfire.org, (consulté le ).
- ↑ (en-US) « Traceroute », sur ipfire.org, (consulté le ).
- ↑ (en-US) « NRPE », sur ipfire.org, (consulté le ).
- ↑ (en-US) « watchdog », sur ipfire.org, (consulté le ).
- ↑ (en-US) « 7zip », sur ipfire.org, (consulté le ).
- ↑ (en-US) « firmware-update », sur ipfire.org, (consulté le ).
- ↑ (en-US) « flashrom », sur ipfire.org, (consulté le ).
- ↑ (en-US) « htop », sur ipfire.org, (consulté le ).
- ↑ (en-US) « Libvirt », sur ipfire.org, (consulté le ).
- ↑ (en-US) « QEMU », sur ipfire.org, (consulté le ).
- ↑ (en-US) « lshw », sur ipfire.org, (consulté le ).
- ↑ (en-US) « mc », sur ipfire.org, (consulté le ).
- ↑ (en-US) « minicom », sur ipfire.org, (consulté le ).
- ↑ (en-US) « rsync », sur ipfire.org, (consulté le ).
Liens externes
- Portail de Linux
