Installation de CTparental et configuration

Installation de CTparental et configuration

CTparental est un logiciel Libre et gratuit de contrôle parental pour Linux. Voici comment procéder pour l’installation de CTparental et sa configuration sur Debian, Ubuntu et ses dérivés comme Linux Mint…

Rappel : un contrôle parental est une aide, mais ne remplacera pas complètement la surveillance directe de vos enfants quand ils utilisent un ordinateur et le dialogue pour les accompagner dans son utilisation ou lorsqu’ils vont sur internet.

Prérequis

  • Disposer d’une connexion internet active pour l’installation. Sinon elle échouera.
  • Disposer d’un compte utilisateur disposant des droits administrateurs pour l’installation.

Avant de débuter l’installation de CTparental

Créer des comptes utilisateurs pour vos enfants

Avant de commencer à utiliser CTparental, il faut créer un ou plusieurs comptes utilisateurs standards sur votre ordinateur pour votre/vos enfant(s). Le système de contrôle parental n’est pas actif sur un compte administrateur. En effet, un administrateur pourrait modifier manuellement les fichiers de configuration du contrôle parental, ce que ne pourra pas faire un utilisateur standard.

Aussi, avoir plusieurs comptes distincts pour vous et vos enfants, permettra un contrôle parental sur certains (ceux des enfants) et pas sur d’autres (ceux des parents). Et ainsi, vous pourrez définir des périodes d’activités (plage de temps sur internet et/ou sur l’ordinateur) pour chacun des comptes enfants alors que les comptes parents ne seront pas affectés.

Puis, si vous ne l’avez pas encore fait, désactivez la session invitée.

Enfin, assurez-vous que vos enfants ne connaissent pas vos mots de passe pour vos comptes ou pour la gestion du contrôle parental. Sinon, n’hésitez pas à en changer et gardez-les secret. 🙄

Télécharger la version qui vous convient pour l’installation de CTparental

Quand on arrive sur la page de téléchargement de CTparental, on peut être un peu perdu pour savoir quelle version télécharger.

Tout d’abord identifiez la version de votre distribution. En effet, du fait que d’une version à l’autre pour une distribution les paquets disponibles sur les dépôts évoluent, CTparental propose des versions différentes pour une même distribution qui s’adaptent à ces variations :

  • dansguardian vs e2guardian (filtrage Web) : Debian 9 et Ubuntu 16.04 dispose de dansguardian sur leurs dépôts. Mais à partir de Debian 10 et Ubuntu 18.04, e2guardian (un fork de dansguardian qui n’est plus maintenu) le remplace.
  • Iptable vs nftable (pare-feu) : Debian 9 et Ubuntu 16.04 et 18.04 utilise Iptable comme Firewall. Mais à partir de Debian 10 et Ubuntu 20.04, nftable le remplace.

En plus de paquets d’installation différents en fonction de la version de la distribution, vous avez le choix entre un installeur pour :

  • Une protection plus complète. Pour le filtrage et la sécurité, CTparental s’appuiera sur ClamAV (antivirus), dnsmasq (version 4.x) ou dnscrypt-proxy (version 5.x) pour la résolution et le filtrage par nom de domaine et Privoxy (proxy) associé à dansguardian/e2guardian (filtrage) qui permet un filtrage plus poussé.
  • Ou une protection minimale (signalée avec un m à la fin) où uniquement dnsmasq ou dnscrypt-proxy sera installé pour un filtrage par DNS.

Et si vous optez pour l’installation minimale, alors vous pouvez choisir quel type de serveur web hébergera sur votre machine les pages d’administration :

  • lighttpd
  • ou nginx

Si vous ne savez pas quelle version choisir, testez la version complète avec lighttpd qui permettra d’assurer une protection plus complète…

Maintenant, rendez-vous sur la page de téléchargement de CTparental et téléchargez la version qui vous convient.

Désinstaller les précédentes versions de CTparental

Malheureusement, CTparental ne peut se mettre à jour par l’installation d’une nouvelle version. Aussi si vous avez déjà installé une version de CTparental, il faut la désinstaller avant d’installer une nouvelle version. Ainsi vous éviterez des problèmes dus à des conflits de version.

Installation de CTparental

L’installation de CTparental doit se faire en ligne de commande.

En effet, l’utilisation d’une interface graphique (Software Center, GUI GDebi) pose généralement des problèmes pour certains paramétrages pendant le setup.

Sous Debian, Ubuntu, Linux Mint ou autres dérivés je recommande l’utilisation de Gdebi.

Pour installer Gdebi, s’il n’est pas déjà présent, faites :

sudo apt update && sudo apt install gdebi

Puis, pour débuter l’installation de CTparental, faites :

sudo gdebi /chemin_vers_l_installeur/ctparental_version_all.deb
  • chemin_vers_l_installeur est à remplacer par le chemin qui va bien (exemple : ~/Téléchargements/)
  • et ctparental_version_all.deb est à remplacer par le nom du paquet que vous avez téléchargé (exemple : ctparental_ubuntu20.04_lighttpd_4.44.18-1.0_all.deb)

Si vous n’avez téléchargé qu’un paquet vous pouvez faire alors :

sudo gdebi /chemin_vers_l_installeur/ctparental_*_all.deb

Validez l’installation du paquet en répondant o :

installation CTparental - Début

Alors, vous allez devoir configurer votre clavier pour la console :

installation CTparental - config clavier dans terminal

Sélectionnez ne pas modifier le codage du clavier pour garder celui que vous avez :

installation CTparental - config clavier dans terminal 2

Choisissez un identifiant qui permettra de se connecter à l’interface de configuration de CTparental :

installation CTparental - identifiant

Puis définissez un mot de passe complexe que votre enfant ne connaît pas et confirmez-le.

