Ban*_*jer 39 ssh centos openssh
我似乎找不到这个简单问题的答案,我需要一些合规文档。
在 CentOS 6.5 (OpenSSH 5.3p1-94.el6) 的默认安装中,用户的 SSH 会话闲置多长时间后会终止?我相信可以设置以下内容来增加空闲超时,但默认情况下它们被注释掉了。
$ grep -i alive /etc/ssh/sshd_config
#TCPKeepAlive yes
#ClientAliveInterval 0
#ClientAliveCountMax 3
Run Code Online (Sandbox Code Playgroud)
另外,是否有一个命令可以转储当前sshd设置的列表?我看不到任何东西man sshd。
jor*_*anm 30
中的注释行sshd_config通常显示默认值。您问题中的所有行都是这种情况。您可以在sshd_config联机帮助页中验证这一点。以下是相关的片段:
TCPKeepAlive
指定系统是否应向另一方发送 TCP 保持连接消息。如果它们被发送,连接的死亡或其中一台机器的崩溃将被正确地注意到。但是,这意味着如果路由暂时关闭,连接就会中断,有些人会觉得这很烦人。另一方面,如果不发送 TCP keepalive,会话可能会无限期地挂在服务器上,留下“幽灵”用户并消耗服务器资源。
默认值为“yes”(发送 TCP keepalive 消息),如果网络出现故障或客户端主机崩溃,服务器将通知。这避免了无限挂起的会话。
要禁用 TCP keepalive 消息,该值应设置为“no”。
此选项以前称为
KeepAlive。
ClientAliveCountMax
设置客户端活动消息的数量(见下文),可以在没有sshd(8)从客户端接收任何消息的情况下发送。如果在发送客户端活动消息时达到此阈值,sshd 将断开客户端连接,终止会话。需要注意的是,客户端活着的消息的使用与
TCPKeepAlive(以下)(以上)。客户端活动消息通过加密通道发送,因此不会被欺骗。启用的 TCP keepalive 选项TCPKeepAlive是可欺骗的。当客户端或服务器依赖于知道连接何时变为非活动状态时,客户端活动机制很有价值。默认值为 3。如果
ClientAliveInterval(见下文)设置为 15,并ClientAliveCountMax保留默认值,则无响应的 SSH 客户端将在大约 45 秒后断开连接。此选项仅适用于协议版本 2。
ClientAliveInterval
设置一个以秒为单位的超时间隔,如果没有从客户端接收到数据,sshd(8)将通过加密通道发送消息以请求客户端的响应。默认为 0,表示这些消息不会发送到客户端。此选项仅适用于协议版本 2。
小智 15
您可以为客户端或服务器端设置 SSH keepalive:
文件: /etc/ssh/ssh_config
内容:
Host *
ServerAliveInterval XX
ServerAliveCountMax YY
Run Code Online (Sandbox Code Playgroud)
文件: /etc/ssh/sshd_config
内容:
ClientAliveInterval XX
ClientAliveCountMax YY
Run Code Online (Sandbox Code Playgroud)
摘自:http : //www.sysadmit.com/2016/02/linux-y-vmware-ssh-evitar-desconexion.html
Kus*_*nda 15
OpenSSH 不会终止闲置一段时间的 shell 会话。这不是 OpenSSH 所做的。终止空闲的 shell 会话与 OpenSSH 的配置无关。
您显示的设置与连接断开时的超时有关,与远程主机上的 shell 以及用户在那里做什么或不做什么无关。
远程主机的 shell 可能会在闲置一段时间后终止(或可能被某些其他进程杀死),但这与服务器和 SSH 客户端上的 SSH 服务配置无关。
有关的:
TMOUTshell 变量,它可能负责终止空闲的bashshell)。要转储sshd配置,请以 root 身份使用“扩展测试模式”:
sshd -T
Run Code Online (Sandbox Code Playgroud)
这是记录在该sshd(8)手册(看OpenSSH_7.7, LibreSSL 2.7.2在OpenBSD这里):
-T扩展测试模式。检查配置文件的有效性,将有效配置输出到stdout然后退出。或者,可以通过使用一个或多个
-C选项指定连接参数来应用匹配规则。
这个选项是sshd在 2008 年为 OpenSSH 5.1/5.1p1添加的。
小智 6
如果要求在一段时间不活动后关闭 SSH 连接,shell 本身会提供超时变量。
对于bash:
TMOUT:如果设置为大于零的值,则 TMOUT 将被视为内置读取的默认超时。当输入来自终端时,如果 TMOUT 秒后输入未到达,则选择命令终止。在交互式 shell 中,该值被解释为发出主提示后等待输入的秒数。如果输入未到达,Bash 将在等待指定秒数后终止。
通过运行TMOUT=10并等待 10 秒来关闭连接来测试这一点。
对于 tcsh:
可以将 autologout shell 变量设置为在给定的不活动分钟数后注销或锁定 shell。
在 tcsh 中,设置十分钟超时的语法是set autologout=10。这在原来的 csh 中不起作用。
| 归档时间: |
|
| 查看次数: |
135567 次 |
| 最近记录: |