Linux logged out a user automatically

by on November 6, 2007 · 4 comments· LAST UPDATED November 6, 2007

in , ,

Q. We have a few users who frequently forget to log out and I'd like to force them or automatically log out a user in case of inactivity detected. How do I force user to be logged out automatically?

A. BASH provides TMOUT variable. It is necessary for security reasons to have an inactive user logged out after a period of inactivity from Linux / UNIX ssh / telnet session. This can be accomplished by setting an environment variable TMOUT.

Automatically log out a user

Add the TMOUT variable to your /etc/bashrc file:
# vi /etc/bashrc
Set TMOUT to 300 seconds (5 minuets):
TMOUT=300
Save an close the file. Above config would automatically logout users after 300 seconds of inactivity. Please note that this hack only works with run level 2, 3 i.e. it will not work with GUI sessions.

TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 4 comments… read them below or add one }

1 Anil November 10, 2007 at 2:35 pm

Hi

Do i need to add this to every bashrc in user’s home dir to work ???

Thanks
Anil

Reply

2 HarryWWC December 5, 2007 at 12:57 am

Hullo Anil,
if you read carefully, you are editting the “/etc/bashrc” – this is the *system* (global) BASH Resource Configuration file. Hence, editting this file will make it affect *all* (subsequent) logons.
You could (in theory) in your own .bashrc modify the value to something else (e.g. to 600seconds = 10mins) if you wished.
hth,
.h

Reply

3 Prasad November 12, 2009 at 8:36 am

Hi,

As it is mentioned, this does not work for GUI based sessions. Can someone please let me know how can I kill the GUI based idle sessions?

Prasad

Reply

4 Geff February 1, 2010 at 3:08 pm

On an apparent contrary, how do you rcover from a situation where linux automatically logs a user out immediately after logging in onto the linux console?

Reply

Leave a Comment

Tagged as: , , , , , ,

Previous Faq:

Next Faq: