Parental Control
Several methods exist to protect and limit child activity on a computer.
Applications
- timekpr — A program controlling use of user accounts. It can limit by access duration with the daemon timed, and configure at what time users can log in. A client in the traybar warns the users about their time running out, while administration is done in a graphical GTK GUI.
- timeoutd — A lightweight alternative to timekpr, it scans
/var/run/utmpevery minute and checks/etc/timeoutsfor an entry matching a restricted user. Restrictions are based on idle time, login time, maximum time, and time of day.
- || timeoutdAUR
- logkeys — A daemon that logs keypresses into a logfile for later inspection. The log file resides by default in
/var/log, but it is recommended to move it to an encrypted partition; it will for example contain every password entered in the system. For supervision purposes, the--no-func-keysoption is recommended.
- logkeys-keymaps — Necessary to log keys with logkeys (
--keymapoption) using a localized, non-US keyboard.
- || logkeys-keymaps-gitAUR
Whitelist with Tinyproxy and Firehol
The following description will enable you to filter any user's access to the internet with a whitelist of url-s using fireholAUR and tinyproxy (or tinyproxy-gitAUR).
/etc/tinyproxy/tinyproxy.conf consists of the following changes:
FilterURLs On FilterDefaultDeny Yes Filter "/etc/tinyproxy/whitelist"
/etc/tinyproxy/whitelist should hold the url's that will be only allowed accessed by selected users. A silly example:
(www|wiki|static).archlinux.org google.com
/etc/firehol/firehol.conf should contain the following line:
transparent_proxy "80 443" 8888 "nobody root bin myaccount"
where myaccount is my account that should no be filtered by Tinyproxy.
OpenDNS Parental Control
OpenDNS provides free DNS services as an alternative to your ISP's default servers. Furthermore, they provide optional filtering capabilities. Different levels of filtering is possible; see the OpenDNS main page for details.
For dynamic IP addresses, it is a good idea to keep them updated on OpenDNS. Use ddclient and edit /etc/ddclient/ddclient.conf as follows:
# OpenDNS.com account-configuration use=web, web=myip.dnsomatic.com server=updates.opendns.com protocol=dyndns2 login=myopendns@email.address password=myopendnspassword myhostname