相关疑难解决方法(0)

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

ssh centos openssh

39
推荐指数
4
解决办法
14万
查看次数

SSH 会话中的 Ctrl-C 处理

当我启动一个执行长时间运行的命令的 SSH 会话时,Ctrl+ C(SIGINT) 处理会发生什么?

我可以看到 SSH 会话已关闭,但我不确定谁先获得 SIGINT:是...

  1. 远程长时间运行的命令?也就是说,(a) 远程命令中的信号处理程序被调用并停止远程命令,(b) 产生它的外壳检测到命令停止,并停止 (c) 远程 sshd 检测到外壳停止,所以它关闭了连接

    或者

  2. 本地 ssh 接收到信号,并关闭连接。

我认为 (1) 正在发生,但想确定一下。

我也不确定在这种情况下 shell 处理 SIGINT 会发生什么。例如,如果我...

ssh remote 'while true ; do sleep 1 ; date ; done'
Run Code Online (Sandbox Code Playgroud)

Ctrl+ C,然后远程连接被删除。有没有办法在Ctrl+后保持活动状态的外壳下运行远程命令C?也就是说,在这种情况下,停止循环并允许我继续在远程 shell 上工作?

ssh signals

29
推荐指数
1
解决办法
3万
查看次数

ssh 终止后,ssh 命令在其他系统上意外继续

我正在运行以下命令,并监视另一个系统上的输出文件:

ssh $ip_address 'for n in 1 2 3 4 5; do sleep 10; echo $n >>/tmp/count; done'
Run Code Online (Sandbox Code Playgroud)

如果我使用^C或仅通过终止我登录的终端来终止ssh 命令,我希望远程命令也终止。但是,这不会发生:/tmp/count无论如何都会获取所有数字 1-5,并ps -ejH显示 shell 及其sleep子项继续运行。

这是预期的行为吗,是否在任何地方都有记录?我可以禁用它吗?通过阅读,我希望必须使用 nohup 显式启用这种行为,而不是让它成为默认值。

我查看了 ssh 和 sshd 的手册页,但没有发现任何明显的内容,Google 向我指出了打开此行为的说明,而不是关闭它的说明。

我正在运行 Red Hat Enterprise Linux 6.2,两个系统上都有 root 登录名和 bash shell。

ssh rhel openssh sshd

11
推荐指数
1
解决办法
3673
查看次数

标签 统计

ssh ×3

openssh ×2

centos ×1

rhel ×1

signals ×1

sshd ×1