


Introducing automatic logout methods on Linux to prevent long periods of user inactivity
Let us imagine such a scenario. You have a server that is frequently accessed by many users from various systems on the network. It is possible that some users forget to log out of the session leaving the session open. We all know how dangerous it is to leave a user session connected. Some users may use this to intentionally do things that damage the system. And you, as a system administrator, will you go to every system to check whether the user has logged out? In fact, this is completely unnecessary. And if there are hundreds or thousands of machines in the network, this is too time-consuming. However, you can have users automatically log out if they are inactive on the machine or SSH session for a certain period of time. This tutorial will teach you how to do this on a Unix-like system. It's not difficult at all. Do it with me.
Implementing automatic logout of inactive users after a period of time on Linux
There are three ways to achieve this. Let's look at the first method first.
method 1:
Edit ~/.bashrc or ~/.bash_profile file:
$ vi ~/.bashrc
or,
$ vi ~/.bash_profile
Add the following lines to it:
TMOUT=100
This will log the user out automatically after 100 seconds of inactivity. You can define this value as needed. Save and close the file.
Run the following command to make the changes take effect:
$ source ~/.bashrc
or,
$ source ~/.bash_profile
Now let the session idle for 100 seconds. After 100 seconds of inactivity, you will see the message below and the user will automatically log out of the session.
timed out waiting for input: auto-logout Connection to 192.168.43.2 closed.
This setting can be easily modified by the user. Because the ~/.bashrc file is owned by the user himself.
To modify or delete the timeout setting, just delete the line added above and execute the source ~/.bashrc command to make the modification take effect.
In addition, users can also run the following command to disable timeout:
$ export TMOUT=0
or,
$ unset TMOUT
If you want to prevent users from modifying this setting, use the following method instead.
Method 2:
Log in as root user.
Create a new file named autologout.sh.
# vi /etc/profile.d/autologout.sh
Add the following content:
TMOUT=100 readonly TMOUT export TMOUT
Save and exit the file.
Add executable permissions to it:
# chmod +x /etc/profile.d/autologout.sh
Now, log out or restart the system. Inactive users will be automatically logged out after 100 seconds. Ordinary users cannot modify this configuration even if they want to retain the session connection. They will force quit after 100 seconds.
Both methods work for both local and remote sessions (i.e. users logged in locally and users logged in via SSH on the remote system). Let's take a look at how to automatically log out only inactive SSH sessions without automatically logging out of local sessions.
Method 3:
This way, we will only have the SSH session user automatically log out after a period of inactivity.
Edit /etc/ssh/sshd_config file:
$ sudo vi /etc/ssh/sshd_config
Add/modify the following lines:
ClientAliveInterval 100 ClientAliveCountMax 0
Save and exit the file. Restart the sshd service for the changes to take effect.
$ sudo systemctl restart sshd
Now, log in to the remote system through ssh. After 100 seconds, the ssh session will automatically close and you will see the following message:
$ Connection to 192.168.43.2 closed by remote host. Connection to 192.168.43.2 closed.
Now, anyone who logs into this system via SSH from a remote system will automatically log out after 100 seconds of inactivity.
The above is the detailed content of Introducing automatic logout methods on Linux to prevent long periods of user inactivity. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

For many users, hacking an Android TV box sounds daunting. However, developer Murray R. Van Luyn faced the challenge of looking for suitable alternatives to the Raspberry Pi during the Broadcom chip shortage. His collaborative efforts with the Armbia

DeepSeek is a powerful intelligent search and analysis tool that provides two access methods: web version and official website. The web version is convenient and efficient, and can be used without installation; the official website provides comprehensive product information, download resources and support services. Whether individuals or corporate users, they can easily obtain and analyze massive data through DeepSeek to improve work efficiency, assist decision-making and promote innovation.

There are many ways to install DeepSeek, including: compile from source (for experienced developers) using precompiled packages (for Windows users) using Docker containers (for most convenient, no need to worry about compatibility) No matter which method you choose, Please read the official documents carefully and prepare them fully to avoid unnecessary trouble.

How to download BitPie Bitpie Wallet App? The steps are as follows: Search for "BitPie Bitpie Wallet" in the AppStore (Apple devices) or Google Play Store (Android devices). Click the "Get" or "Install" button to download the app. For the computer version, visit the official BitPie wallet website and download the corresponding software package.

BITGet is a cryptocurrency exchange that provides a variety of trading services including spot trading, contract trading and derivatives. Founded in 2018, the exchange is headquartered in Singapore and is committed to providing users with a safe and reliable trading platform. BITGet offers a variety of trading pairs, including BTC/USDT, ETH/USDT and XRP/USDT. Additionally, the exchange has a reputation for security and liquidity and offers a variety of features such as premium order types, leveraged trading and 24/7 customer support.

The system variable $n is the parameter passed to the script or function. n is a number indicating the number of parameters. For example, the first parameter is $1, and the second parameter is $2$? The exit status of the previous command, or the return value of the function. Returns 0 on success, 1 on failure $#Number of parameters passed to the script or function $* All these parameters are enclosed in double quotes. If a script receives two parameters, $* is equal to $1$2$0The name of the command being executed. For shell scripts, this is the path to the activated command. When $@ is enclosed in double quotes (""), it is slightly different from $*. If a script receives two parameters, $@ is equivalent to $1$2$$the process number of the current shell. For a shell script, this is the process I when it is executing

1. Installation environment (Hyper-V virtual machine): $hostnamectlStatichostname:localhost.localdomainIconname:computer-vmChassis:vmMachineID:renwoles1d8743989a40cb81db696400BootID:renwoles272f4aa59935dcdd0d456501Virtualization:microsoftOperatingSystem:CentOS Linux7(Core)CPEOSName:cpe:

Ouyi OKX, the world's leading digital asset exchange, has now launched an official installation package to provide a safe and convenient trading experience. The OKX installation package of Ouyi does not need to be accessed through a browser. It can directly install independent applications on the device, creating a stable and efficient trading platform for users. The installation process is simple and easy to understand. Users only need to download the latest version of the installation package and follow the prompts to complete the installation step by step.
