What is the best way to restrict access to adult content?

I bought my kids a PC and installed 12.04 (Unity) on it. The bottom line is, I want my children to use the computer unsupervised while I have confidence they cannot access anything inappropriate.

What I have looked at:

I was looking at Scrubit a tool which allows me configure my wifi router to block content and this solution would also protect my other PC and mobile devices. This may be overkill as I just want the solution to work on one PC.

I also did some Google searches and came across the application called Nanny (it seems to look the part). My experience of OSS is that the best solutions frequently never appear first on a Google search list and in this case I need to trust the methods therefore my question is very specific.

I want to leverage your knowledge and experience to understand What is the best way to restrict adult content on 12.04 LTS as this is important to me. It maybe a combination of things so please don't answer this question "try this or that", then give me some PPA unless you can share your experience of how good it is and of course if there are any constraints.


One easy and great way of doing it is going straight to the source and use DNS filtering for that purpose.

Let's face it, you cannot protect your children all the time from all the internet risks, but using some sort of filtering you can at least force it in your home.

One of the advantages of filtering using DNS is that even if you have a smart ass kid that knows he can bypass blocking software installed in his system using the Ubuntu LiveCD, DNS usage can be enforced in the system that use DHCP via your router.

Have a look at a DNS parental control option like OpenDSN Family Shield or Cloudflare 1.1.1.1 for Familiesfor an example on how a DNS filter would work for your computers at home. Many other DNS servers will allow you to do it, OpenDNS is just one that I use normally.

Set up an account, make the changes in your router to use the DNS servers from OpenDNS, activate parental filtering and no matter what OS your kids are using that obtain an IP via the router will be blocked from accessing issue sites.

Of course if your kids are smart enough and know how to spoof that it will be easy for them to bypass it, that again, as said before, you won't be able to protect your children all the time from all the dangers the internet presents.


The Internet is not a safe place for kids

We all know of content we don't want our kids to be exposed to, be it either accidentally or on purpose. We therefore have to do something about it. There are different approaches to gain some security but all fail when it comes to the details. Let me explain why:

Allow list / Whitelists

Whitelists securely block unwanted content and can be generated by a variety of browser plugins or parental control software but they will not last for long. We want our kids to discover the world, to learn how to operate the Internet, to learn how to find information, and to learn how to play games that are safe for them. They will not learn how to do this if they only have access to a small list of sites granted by Daddy where the next click on a button leads to the "BANNED" page. Only very young kids may be happy for some months with a whitelist.

Deny list / Blacklists

Blacklists such as offered e.g. by DNS services are meant to contain all known bad sites and block them. This task is ridiculous. We can not possibly know of all bad sites. They pop up everyday in thousands. The makers of Dansguardian filters put it like that:

The web is a fast changing place and even large web search engines such as Google or Altavista or Yahoo don't even know of half of it. This makes filtering by web address (URL) difficult as sites change and new ones come up all the time.

Content Filters

To overcome limitations of a blacklist we additionally need some sort of content filtering but it is tedious to maintain the filters. This may be good for schools when a full time employee does all the work but it is unlikely we find the time at home to do so. Using pre-made filters is likely a bad idea as the bad sites know about them and avoid those suspicious phrases to appear on their pages (look at the spam mail you get and you have an idea on how they do it).

Smart Kids

As already mentioned kids become smart, and we desperately want them to become so. Unortunately then they will also learn how to overcome most of our filters. They will (yes, they will, no matter what we do) gain access to anything they want by the time they are smart. All our blocking efforts will fail by then. Before that however they may not be interested in all that adult stuff at all. So there would in reality not be a need to block anything. By the time they are smart they need to be smart enough to know what is a bad site, and they should be smart enough to be interested in other things rather than visits on adult pages.

Smart Parents

We all are or will be smart parents. We want to teach our kids how to operate Ubuntu and how to discover the Internet. Smart parents watch what their kids do and they talk to them about what they do. We should provide them with the knowledge on what to do when they come to sites that are different or may be harmful. We want our kids to tell us what they do. Smart parents spent the time they would need to set up and maintain a parental control rather with their kids. We also should not leave the kids alone. Put the computer to a place where you can pass by and have a short look what is displayed on the screen.

In summary the "best" way to refrain our kids from visiting unwanted sites is to become a smart parent educating their kids to become smart. But I know from my own experience that this also may fail, has inconsistencies, and may likely not achieve 100% safety. It still is the best.


Note after seven years: We never had any content filters in all those years. I can see now how important all I said above was to our kids.