Safeguarding Children Online: Setting Up Pi-hole to Block Adult Content

Recently, a friend reached out to me to discuss concerns about their children’s mobile device usage, particularly in their bedrooms at home. In an effort to ensure safety, we decided to implement a small monitoring system on home network to track the kids’ activities. As children grow, they naturally seek more autonomy over their devices, often attempting to circumvent restrictions and access content of interest. While iOS-based devices offer some parental controls, they may not suffice as children become more adept at navigating technology.

To address this challenge within the home environment, we conducted an experiment with a security feature integrated into the home network. Over a period of three months, we closely monitored the websites visited by the children. The findings were somewhat alarming, and while I won’t disclose the specifics, I aim to offer simple solutions that can provide peace of mind to parents, especially during nighttime hours.

While these measures may not completely regulate activities outside the home network, they do offer a significant improvement in safe browsing within the home environment.

What You’ll Need for Setup

  • Router with Admin Console Access: Ensure you have a router with access to the admin console. (Example: DSL-AC68U)
  • Standalone System: You’ll need a standalone system that operates 24/7. (Example: Raspberry Pi)
  • Open Source Software - Pi-hole: Install Pi-hole, an open-source software available at Pi-hole Documentation (https://docs.pi-hole.net/).
  • Blocked List: Utilize a comprehensive blocked list such as https://firebog.net/ for enhanced functionality and security.

Setup

Setting up Pi-hole on a Raspberry Pi is a straightforward process. Follow these steps:

Install Pi-hole:

Use the following command to install Pi-hole software on your Raspberry Pi. Below command initiates an easy setup process, ensuring that all required software is installed seamlessly.

curl -sSL https://install.pi-hole.net | bash

Configure DNS Settings on Your Router

Access your router’s settings and navigate to the DNS configuration section. By default, routers use public DNS servers. Modify these settings to include the IP address of your Pi-hole instance (e.g., 192.168.1.254) as the primary DNS server.

By doing so, all DNS requests from devices connected to your network will be routed through Pi-hole, allowing it to filter out unwanted content effectively. Following these steps will enable Pi-hole to start filtering out undesirable content and enhancing your browsing experience effortlessly.

After completing these steps, all network traffic will be directed through Pi-hole for filtering.

In Pi-hole, you’ll need to configure the upstream DNS servers to ensure that websites can still be accessed from the internet. This involves setting up reliable DNS servers that Pi-hole will use to resolve domain names and forward requests for websites that are not blocked by Pi-hole’s filters.

By configuring upstream DNS servers in Pi-hole, you can maintain internet connectivity while benefiting from Pi-hole’s ad-blocking and content-filtering capabilities, ensuring a smoother and more secure browsing experience for all devices on your network.

Add the blocked list in adList menu

That’s it :-)

Few screenshots of the pi-hole

Screenshot showing the overall usage

Screenshot showing blocked content

Screenshot showing the custom blocks

This solution not only effectively blocks adult content but also prevents pop-ups and filters out unnecessary calls. No additional configuration is required on connected devices. Pi-hole offers a range of other features as well. For example:

  • Netflix is accessible only on the TV.
  • YouTube is restricted to me and my spouse.
  • Disney content is available on all devices within the home network.

For further assistance, please reach out TCAF via email to contact@tcafry.org.