Le mot de passe doit contenir 6 caractères minimum et un chiffre, une minuscule, une majuscule et un caractère spécial (&éè~#{}()ç_@à?.;:/!,$<>=£%).

installation CTparental - mot de passe

Et attendez que l’installation de CTparental soit terminée avant de débuter le paramétrage de CTparental

installation ctparental - fin

Désinstallation de CTparental (aussi en ligne de commande)

En fonction de votre version, voici les commandes de d’installation :

Pour les versions utilisant dansguardian (Debian 8, Ubuntu 16.04) :

sudo apt autoremove --purge ctparental clamav-* privoxy dansguardian dnsmasq lighttpd* nginx*

Si vous voulez conserver l’antivirus ClamAV installé, supprimez clamav-* de la commande

puis supprimez le dossier d’installation de CTparental :

sudo rm -rf /etc/CTparental

et le dossier du serveur web qui héberge les pages de gestion de CTparental :

sudo rm -rf /etc/lighttpd/

ou

sudo rm -rf /etc/nginx/

Si vous hébergez un autre site web sur l’un d’eux, n’effacez pas le dossier sinon vous risquez de tout perdre…

Pour les versions utilisant e2guardian (Debian 9 et supérieures, Ubuntu 18.04 et supérieures) :

sudo apt-get autoremove --purge ctparental clamav-* privoxy e2guardian dnsmasq nginx* lighttpd*

Si vous voulez conserver l’antivirus ClamAV installé, supprimez clamav-* de la commande

puis supprimez le dossier d’installation de CTparental :

sudo rm -rf /etc/CTparental

et le dossier du serveur web qui héberge les pages de gestion de CTparental :

sudo rm -rf /etc/lighttpd/

ou

sudo rm -rf /etc/nginx/

Si vous hébergez un autre site web sur l’un d’eux, ne les effacez pas…

Configuration de CTparental

La configuration et la gestion de CTparental se fait par une interface web protégée par un login/mot de passe (celui défini pendant l’installation) qui se trouve à cette adresse https://admin.ct.local.

page de connexion administration
Page de connexion pour la configuration de CTparental

Entrez l’identifiant créé durant l’installation et le mot de passe.

En haut de la page, vous avez l’état de CTparental. Vérifiez que le filtrage est bien activé. Si non, activez le en cliquant sur le bouton Activé le filtrage.

CTparental état actif
CTparental actif
CTparental état inactif
CTparental inactif

Page filtrage par Blacklist

Blacklist

Commencez par activer la mise à jour automatique des listes noires (1). Elles seront mises à jour tous mes 7 jours. Mais vous pourrez toujours forcer la mise à jour à tous moments en cliquant sur le bouton Télécharger (2).

Le filtrage pas Blacklist consiste à bloquer un site s’il correspond à un critère présent dans une liste noire. Sinon sa consultation est autorisée.

Il faut savoir que même si les listes sont régulièrement mises à jour, certains sites récents, non ou mal identifiés, pourrez passer à travers les mailles du filet de contrôle parental.

Dans CTparental, les listes sont classées dans des catégories (3). Par défaut, les indispensables sont déjà sélectionnées (contenus pour adultes, sites malveillants, …). Aussi, si vous cliquez sur une catégorie vous pouvez avoir les explications de ce qu’elle comprend. Maintenant, à vous de faire votre choix.

Vous pourrez aussi autoriser des sites ou domaines filtrés par une des listes (4).

mais aussi bloquer des sites ou domaines qui ne le serait pas (5).

Puis surtout, pensez bien à cliquer sur Enregistrer les modifications (6) pour sauvegarder votre paramétrage.

Cependant, à la place de filtrer par liste noire, vous pouvez choisir un filtrage par liste blanche (Whitelist) (7).

Page filtrage par Whitelist

Le filtrage par Whitelist consiste à tout interdire sauf les sites présents dans une des listes choisis. L’avantage de ce système, surtout si vous avez des jeunes enfants, c’est que rien ne passera à travers les mailles du contrôle parental. Par contre, c’est très restrictif.

Whitelist

Là encore, vous devrez choisir les catégories (1). Et vous pourrez aussi ajouter des sites ou domaines non compris dans les listes proposées (2). Pensez bien à cliquer sur Enregistrer les modifications (3) pour sauvegarder votre paramétrage.

Page extensions à filtrer (pas disponible dans la version minimale)

Filtres extensions


Le principe de cette page est de sélectionner les fichiers que vous ne voulez pas que enfants puisse télécharger. Ainsi, si vous sélectionnez .exe, votre enfant ne pourra pas télécharger de fichier exécutable pour Windows. Ou, si vous sélectionnez .avi, les fichiers vidéos .avi ne pourront pas être téléchargés.

Pensez bien à cliquer sur Enregistrer les modifications pour sauvegarder votre paramétrage.

Mais ne fonctionne qu’avec les sites HTTP (connexion non chiffrée) mais pas avec les sites HTTPS (connexion chiffrée entre le site web et l’utilisateur qui sont aujourd’hui les plus fréquents).

Donc aujourd’hui où la plupart des sites sont en HTTPS, l’efficacité de ces filtrages et toute relative…

Page Type MIME à filtrer (pas disponible dans la version minimale)

Filtres type MIME


Le type MIME est un identifiant qui permet de définir sur internet le format de données d’un fichier. Par exemple : un fichier audio mp3 inséré dans une page web, aura un type MINE du type audio/mpeg. Vous pourrez définir sur cette page ceux que vous souhaitez filtrer ou pas.

Pensez bien à cliquer sur Enregistrer les modifications pour sauvegarder votre paramétrage.

Là aussi, ne fonctionne qu’avec les sites HTTP (connexion non chiffrée) mais pas avec les sites HTTPS (connexion chiffrée entre le site web et l’utilisateur).

Page *IP **IPS … (pas disponible dans la version minimale)

ip ips


Sur cette page, vous pourrez décider de bloquer :

  • (1) tout les sites sans connexion chiffrée comme avec le http
  • (2) tout les sites avec connexion chiffrée comme avec le https
  • (3) les sites en adresses IP sans non un nom de domaine
  • (4) les sites en adresses IP avec une connexion chiffrée sans un nom de domaine

Pensez bien à cliquer sur Enregistrer les modifications pour sauvegarder votre paramétrage.

Page Groupe privilège

Groupe privilégié


Sur cette page vous déterminerez si tous les utilisateurs autres que les administrateurs auront un accès internet filtré ou pas.

Par défaut, activée, cette option permet de choisir des comptes utilisateurs standards (non administrateurs) qui n’auront pas leur accès internet filtré (1).

Mais si vous la désactivez en cliquant sur le bouton (2), CTparental protégera tous les utilisateurs standards. Les sessions invitées, si vous ne les avez pas désactivée, seront toujours filtrées par le contrôle parental.

Pensez bien à cliquer sur Enregistrer les modifications pour sauvegarder votre paramétrage.

Page Safesearch configuration

Safesearch


C’est la page qui vous permettra de activer/désactiver l’option Safesearch de plusieurs moteurs de recherche (Google, YouTube, Bing, DuckDuckgo et Qwant) sans avoir rien à faire sur les pages de paramètres de ces derniers. En effet, ces moteurs de recherche proposent une option Safesearch qui permet de filtrer les résultats de recherche en n’affichant pas les résultats inappropriés pour des enfants.

Mais ces options, gérées sur les pages de paramètres des moteurs, sont sauvegardées dans des fichiers cookies. Et ses derniers pourraient s’effacer si vous (ou votre enfant) nettoyez le cache de votre navigateur et les cookies… Avec CTparental, ces options resteront toujours activées. Par défaut, CTparental active le Safesearch pour les moteurs supportés.

Page Heures de connexion autorisées

Heures de connexion inactif


Avec CTparental, vous pouvez contrôler le temps que votre enfant pourra passer sur l’ordinateur mais aussi sur internet.

configuration ctparental - heures de connexion

Pour cela, cliquez sur le bouton (1) pour activer l’option des horaires de connexion. Alors, vous pourrez choisir le compte d’un l’enfant et cliquez sur Sélectionner (2) pour valider. Si vous voulez définir des plages horaires pour cette enfant, dévalidez 7j/7 24h/24 (3) et cliquez sur Enregistrer. Ainsi, vous pourrez déterminer en minutes le temps que votre enfant peut passer par jour sur l’ordinateur (4) et un compteur vous indiquera le temps déjà passé sur l’ordinateur (5).

Vous pourrez aussi déterminer le temps qu’il peut passer sur internet (6), et, là aussi, un compteur vous indiquera le temps déjà passé à surfer (7).

Et vous pourrez déterminer les plages horaires (deux par jours) où il peut se connecter à l’ordinateur (8). Le profile définit n’est valable que pour le compte sélectionné, ainsi vous pouvez faire des configurations différentes par enfant si chacun a son propre compte utilisateur. Pour sauvegarder vos modifications, n’oubliez pas de faire Enregistrer (9).

Votre enfant, sur compte utilisateur recevra des notifications pour lui indiquer le temps lui restant pour surfer, ainsi que du temps restant avant fermeture de sa session utilisateur.

CTParental – Notification temps Navigation restant
Exemple notification temps Navigation restant
CTParental - Notification avant fermeture session
Exemple notification avant fermeture session

Tester l’action du contrôle parental sur le compte de vos enfants

Si vous voulez tester que le contrôle parental est bien actif sur le compte de votre enfant, vous pouvez, dans un terminal, lancer une commande ping depuis le compte de votre enfant vers un domaine (site web) pas recommandé pour les enfants :

su enfant -c "ping youporn.com"
  • enfant : est à remplacer par le compte de votre enfant. Pour le mot de passe demandé, entrez celui du compte testé.
  • youporn.com : peut être remplacé par un autre nom de domaine.

Pour arrêter le test et le défilement, faite Ctrl + C dans le terminal.

Si le blocage du domaine fonctionne, vous obtiendrez une réponse de ce type :

PING youporn.com (127.0.0.10) 56(84) bytes of data.
64 bytes from 127.0.0.10: icmp_seq=1 ttl=64 time=0.131 ms
64 bytes from 127.0.0.10: icmp_seq=2 ttl=64 time=0.114 ms

avec 127.0.0.10 comme adresse IP retournée. En fait, c’est celle la page d’avertissement du contrôle parental, hébergée en local sur votre ordinateur. En cas de non-blocage du domaine, vous verrez l’adresse IP du domaine testé.

Par exemple, avec YouPorn non bloqué, vous auriez :

PING youporn.com (67.22.32.168) 56(84) bytes of data.
64 bytes from 67.22.32.168: icmp_seq=1 ttl=49 time=15.3 ms
64 bytes from 67.22.32.168: icmp_seq=2 ttl=49 time=14.8 ms

67.22.32.168 : étant l’adresse IP d’un serveur YouPorn.

Mais aussi, vous pouvez vous connecter sur le compte de votre enfant et faire un test en allant sur un site interdit (comme YouPorn) et vous devriez obtenir ceci :

CTparental - accès refusé

Informations et commandes utiles pour l’administration de CTparental en ligne de commande

Les commandes présentées ci-dessous sont à exécuter depuis un compte administrateur.

CTparental et pare-feu

Lors de son installation CTparental désactive les services Pare-feu de la distribution (ufw, iptables.service, nftables.service, netfilter,…) et les remplace par son propre service de Pare-feu CTparentalfirewall.service.

Pour bloquer une adresse IP pour un utilisateur « supervisé » par CTparental, cela pourra se faire dans son interface de configuration.

Sinon, pour activer et configurer le pare-feu avec des règles personnalisées de filtrage de protocoles ou d’IP pour tout le monde, il faut activer les règles personnalisées avec :

sudo CTparental -ipton

Alors par défaut, tout sera bloqué et uniquement les protocoles http, https, dns, mDNS, LLMNR, DHCP, NTP, imcp et icmpv6 seront autorisés vers le réseau local et internet.

Pour les désactiver, faites :

sudo CTparental -iptoff.

La configuration de IPtables ou nftables nécessite un certain degré d’expertise par forcement à la portée de novices en informatique, réseau ou sécurité…

Bloquer IP pour tous les utilisateurs

Pour cela modifiez le fichier /etc/CTparental/ip-blackliste.conf :

sudo nano /etc/CTparental/ip-blackliste.conf

Puis appliquez les nouvelles règles avec :

sudo CTparental -ipton

Filtrer des protocoles ou ajouter d’autres règles de sécurité

Déterminez si vous utilisez Iptable ou nftable avec :

sudo CTparental -v

puis en fonction du résultat modifier le fichier /etc/CTparental/iptables.conf ou /etc/CTparental/nftables.conf :

sudo nano /etc/CTparental/iptables.conf

ou

sudo nano /etc/CTparental/nftables.conf

Et appliquez les nouvelles règles avec :

sudo CTparental -v

Importer/exporter la configuration de CTparental

Pour exporter la configuration, faites :

sudo CTparental -exp /chemin/vers/dossier/export/

Exemple pour exporter la config dans son dossier /home personnel :

sudo CTparental -exp ~/exportCTP/

Et pour importer une configuration :

sudo CTparental -imp /chemin/vers/dossier/export/CTparental.conf.yy.mm.dd.tar.gz

Exemple :

sudo CTparental -imp ~/exportCTP/CTparental.conf.yy.mm.dd.tar.gz

Réinitialiser le compte et le mot de passe pour administrer CTparental

Si vous avez perdu le nom du compte créer pendant la procédure ou son mot de passe, vous pourrez le redéfinir. La commande suivante (qui nécessite d’avoir un compte administrateur) permettra de recréer l’identifiant et le mot de passe :

sudo CTparental -uhtml

Protéger l’accès aux paramètres avancés de GRUB

Cela définira un mot de passe pour accéder à ces paramètres au démarrage. Entrez la commande suivante :

sudo CTparental -grubPon

Autres commandes utiles

  • Activer CTparental en ligne de commande :
sudo CTparental -on
  • Désactiver CTparental en ligne de commande :
sudo CTparental -off
  • Forcer la mise à jour de la blacklist en ligne de commande :
sudo CTparental -dl
  • Activer la mise à jour automatique (tous les 7 jours) de la blacklist :
sudo CTparental -aupon
  • Désactiver la mise à jour automatique :
sudo CTparental -aupoff
  • Rétablir les réglages par défaut pour les catégories filtrées
sudo CTparental -dble

La liste complète des commandes possibles se trouve sur cette page du site officiel.

Sources et ressources pour aller plus loin sur l’installation de CTparental

Bien que je n’aie aucun lien avec le projet, je vous encourage, si vous utilisez et appréciez CTparental à soutenir son auteur en faisant un don à son pot commun. (lien en haut de cette page sur le site officiel)

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

49 Commentaires

  1. Bonjour,

    Je possède un RPI400 connecté en RJ45 à ma box et j’ai installé CTparental en suivant le tuto cependant étonnamment je n’arrive pas à le faire fonctionner.

    Sur le user principal pi, aucun filtrage n’est fait.
    => Les Ping google et youp* fonctionnent
    => Pi est considéré comme administrateur dans l’onglet groupe privilégié => OK

    Lorsque je désactive le user pi ou les groupes privilégiés, le filtrage devient alors total. Je n’ai plus accès à aucun site et j’ai le message d’erreur DNS_PROBE_FINISHED_NO_INTERNET au lieu de l’accès refusé

    Sur le user enfant qui est décoché de base dans Groupe privilégié, le filtrage est total dès le début avec le message DNS_PROBE_FINISHED_NO_INTERNET

    Aurais-je oublier une étape ?

    A noter que j’ai essayé de désinstaller et réinstaller mais cela n’a pas corrigé le probème.
    Merci de votre aide

    1. Bonjour,

      Je ne pense pas que vous ayez oublié une étape. N’ayant pas de Raspberry Pi sous la main, je n’ai pas testé cette installation. J’ai testé la dernière version sur Debian 10 Buster ou 11 Bulleyes (qui servent de base au Raspberry Pi OS) et je n’ai pas de problème particulier…
      Quelle version de CTParental avez-vous installé ? et quelle version de RaspberryPi OS ?

      Cordialement

      P.S. vous pouvez aussi contacter le créateur de CTParental en ouvrant un ticket sur son site, peut-être est-il au courant d’un problème spécifique avec les Raspberry…

  2. Bonjour LTM,
    Une simple remarque sur la documentation.

    A la fin du chapitre suivant :
    « Télécharger la version qui vous convient pour l’installation de CTparental »

    Il y a la phrase :
    « Et si vous optez pour l’installation minimale, alors vous pouvez choisir quel type de serveur web hébergera sur votre machine les pages d’administration »

    Il me semble que c’est le cas pour tous les paquets, il y a toujours le choix du type de serveur web, non ? Minimal, ou complet.

  3. Bonjour,

    Grâce à vos explications, j’ai enfin réussi à installer le contrôle parental, après avoir tout désinstallé car cela ne fonctionnait pas. Maintenant c’est Ok.

    Cependant, je rencontre un souci lors de la configuration. Je souhaite filtrer par la whitelist, mais lorsque je rentre les noms de domaines que je souhaite garder, 2 seulement, cela ne change rien.

    roblox.com
    qwantjunior.com

    Qwantjunior: Fonctionne que le contrôle parental soit actif ou non
    Roblox: Ne fonctionne pas avec le contrôle actif.
    Pourtant les deux sites sont bien dans le champ « nom de domaine réhabilité ».

    Qu’est-ce que je fais mal à votre avis?

    Merci

    1. Bonjour,

      Le site Roblox fait appel à d’autres domaines pour se changer dont rbxcdn.com. Ajoutez ce domaine aussi à la whitelist et cela devrait fonctionner.

      Cordialement

  4. Merci LTM
    Je cherchais justement à passer en 21.10. Je regrette que Lubuntu ne vérifie pas par lui-même qu’il y a une mise à jour de l’OS.
    Pourriez-vous confirmer que si je met à jour Lubuntu par do-release-upgrade, c’est bien Lubuntu qui se met à jour (sur la base de Ubuntu) ?

    1. Oui, vous resterez bien avec Lubuntu. Aussi, pensez de faire une sauvegarde système avant la mise à niveau. Ainsi en cas de problème vous pourrez rapidement revenir en arrière.
      Aussi, pour éviter de faire des mises à niveau tous les 6 mois, je recommande d’utiliser une version LTS de Ubuntu (valable aussi pour les variantes officielles comme Lubuntu). Elles sont supportées pendant 5 ans et ne sortent que tout les 2 ans…
      La prochaine LTS (Ubuntu 22.04) est attendu pour avril 2022. Vous pourrez mettre à jour vers cette version et changer la configuration pour ne mettre à jour que vers des LTS.
      Actuellement la dernière LTS est Ubuntu (ou Lubuntu) 20.04.

      Cordialement

  5. Bonjour Tux Masqué,
    Très bon travail et merci.
    Je cherche à savoir si CTparental fonctionne sous Ubuntu 21.04 ? Je ne trouve pas d’information là-dessus. Je vais tenter une installation avec le paquet fait pour Ubuntu 20.04.

  6. Bonjour sur rapsberry j’ai ce message a l’installation comme erreur

    ● dnsmasq.service – dnsmasq – A lightweight DHCP and caching DNS server
    Loaded: loaded (/lib/systemd/system/dnsmasq.service; enabled; vendor preset: enabled)
    Active: failed (Result: exit-code) since Sun 2021-11-28 01:00:28 CET; 22ms ago
    Process: 31686 ExecStartPre=/usr/sbin/dnsmasq –test (code=exited, status=0/SUCCESS)
    Process: 31687 ExecStart=/etc/init.d/dnsmasq systemd-exec (code=exited, status=2)

    nov. 28 01:00:28 adguard systemd[1]: Starting dnsmasq – A lightweight DHCP and caching DNS server…
    nov. 28 01:00:28 adguard dnsmasq[31686]: dnsmasq: vérification de syntaxe OK.
    nov. 28 01:00:28 adguard dnsmasq[31687]: dnsmasq: impossible de créer une socket d’écoute pour port 53 : Adresse déjà utilisée
    nov. 28 01:00:28 adguard dnsmasq[31687]: impossible de créer une socket d’écoute pour port 53 : Adresse déjà utilisée
    nov. 28 01:00:28 adguard dnsmasq[31687]: IMPOSSIBLE de démarrer
    nov. 28 01:00:28 adguard systemd[1]: dnsmasq.service: Control process exited, code=exited, status=2/INVALIDARGUMENT
    nov. 28 01:00:28 adguard systemd[1]: dnsmasq.service: Failed with result ‘exit-code’.
    nov. 28 01:00:28 adguard systemd[1]: Failed to start dnsmasq – A lightweight DHCP and caching DNS server.

    Savez vous ce que je peux faire ? Je précise que j’ai adguard d’installer également sur ce raspberry. Est ce que c’est un probleme ?

    Cordialement

    1. Bonjour Caribou,

      Concernant la compatibilité avec Adguard, je ne sais pas, mais d’après vos logs, il y a conflit entre la configuration de dnsmasq par Adguard et celle par CTparental dans dnsmasq. Quand j’aurai le temps, je ferais un test.

      Pour l’accès à la page d’administration de CTParental, l’adresse que vous utilisez n’est pas bonne. Je vous recommande de le faire en local (depuis la machine où il est installé) directemeny avec : https://admin.ct.local/

    2. Sinon, pour accéder à l’interface d’administration de CTParental depuis une autre machine de votre réseau local, modifiez le fichier hosts de cette machine distante (Sur Linux : /etc/hosts, sur Windows : C:\Windows\System32\drivers\etc\hosts) et ajoutez une ligne du style adresse_IP_machine_CTParental admin.ct.local
      Par exemple :

      192.168.1.24 admin.ct.local

      Puis pour aller sur la page d’administration, utilisez l’adresse https://admin.ct.local/
      Alors le navigateur vous alertera d’un risque probable de sécurité. Cliquez sur Avancé ou Paramètres avancés pour continuer vers le site et accéder à la page.

      Cordialement

  7. Bonjour,
    Je suis entrain d’installer un rasberrypi pour mon fils de 13 ans.
    Tous c’est bien passé jusque là.
    Lorsque j’essaye d’installer ctparental ça ne fonctionne pas :

    sudo gdebi /home/pi/Téléchargements/ctparental_debian8_lighttpd_4.45.09-1.0_all.deb
    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    Reading state information… Done
    Ce paquet ne peut pas être installé
    Dependency is not satisfiable: php5-cgi

    Merci d’avance pour votre aide

    1. Bonjour Loïc,

      à mon avis, le paquet CTParental que vous essayez d’installer n’est pas le paquet correspondant à votre OS.
      Si vous avez installé Raspberry PI OS, il faut télécharger le paquet CTParental correspondant à Debian 10.
      Sinon quel OS avez-vous installé ?

      Cordialement

    2. Merci Le Tux Masqué,

      Nouvelle tentative ce matin avec la bonne version.
      ça va un peut plus loin mais ça bloque toujours :

      pi@raspberrypi:~ $ sudo gdebi /home/pi/Téléchargements/ctparental_debian10_lighttpd_min_4.45.09-1.0_all.deb
      Reading package lists... Done
      Building dependency tree
      Reading state information... Done
      Reading state information... Done
      Nécessite l'installation des paquets suivants : bind9-host console-data dns-root-data dnsmasq dnsmasq-base dnsutils libbind9-161 libdns1104 libfam0 libirs161 libisc1100 libisccc161 libisccfg163 liblwres161 libmariadb3 libnftables1 libnftnl11 libnotify-bin libnss3-tools lighttpd lighttpd-modules-ldap lighttpd-modules-mysql mariadb-common mysql-common nftables notification-daemon php-cgi php-common php-xml php7.3-cgi php7.3-cli php7.3-common php7.3-json php7.3-opcache php7.3-readline php7.3-xml spawn-fcgi
      
      Controle parental.
       Filtrage web basé sur dnsmasq, lighttpd , systemd timer et nftables
       une gestion des horaires de connection est aussi intégrée et
       une interface web (http://admin.ct.local) permettant de paramétrer tous ça.
       Le couple login mot de passe doit être saisi à l'install, mais peut être
       modifié par la suite grâce à la commande CTparental.sh -uhtml.
      Voulez-vous installer le paquet logiciel ? [o/N] :o
      /usr/bin/gdebi:113: FutureWarning: Possible nested set at position 1
        c = findall("[(/S+[])]", msg)[0].lower()
      Get:1 http://archive.raspberrypi.org/debian buster/main armhf libnftnl11 armhf 1.1.7-1~bpo10+1~0 [45.1 kB]
      Get:2 http://archive.raspberrypi.org/debian buster/main armhf libnftables1 armhf 0.9.6-1~bpo10+1~0 [210 kB]
      Get:3 http://archive.raspberrypi.org/debian buster/main armhf nftables armhf 0.9.6-1~bpo10+1~0 [66.2 kB]
      Get:4 http://archive.raspberrypi.org/debian buster/main armhf dnsmasq-base armhf 2.80-1+rpt1+deb10u1 [400 kB]
      Get:5 http://mirrors.ircam.fr/pub/raspbian/raspbian buster/main armhf bind9-host armhf 1:9.11.5.P4+dfsg-5.1+deb10u5 [269 kB]
      Get:6 http://archive.raspberrypi.org/debian buster/main armhf dnsmasq all 2.80-1+rpt1+deb10u1 [16.5 kB]
      Get:7 http://mirrors.ircam.fr/pub/raspbian/raspbian buster/main armhf libbind9-161 armhf 1:9.11.5.P4+dfsg-5.1+deb10u5 [244 kB]
      Get:8 http://mirrors.ircam.fr/pub/raspbian/raspbian buster/main armhf libisccfg163 armhf 1:9.11.5.P4+dfsg-5.1+deb10u5 [258 kB]
      Get:9 http://mirrors.ircam.fr/pub/raspbian/raspbian buster/main armhf libisccc161 armhf 1:9.11.5.P4+dfsg-5.1+deb10u5 [234 kB]
      Get:10 http://mirrors.ircam.fr/pub/raspbian/raspbian buster/main armhf libisccc161 armhf 1:9.11.5.P4+dfsg-5.1+deb10u5 [234 kB]
      Get:11 http://mirrors.ircam.fr/pub/raspbian/raspbian buster/main armhf libdns1104 armhf 1:9.11.5.P4+dfsg-5.1+deb10u5 [1074 kB]
      Get:12 http://mirrors.ircam.fr/pub/raspbian/raspbian buster/main armhf libisc1100 armhf 1:9.11.5.P4+dfsg-5.1+deb10u5 [423 kB]
      Err http://raspbian.raspberrypi.org/raspbian buster/main armhf mariadb-common all 1:10.3.29-0+deb10u1
        Connexion à raspbian.raspberrypi.org: 80 (2a00:1098:0:80:1000:75:0:3) impossible, délai de connexion dépassé Connexion à raspbian.raspberrypi.org: 80 (93.93.128.193) impossible, délai de connexion dépassé [IP : 93.93.128.193 80]
      Err http://raspbian.raspberrypi.org/raspbian buster/main armhf libmariadb3 armhf 1:10.3.29-0+deb10u1
        Impossible de se connecter à raspbian.raspberrypi.org:http : [IP : 93.93.128.193 80]
      Err http://raspbian.raspberrypi.org/raspbian buster/main armhf libnotify-bin armhf 0.7.7-4
        Impossible de se connecter à raspbian.raspberrypi.org:http : [IP : 93.93.128.193 80]
      
      ...
      
      Failed to fetch http://raspbian.raspberrypi.org/raspbian/pool/main/s/spawn-fcgi/spawn-fcgi_1.6.4-2_armhf.deb Impossible de se connecter à raspbian.raspberrypi.org:http : [IP : 93.93.128.193 80]
       »pi@raspberrypi:~ $
      

      Je n’ai pas trouver comment joindre un fichier texte donc j’ai tout collé ci-dessus. N’hésitez pas à supprimer mon message si il n’apporte rien.
      Merci

    3. J’ai fait une nouvelle tentative et cette fois-ci j’accéde au choix du clavier, du login et du mot de passe. Ensuite pas de connexion possible à admin.ct.local
      Le procéssus s’arréte sur les informations suivante :

      Creating config file /etc/php/7.3/cgi/php.ini with new version
      Paramétrage de libbind9-161:armhf (1:9.11.5.P4+dfsg-5.1+deb10u5) ...
      Paramétrage de libirs161:armhf (1:9.11.5.P4+dfsg-5.1+deb10u5) ...
      Paramétrage de bind9-host (1:9.11.5.P4+dfsg-5.1+deb10u5) ...
      Paramétrage de php-cgi (2:7.3+69) ...
      Paramétrage de dnsutils (1:9.11.5.P4+dfsg-5.1+deb10u5) ...
      Traitement des actions différées (« triggers ») pour dbus (1.12.20-0+deb10u1) ...
      Traitement des actions différées (« triggers ») pour desktop-file-utils (0.23-4) ...
      Traitement des actions différées (« triggers ») pour mime-support (3.62) ...
      Traitement des actions différées (« triggers ») pour gnome-menus (3.31.4-3) ...
      Traitement des actions différées (« triggers ») pour libc-bin (2.28-10+rpi1) ...
      Traitement des actions différées (« triggers ») pour systemd (241-7~deb10u4+rpi1) ...
      Traitement des actions différées (« triggers ») pour man-db (2.8.5-2) ...
      Sélection du paquet ctparental précédemment désélectionné.
      (Lecture de la base de données... 158079 fichiers et répertoires déjà installés.)
      Préparation du dépaquetage de .../ctparental_debian10_lighttpd_min_4.45.09-1.0_all.deb ...
      Dépaquetage de ctparental (4.45.09-1.0) ...
      Paramétrage de ctparental (4.45.09-1.0) ...
      dpkg: erreur de traitement du paquet ctparental (--install) :
       installed ctparental package post-installation script subprocess returned error exit status 1
      Traitement des actions différées (« triggers ») pour man-db (2.8.5-2) ...
      Des erreurs ont été rencontrées pendant l'exécution :
       ctparental
      

      Désolé pour mon message précédent
      Encore merci de votre aide

    4. Bonjour Loïc,

      Dans votre deuxième tentative (j’ai raccourcis les logs), le dépôt qui contient les paquets des dépendances Debian à installer n’était pas joignable. Peut-être votre connexion internet s’était interrompue…
      Lors de la 3ème tentative, vous avez une erreur dpkg et le paquet CTParental n’a pas s’installer correctement.
      Je vous recommande de tout désinstaller pour repartir sur une base saine :

      sudo apt-get autoremove --purge ctparental clamav-* privoxy e2guardian dnsmasq nginx* lighttpd*

      puis

      sudo rm -rf /etc/CTparental

      et

      sudo rm -rf /etc/lighttpd/

      Alors vérifiez que votre Raspberry est bien connecté à internet et relancez l’installation.

      Cordialement

    5. Nouvelle tentative ce soir :

      J’ai tout désinstallé et tous réinstallé et ça fonctionne !

      Merci Le Tux Masqué !

    1. Bonjour,

      Je confirme, j’ai installé hier CTparental sur la dernière version Raspberry PI OS (Debian 10.10).

      Les explications ci-dessus sont très claires, ça a fonctionné tout de suite !

      Merci beaucoup !

  8. Bonjour,
    Alors déjà un grand merci pour vos explications, je suis totalement novice et je viens de réussir à installer CTparental sous Ubuntu 20.04. C’est une première pour moi de trifouiller ainsi dans un PC, j’ai mis 6 plombes à comprendre comment accéder aux lignes de commandes mais c’est fait. C’est ma fierté du jour 🙂
    Cependant, impossible d’accéder à l’interface web, j’ai un message « adresse introuvable ».
    Pourriez-vous m’aider svp?
    Merci d’avance 🙂

    1. Bonjour Sylvie,

      Quelle version de CTParental avez-vous installé ? Vous pouvez indiquer le nom du fichier que vous avez utilisé que pour installer CTParental ou dans un terminal (maintenant que vous savez comment l’ouvrir 😉 ), faire : sudo CTparental -v et copier la réponse.
      Utilisez-vous un VPN sur votre PC Ubuntu ?
      Faites dans un terminal la commande : cat /etc/hosts (permet d’afficher le contenu du fichier hosts). À la fin du fichier, avez-vous bien les lignes suivantes :

      127.0.0.11 admin.ct.local 
      fd00::127:11 admin.ct.local 
      127.0.0.10 privet.ct.local 
      fd00::127:10 privet.ct.local

      Cordialement

    2. Bonjour,
      Alors déjà merci pour la rapidité de votre réponse. Je ne suis pas sur le même PC (ici à mon travail) je n’ai plus la ref exacte mais j’ai pris celle correspondant à Ubuntu 20.04 et il me semble que ça avait marché, de mémoire c’est ce paquet ci:
      ctparental_ubuntu20.04_lighttpd_4.45.08-1.0_all.deb
      Je ne sais même pas si je passe par un vpn, je ne pense pas en fait, je passe par ma box… (quand je dis que je n’y connais rien lol)
      En fait, c’est le site @ de l’admin qui ne fonctionne pas quand je suis le lien: https://admin.ct.local/
      Est-ce que ça peut être en lien avec ces lignes de codes qui ne fonctionneraient pas? Je vérifie ça ce soir en rentrant 🙂
      Merci 🙂
      Cordialement

    3. Bonjour Sylvie,

      Si vous ne savez pour le VPN, c’est que vraisemblablement vous n’en avez pas… Mais je préférais m’en assurer, car si ça avait été le cas, ça pouvait expliquer votre problème.

      Les lignes indiquées dans mon précédent message sont, en principe, ajoutées automatiquement dans le fichier hosts durant l’installation. Elles sont un des éléments nécessaires permettant d’accéder à l’interface d’administration de CTParental quand vous tapez l’adresse https://admin.ct.local/.

      Il se peut que durant l’installation, il y ait eu des problèmes pour diverses raisons et que la partie permettant l’administration (entre autre) se soit mal configurée… D’ailleurs, aviez-vous bien votre ordinateur connecté à Internet pendant l’installation ?

      Essayez aussi la commande suivante : sudo CTparental -uhtml. Elle permet de réinitialiser l’identifiant et le mot de passe pour accéder à la page d’administration et de mettre à jour la page de redirection avec sa valeur par défaut. Si vous avez une erreur en retour, copiez la dans votre réponse.

      Cordialement

  9. Bonjour,
    J’aimerais fonctinner avec la Whitelist mais ça leur bloque l’accès aux applications du ubuntu Software.
    Quel domaine autoriser ?
    Merci

    1. Bonjour Vincent,

      Vous voulez dire que vous ne pouvez plus installer d’application depuis le Ubuntu Software depuis les comptes « enfants » ?

      C’est peut-être du au fait que le compte enfant est un utilisateur « standard » (si vous avez suivi mes recommandations). Ce type de compte ne permet pas d’installer des applications. Pour pouvoir installer des applications, il faut un compte Administrateur. Par contre, avec un « enfant » pourrait contourner le contrôle parental en touchant la configuration du système…

      Sinon, j’ai fait des tests de mon coté, dépôts ubuntu et snap store ne sont pas filtrées chez moi en mode whitelist, uniquement les images de présentations dans le ubuntu software…

      Cordialement

    2. Bonjour,

      Très bien fait,et très utile, pour mon Ubuntu Mate,20.04 .2, fonctionne aussi avec la même version pour mon raspberry 4 (il m’a qd même fallu désactiver le wifi a l’installation)

  10. C’est à ne rien y comprendre… j’ai bien utilisé ce paquet : ctparental_ubuntu20.04_lighttpd_min_4.44.15-1.0_all.deb et pour etre sûr la seconde fois j’ai réalisé l’installation avec un cable rj45 au lieu de mon adaptateur wifi usb tplink tl-wn725n qui marche pourtant parfaitement… jusqu’à ce que l’essai d’installation de CTparental soit en erreur… ce qui provoque l’impossibilité de resoudre les noms de domaines et adresses internet… rj45 ou wifi et ce, admin ou compte supervisé 🙁
    En dépit, j’ai au final installé depuis un dvd Ubuntu 20.04 et effectué toutes les mises à jour sans installer CTparental…. et cela fonctionne sans souci… mais donc sans filtrage.
    Pris par le temps je n’ai pas eu le loisir de faire des copies d’écran, j’en suis désolé.
    NB : même le pc fe ma fille qui lui aussi à CTparental est maintenant TRES long à l’extinction depuis l’application des dernières MAJ Ubuntu. De plus, il ne peut plus lire les vidéos en direct « GULLI » mais cela ne doit pas venir du CTparental mais plutôt de Firefox et de ses évolutions ? Les pubs de Gulli sont bien affichées mais plus la vidéo en direct… Tout comme Youtube kids qui boucle sur l’accueil du site… Pfff … 🙁 Je vais finir par retourner sur Microsoft 🙁

    1. Bonjour Buisson,

      En effet, beaucoup de problèmes différents. Mais je vous rassure, sous Windows c’est pas forcement mieux. Et avec cet OS aussi, lors de sortie de nouvelle version, il y a des regressions, des bugs et des surprises…

      Pour le PC de vos voisins, sans messages d’erreur, je vais pas pouvoir vous aider plus… Par contre, petite précision : ce n’est pas parce que vous avez une connexion réseau que avez une connexion internet active. Pour vérifier sa connexion internet, le plus simple est de vérifier que vous pouvez bien surfer sur internet.

      Pour le PC de votre fille et ses problèmes pour lire certaines vidéos :
      * Concernant le direct Gulli, le problème vient du site lui-même. J’ai fait un test et que ça soit sous Windows ou sous Linux et peu importe le navigateur internet utilisé, j’ai le même souscis que vous : les pub sont lues, mais le direct ne démarre pas après.

      • Concernant youtube kids, j’ai fait un test avec CTparental (réglage par défaut) mais j’ai pas rencontrer de problème et je lis bien les vidéos sans boucler sur la page d’accueil. Peut-être avez vous des extensions Firefox qui provoquent se disfonctionnement ? avez vous essayé avec Chromium (la base open source de Google chrome que vous pouvez installer depuis le Ubuntu software)

      Après on sort de CTparental…
      Vous avez constaté l’extintion lente de l’ordinateur après une mise à niveau de l’OS (passage de Ubuntu 18.04 à 20.04) ou après des mises à jour « classiques » ? Cette longue extinction peut être liée à une application ou un service qui met du temps à s’éteindre. Pour avoir les messages d’activité lors de l’extinction, vous pouvez faire Echap. Ainsi vous pourrez voir là où ça bloque.

      Cordialement

    1. Eh bien en fait, impossible de l’installer sur une nouvelle machine (DELL 7010) que je viens de préparer pour mes voisins avec ubuntu 20.04 de base (dvd que j’avais utilisé pour la machine de ma fille…)… plein de messages d’erreur lors de l’iinstallation de CTparental et plus de connexion réseau après… alors qu’avec Ubuntu 20.04.1 seul et l’ensemble des mises à journtout était ok.
      Désolé, je n’ai plus la machine que j’ai dû rendre… et je n’ai pas conservé les messgaes mais il semblerait qu’ils etaient en lien avec les services dns qui ne fonctionnaient plus ;-(
      J’ai refais le pc sans contrôle parental… c’est quand même pas évident pour un novice.

  11. Bonjour,

    Excellent tuto, merci. Installation nickelle !!!

    J’utilise CtParental pour encadrer ma fille de 10ans…

    Cela dit, j’ai un souci que je ne sais pas résoudre : le « replay » de Gulli.fr quelque soit le choix démission renvoi une erreur alors qu’en session admin… aucun problème.

    Comment savoir ce qui a été bloqué et éventuellement cibler plus finement le filtrage ? Y a-t-il un log des blocages facilement accessible et compréhensible pour un débutant comme moi ?

    Grand merci 😉

    1. Bonjour Sébastien,

      Il est possible d’activer des logs (uniquement temporairement), mais ils peuvent être complexes à interpréter.
      Pour les activer, faites depuis votre compte admin :

      sudo CTparental -logdnson

      alors vous les trouverez dans le fichier /var/log/dnsmasq.query.log (accessible uniquement avec un compte admin). Pour le lire, vous pouvez faire dans un terminal :

      sudo cat /var/log/dnsmasq.query.log

      et pour désactiver les logs (ils seront effacés), faites :

      sudo CTparental -logdnsoff

      Sinon concernant la lecture des vidéos du replay de Gully, j’ai regardé pour vous et en réhabilitant le domaine suivant, ça devrait marcher :

      .cloudfront.net
      .jwpcdn.com
      .jwpltx.com

      J’ai ouvert un ticket sur le site de l’auteur pour suggérer de les réhabiliter de base.

      Cordialement

    2. Un GRAND merci le Tux Masqué !!! Le replay est enfin fonctionnel 😉
      Il me manquait le .jwpltx.com et .cloudfront.net comme domaines à réhabiliter pour que cela puisse fonctionner…
      De la part de ma fille Eve, encore merci pour cette aide précieuse !

    3. L’auteur de CTparental vient de faire la correction et il n’est plus nécessaire de les réhabiliter manuellement. Il faut juste remettre à jour la Blacklist en forçant son téléchargement.

      Cordialement

  12. Bonjour,

    Merci pour ce tuto. J’ai installé CTparental sur le pc portable de mon fils (Debian GNU/Linux 10 (buster)), j’ai suivi pas à pas vos instructions tout c’est bien déroulé jusqu’au moment d’accéder à la configuration via l’interface web, là je n’ai que ce message d’erreur

    Ce site est inaccessible

    admin.ct.local n’autorise pas la connexion.

    j’ignore ce que j’ai pu louper…

    1. Bonjour, merci de votre réponse

      étrangement CTparental -v me donne

      nftables_min_lighttpd_

    2. pas du numéro de version ?

      et que vous renvoie les commandes suivantes (vérifient que les services lancés) : ps aux | grep -i lighttpd et ps aux | grep -i ctparental

      Cordialement

    3. gasp mon installation ne doit pas s’être si bien passé que cela … dsl

      ps aux | grep -i lighttpd et ps aux | grep -i ctparental
      me donne

      grep: et: Aucun fichier ou dossier de ce type
      grep: ps: Aucun fichier ou dossier de ce type
      grep: aux: Aucun fichier ou dossier de ce type

    4. re gasp… merci

      root@MONA:/home/papa# ps aux | grep -i lighttpd
      root 20669 0.0 0.0 6224 824 pts/0 S+ 16:43 0:00 grep -i lighttpd

      root@MONA:/home/papa# ps aux | grep -i ctparental
      root 20672 0.0 0.0 6224 828 pts/0 S+ 16:43 0:00 grep -i ctparental

    5. Bonjour…
      effectivement après une désinstallation et réinstallation puis redémarrage , j’ai accès à la configuration, tout à l’air de fonctionner…

      Merci beaucoup de votre patience

      Laurent