I'm looking for a tool which is blocking unwanted websites. This tool should prevent children from watching websites with content which are not for them. The tool should have these requirements:

  • Block websites from a given blacklist
  • Block websites from known sites from an internet blacklist (e.g. porn sites)
  • Password protection
  • Own site, which says blocked because of...
  • Configuration in the browser or in a tool
  • Should work with several browsers
  • Run under Linux (Edubuntu)
  • Browser history log

I found NetNanny, but this tool is abonded and therefore not useable.

  • 4
    Instead of software that runs on your PC, consider configuring your router to use OpenDNS. It's customizable and will protect every device on your home network, not just your PCs.
    – Ben Miller
    Commented Feb 13, 2014 at 19:58
  • The problem with such solutions is, what if a genius child is chaning the DNS server? Commented Feb 13, 2014 at 20:00
  • 1
    Place computer in plain view in family room so there is no viewing privacy. Will cut down on bad behavior.
    – Paul
    Commented Feb 15, 2014 at 0:28
  • 1
    If your genius children can change DNS server, they can bypass software you're running on the computer. If that is the case, running mandatory proxy on gateway is probably the safest approach.
    – Olli
    Commented Feb 15, 2014 at 8:15
  • 1
    If you plug one hole he will find a new one, e.g. his friends will send him stuff to his phone. If it is a severe problem you might find a better way to deal with it by consulting a child psychologist.
    – user291737
    Commented Feb 15, 2014 at 14:21

2 Answers 2


In LinuxFormat I read about DansGuardian, where it is described as

'The best web content filter, bar none.'

It is available in most distro repositories, and works (as far as I understand) as a sort of proxy server that you then configure your browser to use ( at port 8080). In /etc/dansguardian/ it has lists with banned URLs, whole websites, and more. It also works by giving certain phrases a 'weight' (how potentially bad a phrase or word is), which can also be negative. It then evaluates the site you want to view, and makes a sum of all these weights. If the sum is over a certain limit, it displays this:

Example of a page being blocked.

If you feel a bit dictatorish, you can block all sites, and just add a few under lists/exeptionlist. This tool doesn't fit your requirement of being configured from the browser (with a password), because you have to edit the config files under /etc/dansguardian, but I think it will be more flexible and more secure because of that.


Instead of software that runs on your PC, I recommend configuring your router to use OpenDNS. OpenDNS is a public name server that offers optional custom content blocking. You sign up for a free account, add your network (based on your public IP), and select the content you want to block.

The advantage to this approach is that by configuring your router, it will affect everything on your network; not just your linux PC, but all PCs, mobile devices, game systems, and anything else that you have in your house.

OpenDNS allows you quite a bit of customization as to what you want to block. There are low, moderate, and high presets, where "low" blocks only porn, and high even blocks social media and time-wasting sites. Or you can select specific categories of sites to block (there are about 60 different categories of sites to choose from). You can, of course, blacklist any sites you want. You can also block known proxy sites, to make it difficult for your genius kids to bypass.

If you have a dynamic IP, you'll need to tell notify OpenDNS of your new IP, so that it can respond with your custom settings. This is done through a service called DNS-O-Matic, also run by OpenDNS. You can either run a background process on your PC to notify DNS-O-Matic of your IP address, or, depending on your router firmware, you might be able to get your router to do it automatically.

The step-by-step instructions on how to do this are, of course, different for every router firmware. I use DD-WRT on my router, and there are instructions on setting this all up on the wiki. DD-WRT also has the option of intercepting all DNS requests, no matter what the client's DNS settings are, so that it is more difficult for someone on your network to simply enter a manual DNS server setting and bypass the whole thing.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.