Linux下如何让长时间不活动的用户自动登出
这篇“Linux下如何让长时间不活动的用户自动登出”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Linux下如何让长时间不活动的用户自动登出”文章吧。
在 Linux 上实现一段时间后自动登出非活动用户
有三种实现方法。让我们先来看第一种方法。
方法 1:
编辑 ~/.bashrc 或 ~/.bash_profile 文件:
$ vi ~/.bashrc
或,
$ vi ~/.bash_profile
将下面行加入其中:
TMOUT=100
这会让用户在停止动作 100 秒后自动登出。你可以根据需要定义这个值。保存并关闭文件。
运行下面命令让更改生效:
$ source ~/.bashrc
或,
$ source ~/.bash_profile
现在让会话闲置 100 秒。100 秒不活动后,你会看到下面这段信息,并且用户会自动退出会话。
timed out waiting for input: auto-logoutConnection to 192.168.43.2 closed.
该设置可以轻易地被用户所修改。因为,~/.bashrc 文件被用户自己所拥有。
要修改或者删除超时设置,只需要删掉上面添加的行然后执行 source ~/.bashrc 命令让修改生效。
此外,用户也可以运行下面命令来禁止超时:
$ export TMOUT=0
或,
$ unset TMOUT
若你想阻止用户修改该设置,使用下面方法代替。
方法 2:
以 root 用户登录。
创建一个名为 autologout.sh 的新文件。
# vi /etc/profile.d/autologout.sh
加入下面内容:
TMOUT=100readonly TMOUTexport TMOUT
保存并退出该文件。
为它添加可执行权限:
# chmod +x /etc/profile.d/autologout.sh
现在,登出或者重启系统。非活动用户就会在 100 秒后自动登出了。普通用户即使想保留会话连接但也无法修改该配置了。他们会在 100 秒后强制退出。
这两种方法对本地会话和远程会话都适用(即本地登录的用户和远程系统上通过 SSH 登录的用户)。下面让我们来看看如何实现只自动登出非活动的 SSH 会话,而不自动登出本地会话。
方法 3:
这种方法,我们只会让 SSH 会话用户在一段时间不活动后自动登出。
编辑 /etc/ssh/sshd_config 文件:
$ sudo vi /etc/ssh/sshd_config
添加/修改下面行:
ClientAliveInterval 100ClientAliveCountMax 0
保存并退出该文件。重启 sshd 服务让改动生效。
$ sudo systemctl restart sshd
现在,在远程系统通过 ssh 登录该系统。100 秒后,ssh 会话就会自动关闭了,你也会看到下面消息:
$ Connection to 192.168.43.2 closed by remote host.Connection to 192.168.43.2 closed.
现在,任何人从远程系统通过 SSH 登录本系统,都会在 100 秒不活动后自动登出了。
以上就是关于“Linux下如何让长时间不活动的用户自动登出”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网行业资讯频道。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341