Linux下实现不活动用户登录超时后自动登出
方法一:通过修改.bashrc或.bash_profile文件来实现
通过修改home目录下的.bashrc或.bash_profile文件来实现。这两个文件选择其中一个在末尾加入如下一行,具体操作如下:
[linuxidc.com@GeekDevOps /]$ cd ~
[linuxidc.com@GeekDevOps ~]$ echo "TMOUT=90">>.bashrc
[linuxidc.com@GeekDevOps ~]$ source .bashrc
以上代码中我们选择的是.bashrc文件,如果您选择的是.bash_profile,那么也是一样的操作流程。以上我们设置用户自动登出时间为90秒,90秒后屏幕显示如下:
[linuxidc.com@GeekDevOps ~]$ 等待输入超时:自动登出
Connection closing...Socket close.
Connection closed by foreign host.
Disconnected from remote host(10.1.1.21:22) at 16:38:48.
方法二:通过修改ssh的配置文件来实现
ssh是我们在Linux系统中比较常用的一款工具,通过修改ssh的配置文件 /etc/ssh/sshd_config我们同样也可以实现超时自动登出功能,具体如下:
[root@linuxidc.com ~]# vim /etc/ssh/sshd_config
找到以下两行:
#ClientAliveInterval 90
#ClientAliveCountMax 3
去掉注释,修改后面的数字:
ClientAliveInterval 60
ClientAliveCountMax 5
保存退出后,重启ssh服务:
[root@linuxidc.com ~]# service sshd restart
这种方法对除了root之外的所有用户都是60秒登录超时,自动登出。第一行表示每90秒检测一次,第二行表示检测到5次不活动就断开连接。
方法三:通过修改ssh的配置文件来实现
在/etc/profile文件中,添加TMOUT字段,然后source /etc/profile即可。
TMOUT=300
export TOMOUT
方法四:创建脚本
以 root 用户登录,创建一个名为 autologout.sh 的新文件。
vim /etc/profile.d/autologout.sh
加入下面内容:
TMOUT=100
readonly TMOUT
export TMOUT
保存并退出该文件,为它添加可执行权限:
chmod +x /etc/profile.d/autologout.sh
现在,登出或者重启系统。非活动用户就会在 100 秒后自动登出了。普通用户即使想保留会话连接但也无法修改该配置了,他们会在 100 秒后强制退出。
本文来自博客园,作者:JackieDYH,转载请注明原文链接:https://www.cnblogs.com/JackieDYH/p/17635054.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现