As a parent of two children I want my kids to be able to access the Internet to allow them to learn and play. I am also concerned about some of the material on the Internet and the risk to my wallet if they inadvertantly purchased goods online through an app store or one-click online shop. I have therefore created Kidsafe as a way to protect my children from the dangers of the Internet without having to sit over them whenever they go online. Rather than handover the role of monitoring my children's access to a computer Kidsafe provides a means for parents to work alongside their children by creating a fenced safe area of the Internet that can increase as the children become more aware of the dangers and gain a better understanding of how to keep themselves safe.
Kidsafe helps protect members of the family from inappropriate content on the Internet. It can protect all computers in the home, including tablets and games consoles without needing to install additional software on the computers.
Kidsafe puts the parent in control of which sites your children can visit on the Internet. Running on the Raspberry Pi (a low cost, low power computer) it keeps a watch on the sites your children visit to make sure they don't stray to an inappropriate website. The parent can easily approve or override access to ensure that the child can still access sites that they may need for homework, and the parent can still use their favourite social networking sites whilst still protecting younger children.
Using existing open source software and some custom application code all websites accessed are checked against an approved list appropriate to the user's age group. The parent can add the appropriate websites through the web page to permit only those sites that they consider to be appropriate. Whenever the child tries to access an unapproved site they are presented with a page where the parent can check the site before adding it to the approved list.
Different usernames are provided for young children, teenagers and adults so that each user can visit the sites appropriate to their age group. This allows an increasing level of access and trust on older children.
The short video below shows how easily my child who was previously working independantly can ask for assistance and have access granted to a particular website.
This is a preview release of some of the new features planned for a future release. This includes the new dashboard, making it easier to manage the rules and users. It also has a new look.
Significant changes are planned in the future so this should still be considered beta at this stage. Version 0.2.0 has undergone more testing and should be considered the more stable version.
Includes important security fix
There was a software bug in the previous versions that could result in sessions from not expiring correctly. This would only be a problem when the loglevel has been manually changed. It is strongly recommended to update to version 0.2.0
New dashboard added with the ability to view and manage users and rules. Also includes bug fixes in the main code and the mysql installation instructions.
New release - primarily bug fixes, but also adds new index page with the ability to logoff. Work is already underway on 0.2 which will add an initial Dashboard for parents to adminster some of the basics (eg. new users). I'm concentrating on the functionality for now, the "easier" install process will follow at a future date after that.
Initial release, working but hard to install.
The software is now working, but still undergoing further development to make it easier to install and use. It is currently recommended for those with experience in Linux and mysql.
If you want to learn more about how it works I'll be publishing a tutorial with instructions on creating a simpler version. This may be useful if you are looking to create your own proxy application helper program to work with Squid.
The software is available to download as two compressed tar files and a text file with the SQL commands to setup the database. You should follow the installation instructions to install these onto the Raspberry Pi.