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.
You should follow me on twitter here or grab rss feed to keep track of new changes.
Featured Articles:
- 30 Handy Bash Shell Aliases For Linux / Unix / Mac OS X
- Top 30 Nmap Command Examples For Sys/Network Admins
- 25 PHP Security Best Practices For Sys Admins
- 20 Linux System Monitoring Tools Every SysAdmin Should Know
- 20 Linux Server Hardening Security Tips
- Linux: 20 Iptables Examples For New SysAdmins
- Top 20 OpenSSH Server Best Security Practices
- Top 20 Nginx WebServer Best Security Practices
- 20 Examples: Make Sure Unix / Linux Configuration Files Are Free From Syntax Errors
- 15 Greatest Open Source Terminal Applications Of 2012

- My 10 UNIX Command Line Mistakes
- Top 10 Open Source Web-Based Project Management Software
- Top 5 Email Client For Linux, Mac OS X, and Windows Users
- The Novice Guide To Buying A Linux Laptop





![Bash Configure Automatic Logout [ Linux / Unix / Apple OS X ]](http://s13.cyberciti.org/images/shared/rp/3/17.jpg)







{ 4 comments… read them below or add one }
Hi
Do i need to add this to every bashrc in user’s home dir to work ???
Thanks
Anil
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
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
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?