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:
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...
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.
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.
Check your Internet history files.
This will tell you if your children are visiting any inappropriate sites. In your web browser, click on the history tab. It should open up as a sidebar. Once this happens, you can check to see what sites your children are visiting. Take note of any that you want to block.
Adjust your privacy settings.
In most browsers, the privacy tab is located under Internet options (or options), which is located under the tools tab. Once in the website section, copy the sites that you want to block from the history page, and enter them into the block site space. You can block one site at a time this way. However, in order to block sites that your children have never visited before, you will need to take other steps.
Purchase a site-blocking software package.
This will give you the additional security option of blocking any site that may have potentially harmful content from your children. Many of these programs not only block harmful sites, but also are used as a way to see exactly what your children are doing online or on the computer in general. Install the program and set the level of security you want. Usually these programs can be customized to fit your needs.
Check the software and your Internet history after your child uses the computer.
If any inappropriate activity is going on, talk to your children about it in a calm manner. If you freak out, your child will try to hide things from you even more.
Place the computer in a well-used area where you can visually keep track of what the children are doing.
If the computer is in the same room as you, your children are much less likely to do anything inappropriate. Limit Internet time as much as possible and set clear boundaries for appropriate use.
In addition to OpenDNS there are Parental Control Systems that are an easy way to control what your kids are doing in the computer.
well.
internet with ease of mind, no more worries!
The Binary package “Nanny” for ubuntu Precise (12.04) can be found here
OR You can install the debs package from here
Note: Experienced Linux users can also try DansGuardian along with content caching using squid3 .
Depending on your religious persuasion maybe try Christian Ubuntu flavour which when I was researching Ubuntu flavours had this as an inbuilt feature which they advertise.
An alternative solution would be to setup a Pie Hole server at home, here is a complete tutorial on how to do just that.
http://www.ubuntuboss.com/how-to-install-piehole-on-ubuntu-16-04/
Pi Hole is a nifty open source project that allows you to offload the task of blocking advertisements and annoying (and often malicious) trackers to a Raspberry Pi or in this case an Ubuntu Server. The installation is really simple and it is basically a dns server that can be configured via a simple Web Interface with multiple block lists from around the Web.
Use MoralDNS (https://github.com/RoelVdP/MoralDNS).
Full disclosure; I am the maintainer.