Le projet libre ALCASAR permet de gérer les accès à Internet réalisés à partir d’un réseau de consultation mis à disposition du public, de collaborateurs, de clients, de mineurs ou de ses enfants.
Initialement, le seul objectif du projet était de tracer et d’imputer les connexions des utilisateurs d’un réseau de consultation afin de protéger son propriétaire des actions illégales commises à partir de son réseau. Cette obligation légale était décrite dans la LCEN (Loi de Confiance en l’Économie Numérique). Après plusieurs évolutions des lois, c’est aujourd’hui dans le CPCE1 (Code des Postes et des Communications Électronique) que les exigences de traçabilité et d’imputabilité des connexions sont imposés à la fois aux prestataires de communication, aux propriétaires de réseaux de consultation, mais aussi aux hébergeurs de contenu. Le Décret N°2021-13622 définit le contenu des traces à générer. Au chapitre D.3.1 (p40) de son guide lié à la journalisation3, l’ANSSI liste des exemples d’entités concernées par cette obligation de traçabilité.
Une des difficultés a été de faire en sorte que les traces générées par ALCASAR restent réservées aux autorités en charge d’une enquête. Le propriétaire du réseau ne peut accéder qu’à des statistiques d’usage de son réseau.
Le projet ayant été diffusé dans des organismes accueillant des mineurs (école, centre de vacances, etc.) il nous a été demandé d’intégrer un dispositif de filtrage. Les briques technologiques libres que nous avions intégrés nous ont permis de proposer un système de filtrage par utilisateurs (ou groupe d’utilisateurs) exploitant le mode « liste noire » (tout est autorisé sauf …) et le mode « liste blanche » (tout est interdit sauf…). Dans ALCASAR, nous utilisons l’excellente liste élaborée et maintenue par l’Université de Toulouse-Capitol.
Ce système de filtrage répond aujourd’hui à la fois aux besoins réglementaires des organismes d’enseignement (circulaire 2004-0354), des entreprises, collectivités, centres de vacances. Il n’est pas rare de voir aussi des ALCASAR installés pour des besoins de contrôle parentales (besoins de prévention).
Comme pour tout projet libre, les contributeurs proposent des correctifs ou des nouvelles fonctionnalités qui répondent souvent à leurs besoins spécifiques. Cela permet d’enrichir le projet (auto-inscription des utilisateurs par SMS ou Email, connecteurs avec les serveurs d’authentification LDAP/A.D. d’entreprise, installation simplifiée, équilibrage de charge multi-routeurs, etc.). Sur notre forum, les idées fusent et alimentent la liste des travaux à réaliser (todolist) qui ne désemplit pas. À travers les besoins d’évolutions d’ALCASAR, nous sommes fiers d’avoir aussi pu contribuer à l’évolution d’autres projets libres que nous exploitons.
ALCASAR est constitué d’une vingtaine de logiciels libres sélectionnés et configurés avec le plus grand soin. Il est bâti sur une distribution Linux-Mageia qui a été choisie pour la qualité du travail de ses packagers (packager = contributeur qui compile et assemble des logiciels constitutifs de la distribution). Vous imaginez bien que ce choix n’est pas du tout lié au fait que Mageia reste la seule distribution Linux française ;-)
Le cœur d’ALCASAR bat au rythme du serveur d’authentification, d’autorisation et de journalisation « freeradius », portail captif « coova-chilli » qui fait aussi office de client radius, de la base de données « mariadb », de 4 serveurs DNS « unbound » et du service WEB constitué du couple « lighttpd + PHP ». Le parefeu du noyau Linux (netfilter) conduit et oriente les flux réseau entre les différents éléments de manière dynamique en fonction des attributs des utilisateurs (filtré / non filtré / débit limité / périodes autorisées / etc.). Il assure aussi une grande partie de la journalisation des traces de connexion au moyen d’un agent « Netflow » spécifiquement compilé pour lui.
Une association a été créée afin de fédérer les contributeurs, d’encourager l’entre-aide et le partage des connaissances et afin de promouvoir l’utilisation du logiciel libre. Cette association est membre de l’AFUL (Association Francophone des Utilisateurs de Logiciels libres).
En termes de communication, le projet est présenté sur un site Web1. Les contributions au développement peuvent être suivies sur un serveur Subversion2. Un forum permet d’interagir avec les développeurs / utilisateurs3.
À travers cet article, nous remercions une nouvelle fois l’ADULLACT qui nous offre l’hébergement de divers ressources du projet.