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

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=0 或 unset 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双系统时间同步问题实用技巧
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

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

同类最新

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

更多
VMware安装Ubuntu完整教程:创建虚拟机与启动验证
系统平台 · 2026-09-01

VMware安装Ubuntu完整教程:创建虚拟机与启动验证

本教程详细演示如何在VMware中创建Ubuntu虚拟机,涵盖ISO挂载、硬件配置、安装向导及启动验证。通过清晰的步骤与验证命令,帮助新手快速搭建可用的Linux学习环境。

Win10专业版U盘安装教程:制作启动盘与完整安装步骤
系统平台 · 2026-09-01

Win10专业版U盘安装教程:制作启动盘与完整安装步骤

本文提供Win10专业版U盘安装完整流程:准备8GB以上U盘与官方镜像,制作启动盘并核对盘符;通过F12 F11 Esc等快捷键或BIOS设置U盘为第一启动项;安装时选择专业版并谨慎分区;完成后在“设置—系统—关于”验证版本与激活状态。操作前务必备份数据。

Windows10系统字体太小怎么调大
系统平台 · 2026-08-27

Windows10系统字体太小怎么调大

Windows10系统字体太小怎么调大?只需两步:首先打开设置中的显示选项,将缩放比例调整为125%或150%;随后运行ClearType文本调谐器优化字体清晰度。此方法适用于高分屏及普通屏幕,无需修改注册表即可解决界面拥挤问题。

Win10磁盘占用100%基础排查:从监控到清理的完整步骤
系统平台 · 2026-08-27

Win10磁盘占用100%基础排查:从监控到清理的完整步骤

Windows 10系统出现磁盘占用100%会导致电脑卡顿、程序响应缓慢。本文提供基础排查方案:首先通过任务管理器确认是否为磁盘高负载,随后进入系统存储页面分析C盘占用类别,最后针对性清理临时文件。遵循此流程可有效缓解磁盘压力,避免盲目重装系统。

Windows10系统怎么显示此电脑和控制面板
系统平台 · 2026-08-27

Windows10系统怎么显示此电脑和控制面板

Windows10默认可能不显示桌面图标,导致找不到“此电脑”和“控制面板”。只需进入个性化设置,在“桌面图标设置”中勾选对应选项即可恢复。本文提供详细图文步骤,帮助快速找回系统入口。