Parental Controls in Ubuntu - per user
I would like to set up parental controls on Ubuntu for a friend of mine. I want it so that the child user has the controls set, but the parent user is not restricted. To be clear, they are sharing one computer, so a router based solution won't help. And I would like a set of step by step instructions to do this. Just one way of doing it.
I'm an experienced Ubuntu user, happy at the command line. I've spent quite some time googling for this along the way. I hope that the GChildCare project will eventually make this easy, but it is not ready yet. In the meantime, the WebContentControl GUI provides a way of managing parental controls, but apply them to every user on the computer (easy WebContentContol install instructions and detailed instructions, discussion and related links on ubuntuforums).
The ubuntuforums post has a FAQ that states that user-specific configuration is not possible with WebContentControl, and then provides 3 links he used to help him do it. But they are far from step by step instructions. There is this thread which is notes along the way and linking to this article about squid and dansguardian. And then to these two dansguardian articles which are somewhat in depth ...
So does anyone know of an existing guide to how to set up parental controls on ubuntu with some users not affected? If no one has come up with an answer after a little bit, I'll set up a community wiki answer so we can come up with a guide.
if your router allows to have a regular and guest wifi network...
What I have done for my laptop which is for me and my son, is to create two different wifi networks using the guest and the home network feature on my router and then on the laptop change the configuration of each wifi network connection to use a different DNS and only allow the home network to be accessible to my userid.
My son will only get my guest network which is very secure not allowing Facebook, adult website, etc.... and for me, I can still go to my facebook page.
Steps:
- On your router, activate the home and guest network with different WPA key
- log on the laptop with the adult user
- On the wifi icon on the top right corner, connect to each network one at the time to enter the WPA key, so both are reacheable
- Click again on the wifi icon and select edit connection
- for the guest network, change the configuration to enter manual the DNS:
208.67.222.222
208.67.220.220
(This is openDNS, a free and family-oriented DNS service.) - for the home network, edit the connection and make it available only for current user.
So now only the adult has access to the regular DNS without parental control.
This isn't a full solution but it keeps running through my mind so in the interest of getting people thinking here goes. First of all I love OpenDNS as a simple non-intrusive way to set basic controls. I set the DNS servers on my router and along with keeping computers in common areas and discussing what is going on. I feel pretty good about what they can access either accidentally or maliciously with regard to things that are offensive or dangerous to them or the computer.
That being said, I keep thinking that if there were a way to set DNS servers (within the computer and not at the router like I do) per user, a person could set some users to use OpenDNS and others not to. I have spent a little time researching this but haven't stumbled on whether it is possible to set the servers per user. Anyone else know the answer to that question?
You can install SquidGuard and configure the proxy for the son's session and not for the father's one.