网站首页 > 技术文章 正文
场景:服务器经常被网络中各系统的很多个用户访问,某些用户使用完毕后忘记登出会话.
留下一个处于连接状态的session是一件非常危险的事情,作为一名系统管理员,如果去检查每个系统用户是否有登出,这根本不现实,要知道网络中有成百上千台机器.
此时就需要设置用户在本机或通过SSH登陆服务器超过一定时间不活跃便自动断开连接的机制.
以下为实验过程.
实验系统:rhel 8.4
以下介绍三种实现方法.
方法 1:
编辑~/.bashrc或~/.bash_profile文件:
$ vi~/.bashrc
或
$ vi~/.bash_profile
将下面行加入其中:
TMOUT=100
说明:用户在停止动作 100 秒后自动登出.
运行下面命令让更改生效:
$ source~/.bashrc
或
$ source~/.bash_profile
现在让会话闲置100秒,会看到下面这段信息,并且用户会自动退出会话.
[oracle@dbserver~]$ timed out waiting for input: auto-logout
[root@dbserver~]#
不过该设置可以轻易地被用户所修改,因为~/.bashrc文件被用户自己所拥有.
要修改或者删除超时设置,只需要删掉上面添加的行,然后执行source~/.bashrc命令让修改生效.
此外,用户也可以运行下面命令来禁止超时:
$ exportTMOUT=0
或,
$ unsetTMOUT
若想阻止用户修改该设置,使用方法2.
方法2:
以root用户登录,创建一个名为autologout.sh的新文件.
# vi/etc/profile.d/autologout.sh
加入下面内容:
TMOUT=60
readonlyTMOUT
exportTMOUT
添加可执行权限:
# chmod+x /etc/profile.d/autologout.sh
现在登出或重启系统,非活动用户就会在60秒后自动登出.
说明:该修改对当前已开启的会话不会产生影响,只会对新开的session生效.
普通用户即使想保留会话连接但也无法修改该配置,他们会在60秒后强制退出.
这两种方法本地登录的用户和远程系统上通过SSH登录的用户都有效.
下面实现只自动登出非活动的SSH会话,而不自动登出本地服务器上的会话.
方法3:
编辑/etc/ssh/sshd_config文件
# vi/etc/ssh/sshd_config
添加/修改下面行:
ClientAliveInterval60
ClientAliveCountMax0
保存并退出该文件,重启 sshd 服务.
#systemctl restart sshd
现在,在远程系统通过ssh登录该系统,60秒后ssh会话就会自动关闭.
出现以下信息:
[oracle@dbserver~]$
Socketerror Event: 32 Error: 10053.
Connectionclosing...Socket close.
Connectionclosed by foreign host.
Disconnectedfrom remote host(192.168.133.120) at 12:32:49.
猜你喜欢
- 2024-11-15 JMeter测试关系数据库:JDBC连接(jmeter连接db2数据库)
- 2024-11-15 0810-invalidate metadata异常分析
- 2024-11-15 SQL优化技巧总结,及案例分析(sql优化的方法及思路)
- 2024-11-15 ORA-609频繁出现在alert.log,如何解决?
- 2024-11-15 数据产品入门,需要如何修炼?(数据产品是做什么的)
- 2024-11-15 字节跳动表格存储中的事务(字节跳动报表)
- 2024-11-15 Oracle RAC该调整网卡MTU值(oracle rac修改ip)
- 2024-11-15 有多少运维配置防火墙忽略了长连接?
- 2024-11-15 通用设计:企业数据共享平台——联动、规范、高效
- 2024-11-15 Oracle数据库安全基线(oracle安全管理)
你 发表评论:
欢迎- 611℃几个Oracle空值处理函数 oracle处理null值的函数
- 603℃Oracle分析函数之Lag和Lead()使用
- 592℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 589℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 583℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 576℃【数据统计分析】详解Oracle分组函数之CUBE
- 566℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 558℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
-
- PageHelper - 最方便的 MyBatis 分页插件
- 面试二:pagehelper是怎么实现分页的,
- MyBatis如何实现分页查询?(mybatis-plus分页查询)
- SpringBoot 各种分页查询方式详解(全网最全)
- 如何在Linux上运行exe文件,怎么用linux运行windows软件
- 快速了解hive(快速了解美国50个州)
- Python 中的 pyodbc 库(pydbclib)
- Linux搭建Weblogic集群(linux weblogic部署项目步骤)
- 「DM专栏」DMDSC共享集群之部署(一)——共享存储配置
- 故障分析 | MySQL 派生表优化(mysql pipe)
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)