Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

How to store the keystrokes of clients (Windows Xp) on a linux server (RHEL 5)?

I want to monitor my employees every action in office at working time,

  • Keystroke Recorder Application
  • Activity Recorder
  • Record keystrokes typed in any chat, internet messengers or e-mail clients
  • Clipboard Monitoring Screen shots
  • Maker Sends logs to email

How can I do it?

share|improve this question
up vote 2 down vote accepted

If you're going to do this (and I would also advise against) the first thing I would recommend is that you check the employment, company, privacy and data protection laws of your country to ensure that it's not illegal. Secondly you need to check your employee's contracts and ensure that you're not breaking them.

Next you need to think hard about your reasons for doing this. I'm giving you the benefit of the doubt here and assuming that you have grounds to suspect that one of them might be engaged in some kind of fraud or other nasty activity. If not, I'd advise you to back away and forget that you ever thought of it right now.

After that you need to check what legal recourse you have. A good and honest company or employment lawyer (one who isn't just out to grab money) will be able to advise on legal means of obtaining the evidence you need. Above all else, you need to stay on the right side of the law. If it came to a court case (e.g. if an employee claimed unfair dismissal) you would be in a whole heap of trouble if the evidence you used was obtained illegally.

While we're on the legal side, you need to also be certain about laws relating to monitoring employees. You may be obliged by law to inform them that you're monitoring them, you may be obliged by law to inform them of what you're monitoring, you may be obliged by law to inform them of the reasons why you're monitoring them, and you may be obliged by law to hand over any data you collect to an employee who requests it.

If you're still determined to go down this route, you need to know that installing keylogging, screengrabbing, etc software on PCs is basically installing software that mimics (or exactly replicates!) the behaviour of viruses and other nasties. This may not play nicely with your AV software (you do use AV software?) and it might be the case that one of them would have to go. Do you want that? Really?

share|improve this answer
Forgot to add: your police should also have a computer crimes division, but you would need definite evidence before going to them; in my experience they don't like having their time wasted. – 21st Century Moose Feb 10 '10 at 11:04

While the technology does exist for doing each of these things I would strongly discourage trying to use them in a productive environment.

Among other things these tools would be providing a security nightmare ... passing sensitive data back across your network and storing it on an extremely high value target. All your security eggs will be in one basket; anyone gaining access to that can find every password, pass phrase and every other bit of potentially sensitive data from every other system in your network over a some fairly long period of time.

They are likely to have a horrible impact on employee morale ... similar to the effect of posting burly thugs to stand over them watching every keystroke and listen to every word they utter with a stopwatch in one hand (and perhaps a whip in the other).

Additionally loading a number of these tools on everyone's desktop machines is likely to impact the stability and performance of workstations ... and passing every keystroke and periodic snapshots over network could generate quite a bit of traffic. (In fact the most obvious way to enforce the use of these tools would be for the desktop/workstations to be thin clients with all productivity applications, chat/IM clients and so on all installed on centralized servers ... running Citrix or "Terminal Server Edition" or Red Hat's "Virtualization for Desktops" product (based on their Qumranet acquisition if I recall correctly).

Moreover if you are capturing all this data who are you going to assign to review it? How much are you going to spend looking at a gnat's eye view of your employee behavior?

Finally consider that no combination of these tools that you install on your employees computers are is going to be foolproof. Some of your employees will probably find ways to bypass them. In other cases they are likely to fail for various innocuous reasons. They are likely to create additional layers of complexity and support overhead.

If you really want to ensure that your employees are working then perhaps you should focus on meaningful productivity metrics and processes. How much work did they accomplish? How accurately did they do it? Are they generating complaints from customers? From co-workers?

There are effective and efficient ways to manage your staff. Playing proctologist and crawling through their alimentary canals with a microscope is not among them!

share|improve this answer

Umm I am sorry your language is a little confusing.

Do you want to monitor what the users are doing when they are connected to the RHEL5 server? OR Do you just want to monitor their XP desktops with something that will store the data on your RHEL5 server?

Either way you could use squid to control how users connect to the internet on your RHEL, and set the XP clients to connect to REHL5 server before going to the internet.

Other than that you could use something like this

But in the end if your that concerned about your employees, possibly getting a higher caliber of employee might be a less painful option.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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