What is the best way to restrict access to adult content?
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.
I took the advice of the selected answer to this question and used OpenDNS on my Ubuntu computer but I wanted to share more information to be helpful to others.
What is OpenDNS, and how to get OpenDNS?
OpenDNS is a free DNS service that can not only speed up your internet but also provide you options like...
- Web content filtering
anti-phishing,
malware protection
smart cache and much more.
The bottom line is OpenDNS servers have a huge collection IP addresses of millions of web pages. When you look for a website, it immediately finds the corresponding IP address and hence gets it to load faster. It's intuitive and literally takes less than 10 minutes to set up (no software installation required)
To utilize all its features, all you need to do is sign-up with them here. Basic OpenDNS is suitable for your household devices is free of cost. (For business solutions there is a nominal annual fee)
Once you have signed up, you’ll get a confirmation link in your mailbox. Click on the link and it will redirect you to dashboard settings on the main website.
It will automatically detect your IP address. Click on Add this network button given below your IP address All you need to now is to follow the Instructions provided on the website and add these IP addresses to your router.
Preferred DNS server: 208.67.222.222
Alternate DNS server: 208.67.220.220
That's it! You're done
OpenDNS features
By default, nothing is blocked. You have FULL control to select one of 3 pre-sets 1: Low 2: Moderate or 3: High filtering levels
Example: If you choose “Low” filtering level then all the porn sites will be blocked . You increase the filter level to apply more restrictions. There is also a custom filtering levels that allows you to be specific or tweak one of the pre-sets.
You can block or allow any domain of your choice by entering the domain name. It also gives you the ability to add an extra layer of security as it provides malware and botnet protection as well as phishing protection. You may also block internal IP addresses.
Important note of caution:
I have been using OpenDNS for a couple of weeks now and I created a Bookmark in Firefox. Stupidly I clicked on "Remember my Password" which means anybody can click on the bookmark get into OpenDNS and make changes. I have since rectified.