Unfortunately, I am currently at an area where I cannot access a linux machine (not even Knoppix!). I can still point you in the right direction and give you some ideas of what to do.
I love to write bash and sh scripts. This is how we are going to solve your problem.
Write a script that does the following:
runs the command w (w will display idle time in one of the columns)
uses sed or awk to parse the output of the idle collumn and place it into a variable
uses simple logic
if [ $idle >= 30]; then
`logout`
You could save this script on each computer and have it run using crontab every minute "if your paranoid" or every 5 minutes.
I personally like solutions that are scalable. I use the Configuration Engine Using cfengine, you could auto push the scripts out to each host, update it on one machine, and then auto push it out to every other machine. Cfengine is very well documented. You shouldn't have alot of trouble with it.
This solution might take a week or two to play with and implement, but you will learn to appreciate cfengine once you get it running.
Links
http://www.cfengine.com
http://www.gnu.org/manual/cfengine-1...rence_toc.html
http://www.tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html I can never stress these enough!
http://www.tldp.org/LDP/abs/html/
http://www-106.ibm.com/developerwork...ry/l-sed1.html
http://www-106.ibm.com/developerwork...ry/l-sed2.html
http://www-106.ibm.com/developerwork...ry/l-sed3.html
http://www-106.ibm.com/developerwork...ry/l-awk1.html
http://www-106.ibm.com/developerwork...ry/l-awk2.html
http://www-106.ibm.com/developerwork...ry/l-awk3.html