How to Install CTparental Parental Control Software on Debian 10

CTparental is a free and open-source parental control tool used to control computer usage or internet browsing. It comes with a simple and easy-to-use web interface powered by a Lighttpd web server. The idea of CTparental tool comes from other tools such as, iptables, dnsmasq, and inguardian privoxy.


  • Filter content with Blacklist or Whitelist
  • Supports Firefox, Midori, and chromium
  • Filter websites by categories
  • Allows to set up maximum browsing time of users
  • Control of active hours on a computer session
  • Force SafeSearch duckduckgo and google

In this post, we will show you how to install CTparental on Debian 10.


  • A system running Debian 10 desktop.
  • A root password is configured on the server.

Getting Started

First, update the system packages to the updated version by running the following command:

apt-get update -y

Once all the packages are updated, you can proceed to the next step.

Install CTparental

By default, CTparental is not included in the Debian 10 default repository. So you will need to download it from the GitLab website.

You can download it with the following command:

wget -c

Once the download is completed, install the downloaded file with the following command:

dpkg -i ctparental_debian10_lighttpd_4.44.18-1.0_all.deb

If you get any dependencies error, run the following command to install all the required dependencies:

apt-get install -f

During the installation, you will be asked to set up an admin user as shown below:

Install CTParental

Provide your username and hit Enter. You will be asked to set a password for the admin user as shown below:

Set a password

Provide your password and hit ENTER to finished the installation.

Once all the dependencies are installed, you can verify the CTparental installation with the following command:

apt-cache show ctparental

You should get the following output:

Package: ctparental
Status: install ok installed
Priority: optional
Section: utils
Installed-Size: 2568
Maintainer: marsat <[email protected]>
Architecture: all
Version: 4.44.18-1.0
Depends: debconf (>= 0.5) | debconf-2.0, debconf, dnsmasq, lighttpd, sudo, wget, php-cgi, php-xml, libnotify-bin, notification-daemon, nftables, rsyslog, e2guardian, privoxy, openssl, libnss3-tools, console-data, dnsutils, whiptail, ifupdown2 | ifupdown, rsync, openssh-server
Conflicts: dansguardian
 /etc/CTparental/CTparental.conf c423d608fbc18de0512efb68c4fdcaf6
 /etc/CTparental/dist.conf 61085f21f8656cc10a30da6759d8154c
Description: Controle parental.
 Filtrage web basé sur dnsmasq, e2guardian, privoxy, 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 -uhtml.
Description-md5: 26847a28b1b9824d5d1994ca6224ffe0

Setup Hosts File

CTparental is now installed and listening on port 80 and 443 on and CTparental runs on Lighttpd web server and creates a configuration file using domain admin.ct.local and privet.ct.local. So you will need to edit /etc/hosts file and bind both domain name with listening IP.

nano /etc/hosts

Add the following lines: admin.ct.local privet.ct.local 

Save and close the file when you are finished.

Access CTparental

Now, open your web browser and access the CTparental web interface using the URL https://admin.ct.local. You should see the CTparental login page:

Log in to CTparental

Provide your admin username, password and click on the Login button. You should see the CTparental dashboard on the following page:

CTparental dashboard


Congratulations! you have successfully installed CTparental on Debian 10 Desktop. You can now use CTparental to control computer usage and internet surfing.

Share this page:

2 Comment(s)