Naviguer sur internet peut s’avérer complexe de nos jours, compte tenu de la quantité de contenus inappropriés et potentiellement dangereux qui y circulent. Face à cette réalité, les parents se tournent souvent vers des solutions de contrôle parental et de filtrage commercial. Bien que ces outils soient efficaces, ils se révèlent parfois limités lorsqu’il s’agit de configurer un ordinateur Linux pour les enfants.
Heureusement, les utilisateurs de Linux ont à leur disposition une excellente alternative open source offrant d’excellentes fonctionnalités de contrôle parental pour le web : DansGuardian. Ce système de filtrage web open source se distingue par sa facilité de mise en place. Contrairement aux solutions commerciales qui s’appuient sur des listes préétablies de « sites interdits », DansGuardian permet aux utilisateurs de personnaliser le filtre en fonction de leurs besoins spécifiques, afin de protéger leurs enfants contre les contenus inappropriés.
Le logiciel de filtrage DansGuardian est compatible avec toutes les distributions Linux, mais Ubuntu représente un excellent point de départ pour les débutants. C’est pourquoi nous allons nous concentrer sur son installation et sa configuration sous Ubuntu. Toutefois, si vous utilisez un autre système d’exploitation, n’hésitez pas à consulter le site officiel pour obtenir des informations complémentaires.
Installation de DansGuardian
Pour commencer, ouvrez une fenêtre de terminal et saisissez la commande suivante :
sudo apt install iptables dansguardian squid
Après avoir installé le logiciel, il est également conseillé de mettre à jour votre système Ubuntu pour garantir que tout fonctionne correctement avec les derniers correctifs.
sudo apt update sudo apt upgrade -y
Une fois les mises à jour importantes effectuées et la dernière version de DansGuardian installée, l’étape suivante consiste à configurer un serveur proxy.
Configuration du proxy Squid
Squid est un serveur proxy de mise en cache web qui, associé à DansGuardian, permet d’optimiser le filtrage et d’accélérer le trafic web. La configuration de Squid se limite à quelques modifications de paramètres de port. Pour ce faire, utilisez l’outil `sed` afin de modifier le paramètre `http_port` :
sudo sed -i 's/http_port 3128/http_port 3128 transparent/g' /etc/squid/squid.conf
Après avoir modifié `http_port`, vous devez également ajuster le paramètre `always_direct` à « autoriser tout ». Utilisez à nouveau `sed` pour effectuer cette modification :
sudo sed -i 's/# always_direct allow local-servers/always_direct allow all/g' /etc/squid/squid.conf
Une fois Squid configuré, lancez-le à l’aide de la commande de démarrage :
sudo squid start
Configuration de DansGuardian
Le proxy Squid étant opérationnel, il est temps de personnaliser les « listes d’interdiction » dans le logiciel de filtrage. Nous n’allons pas proposer de listes spécifiques de sites, d’URL ou d’autres éléments à bloquer, car les besoins de chaque parent sont différents. Il vous appartient d’explorer et de spécifier le contenu à bloquer dans les fichiers de configuration, à l’aide de l’éditeur Nano.
Il est important de noter que les enfants sont souvent créatifs lorsqu’il s’agit de contourner les blocages. Il peut donc s’avérer nécessaire de faire des recherches et de consulter des forums parentaux afin d’obtenir les meilleurs résultats possibles.
Pour modifier la liste des extensions interdites dans DansGuardian, procédez comme suit :
sudo nano /etc/dansguardian/lists/bannedextensionlist
Modifiez la liste des sites web interdits dans DansGuardian à l’aide de la commande :
sudo nano /etc/dansguardian/lists/bannedsitelist
Enfin, modifiez la liste des URL interdites dans DansGuardian en utilisant :
sudo nano /etc/dansguardian/lists/bannedurllist
Enregistrez vos modifications avec `Ctrl + O`, puis quittez Nano avec `Ctrl + X`.
Il est important de noter que DansGuardian peut exiger les adresses IP, en plus des noms de domaine, pour les sites web et les URL. Pour trouver l’adresse IP d’un site public, vous pouvez utiliser la commande `ping` dans le terminal. Par exemple :
ping facebook.com -c1
L’adresse IP publique de Facebook correspond au nombre entre parenthèses.
Configuration avancée de Squid
Maintenant que Squid fonctionne, il ne reste plus qu’à modifier quelques options supplémentaires. Commencez par supprimer la mention « non configuré » du fichier de configuration :
sudo sed -i 's/UNCONFIGURED - Please remove this line after configuration/#UNCONFIGURED - Please remove this line after configuration/g' /etc/dansguardian/dansguardian.conf
Ensuite, modifiez l’option `filterip` pour qu’elle corresponde à l’adresse IP de l’hôte local (127.0.0.1) :
sed -i 's/filterip =/filterip = 127.0.0.1/g' /etc/dansguardian/dansguardian.conf
Modifiez l’entrée `daemonuser` dans le fichier de configuration de DansGuardian en `proxy` :
sed -i 's/#daemongroup = 'dansguardian'/daemongroup = 'proxy'/g' /etc/dansguardian/dansguardian.conf
Modifiez `accessdeniedaddress` dans le fichier `dansguardian.conf` pour qu’il pointe vers l’URL correcte :
sed -i 's/accessdeniedaddress="https://YOURSERVER.YOURDOMAIN/cgi-bin/dansguardian.pl"/accessdeniedaddress="https://localhost/cgi-bin/dansguardian.pl"/g' /etc/dansguardian/dansguardian.conf
Bloquez ensuite toutes les connexions sur l’ordinateur, à l’exception de celles transitant par le proxy :
sudo iptables -A OUTPUT -p tcp -m multiport --dports 80,443 -j DROP
sudo bash -c "iptables-save > /etc/dansguardian/iptables.save"
sudo sed -i "/exit 0/d" /etc/rc.local
sudo echo "iptables-restore /etc/dansguardian/iptables.save exit 0 " >> /etc/rc.local
Vous pouvez également utiliser cette commande pour autoriser un utilisateur spécifique tout en bloquant tous les autres. Remplacez `USER` par le nom d’utilisateur concerné :
sudo iptables -A OUTPUT -o lo -p tcp --dport 3128 -m owner --uid-owner USER -j ACCEPT
sudo bash -c "iptables-save > /etc/dansguardian/iptables.save"
sudo sed -i "/exit 0/d" /etc/rc.local
sudo echo "iptables-restore /etc/dansguardian/iptables.save exit 0 " >> /etc/rc.local
Enfin, modifiez le propriétaire des fichiers journaux de DansGuardian sur Ubuntu afin que l’utilisateur `proxy` puisse y accéder, puis démarrez DansGuardian :
sudo chown -R proxy:proxy /var/log/dansguardian sudo systemctl enable dansguardian sudo systemctl start dansguardian
Configuration du proxy
Pour commencer à utiliser DansGuardian, ouvrez un terminal et saisissez les commandes proxy suivantes :
gsettings set org.gnome.system.proxy mode 'manual' gsettings set org.gnome.system.proxy.http host 'localhost' gsettings set org.gnome.system.proxy.http port 8080
Fermez le terminal une fois terminé. Votre système Ubuntu devrait désormais utiliser le proxy de DansGuardian.