游乐游手机版
首页/系统平台/文章详情

Linux系统不活动用户自动登出设置的详细方法

时间:2026-06-25 07:35
设想这样一个场景:你管理的服务器上运行着多个系统,大量用户每天都在登录操作。总有一些人用完就忘,会话长期挂在那里,既不退出也不关闭。一个处于连接状态的闲置会话有多危险,无需多言——有人可能趁机搞破坏,数据泄露、系统被篡改都不是小事。作为管理员,你不可能一台一台检查每个用户是否已经登出,面对成百上千台

设想这样一个场景:你管理的服务器上运行着多个系统,大量用户每天都在登录操作。总有一些人用完就忘,会话长期挂在那里,既不退出也不关闭。一个处于连接状态的闲置会话有多危险,无需多言——有人可能趁机搞破坏,数据泄露、系统被篡改都不是小事。作为管理员,你不可能一台一台检查每个用户是否已经登出,面对成百上千台机器,那样做会累到怀疑人生。其实,完全可以交给系统自动处理:一旦超过指定时间不活跃,直接强制下线。下面分享几种在类 Unix 系统上实现的方法,操作并不复杂,关键看你怎么选择。

在 Linux 上自动登出非活动用户:闲置超时设置详解

有以下三种实现思路,先看第一种,也是最直接的方式。

方法 1:修改用户级配置文件(~/.bashrc 或 ~/.bash_profile)

编辑你的 Bash 配置文件:

$ vi ~/.bashrc

或者:

$ vi ~/.bash_profile

在文件末尾添加一行:

TMOUT=100

这里的 100 代表秒数,你可以根据实际需求调整。保存并退出后,执行以下命令让更改立即生效:

$ source ~/.bashrc

$ source ~/.bash_profile

现在,让会话闲置 100 秒。时间一到,你会看到类似下面的提示,然后自动退出:

timed out waiting for input: auto-logoutConnection to 192.168.43.2 closed.

这个方法有个明显的缺陷:配置文件归用户自己管理,用户可以随时修改。如果他想取消超时,只需删除那一行再 source 一下,甚至可以直接运行 export TMOUT=0unset TMOUT 来绕过。要想强制用户无法改动,请看下一种方法。

方法 2:全局强制配置(/etc/profile.d/autologout.sh)

以 root 身份登录,新建一个脚本文件:

# vi /etc/profile.d/autologout.sh

写入以下内容:

TMOUT=100readonly TMOUTexport TMOUT

保存退出,然后赋予可执行权限:

# chmod +x /etc/profile.d/autologout.sh

接下来注销或重启系统。此后,任何本地或远程登录的用户,在闲置 100 秒后都会被强制登出。因为变量被 readonly 锁定,普通用户即使想改也无法修改,只能乖乖按时下线。对于大多数需要统一安全策略的团队来说,这是比较推荐的做法。

方法 3:仅针对 SSH 会话(/etc/ssh/sshd_config)

前两种方法对本地和远程会话都生效。如果你只想控制远程 SSH 登录,本地控制台不受影响,那么使用这个方法更加精准。

编辑 SSH 服务端配置文件:

$ sudo vi /etc/ssh/sshd_config

找到(或添加)下面两行,并改为你想要的数值:

ClientAliveInterval 100ClientAliveCountMax 0

保存后重启 sshd 服务:

$ sudo systemctl restart sshd

然后从远程机器 SSH 登录这台服务器。100 秒不活动,连接会被远程主机主动关闭,你会看到:

$ Connection to 192.168.43.2 closed by remote host.Connection to 192.168.43.2 closed.

这样一来,本地管理员不受影响,远程用户却必须保持活跃,否则就会被踢下线。适合需要精细控制远程访问风险的场景。

三种方法各有优劣,根据实际情况选用即可。值得提醒的是:方法 1 适合个人开发机临时设置;方法 2 适合生产环境统一管控;方法 3 适合只约束远程登录的精细化策略。动手试试,几分钟就能搞定。

来源:https://www.jb51.net/LINUXjishu/596424.html
上一篇年Linux内核开发经验总结的九条心得 下一篇完美解决Linux和Windows双系统时间同步问题实用技巧
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
微软详解Win11时间点还原 默认每24小时创建恢复点
系统平台 · 2026-06-30

微软详解Win11时间点还原 默认每24小时创建恢复点

微软今日推送了最新的 6 月可选更新,并发布博客详细解读了 Win11 全新的“时间点还原”(Point-in-time restore)功能——这一功能本质上是对系统恢复体验的一次全面升级,旨在让用户更轻松地应对电脑故障。 微软表示,面向 Windows 11 客户端用户的“时间点还原”功能现已正

Win11 26H1六月可选更新KB5095091 优化放大镜改善装机体验
系统平台 · 2026-06-30

Win11 26H1六月可选更新KB5095091 优化放大镜改善装机体验

微软今天推送了Windows 11 26H1设备的6月可选更新KB5095091,安装完成后系统版本号会升级到Build 28000 2340。值得一提的是,这次更新并非面向所有设备,而是专门为搭载高通骁龙X2系列芯片的机型准备的——包括骁龙X2 Plus、X2 Elite和X2 Elite Ext

Win11六月可选更新KB5095093修复回收站弹窗异常
系统平台 · 2026-06-30

Win11六月可选更新KB5095093修复回收站弹窗异常

微软已悄然推送Windows 11六月可选更新,编号KB5095093。本次更新覆盖两个版本:24H2用户安装后版本号升级至Build 26100 8737,而25H2用户则更新至Build 26200 8737。 本次更新并非仅是小修小补,而是带来了多项实质性新功能。下面我们就来详细解析这些更新内

苹果macOS 27 Beta2封堵Siri AI跳过候补名单漏洞
系统平台 · 2026-06-30

苹果macOS 27 Beta2封堵Siri AI跳过候补名单漏洞

科技媒体 Cult of Mac 昨日(6月23日)发布博文指出,苹果在 macOS 27 Beta 2 更新中悄然封堵了一个此前可用的后门——用户曾能通过一条终端命令绕过候补名单,直接启用新版 Siri AI,如今这一方法已失效。 简要回顾一下:在 macOS 27 Beta 1 阶段,只需在 M

微软加速Win11 25H2推送 覆盖所有符合条件家用PC
系统平台 · 2026-06-30

微软加速Win11 25H2推送 覆盖所有符合条件家用PC

近日(6月23日),科技媒体 Windows Latest 发布了一则值得关注的动态:微软已进一步扩大 Windows 11 25H2 的推送范围,所有满足硬件要求、且不受 IT 部门管理的家庭版和专业版设备,现在均可顺利接收本次更新。 此次升级有一个显著特点——采用“启用包”(eKB)方式进行推送