Linux logged out a user automatically

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.

Want to read Linux tips and tricks, but don't have time to check our blog everyday? Subscribe to our daily email newsletter to make sure you don't miss a single tip/tricks. Subscribe to our weekly newsletter here!

{ 2 comments… read them below or add one }

1 Anil 11.10.07 at 2:35 pm

Hi

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

Thanks
Anil

2 HarryWWC 12.05.07 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

Leave a Comment

You can use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Tagged as: , , , , , ,

Previous post: CentOS Linux apply package updates

Next post: How to: Find the inode size of an ext2 / ext3 filesystem