设置TMOUT环境变量可实现linux会话超时自动登出,提升安全性;TMOUT为bash内置变量,单位秒,仅对交互式shell有效;临时设置用export TMOUT=600,永久设置可编辑/etc/bashrc或用户~/.bashrc文件,建议全局或按需配置以防止终端滥用。
在Linux系统中,可以通过设置 TMOUT 环境变量来实现会话超时自动登出,提升系统安全性。当用户在指定时间内没有任何操作,shell会自动终止会话。这个功能适用于Bash和Zsh等主流shell。
什么是TMOUT变量
TMOUT 是Bash内置的一个环境变量,单位为秒。当用户在交互式shell中空闲时间达到该值,shell将自动退出。例如,设置 TMOUT=300 表示5分钟无操作后自动登出。
注意:该变量仅对交互式shell有效,不影响脚本执行或后台任务。
临时设置会话超时
可以在当前终端会话中直接设置TMOUT,适用于临时使用:
- export TMOUT=600 # 设置10分钟超时
- 关闭终端或登出后失效
- 可通过 echo $TMOUT 查看当前值
永久启用TMOUT(全局设置)
若希望所有用户都应用会话超时,可编辑系统级配置文件:
- 打开 /etc/bashrc 或 /etc/profile
- 添加以下两行:
readonly TMOUT=900
export TMOUT
使用 readonly 可防止用户修改该值,增强安全性。修改后,所有新登录的用户会话都会应用该超时策略。
针对特定用户设置
若只想为某个用户启用超时,应编辑其家目录下的shell配置文件:
- 编辑 ~/.bash_profile 或 ~/.bashrc
- 加入:export TMOUT=600
- 保存后执行 source ~/.bashrc 立即生效
基本上就这些。合理设置TMOUT能有效防止无人看管的终端被滥用,建议在服务器或共享环境中启用。注意不要设得太短,以免影响正常操作。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END