当我通过 SSH 登录到我的家用 Linux 计算机时,我每分钟都会收到几次以下调试输出:
debug2: channel 0: request window-change confirm 0
当我在 nano 中编辑文件时,调试消息显示在文本上方。要删除调试消息,我必须关闭 nano,执行clear
,然后重新打开该文件。无论我使用 Secure Shell(Google Chrome 扩展)、PuTTY 还是 Terminator(来自本地计算机),我都会得到这个结果,尽管前两者的情况要差得多。
有什么办法可以抑制这些消息吗?执行会sshd -q
执行吗,还是在编译过程中指定调试输出级别?
答案1
就我而言,我正在使用
ssh -vv
查看详细的调试信息,这就是服务器显示的原因
debug2:通道0:请求窗口更改确认0
在终端中。我退出 SSH 会话,然后再次连接,没有详细 ( -vv
),问题就消失了。
答案2
sshd
是守护进程。您希望-q
在客户端 ( ssh
) 中使用该标志。
连接到家用计算机时,请在ssh
命令中包含 -q 标志(即ssh -q user@host
)。或者,如果这不起作用,您可以尝试通过连接到您的家庭计算机(例如ssh user@host 2> /dev/null
.
答案3
SSH 支持会话增加/减少详细程度!以下是减少冗长程度的方法:
- 在命令提示符下,按 Enter/Return。仅在按 Enter 后才有效
- 输入波形
~
符。请注意,它不会出现在您的终端中 - 这是设计使然。 - 输入大写字母
V
(表示“更详细” - 小写字母v
使输出更详细)
您现在将看到一些输出,指示您当前的调试级别。继续执行步骤 1 - 3,直到调试级别降低到您喜欢的程度。
完全归功于https://twitter.com/freebsdfrau/status/1012367229139054594教我这个。
答案4
LogLevel INFO
在你的服务器中设置/etc/ssh/sshd_config
。它应该隐藏大部分消息。还要在该文件中搜索此选项的其他出现情况。