Answers:
AFAIK,“ ssh -q
”或“ LogLevel QUIET
” ~/.ssh/config
是使横幅静音的“传统”方式。因此,您已经对“”有“更好”的折衷LogLevel ERROR
。
如果可以的话,更具体的解决方案是使用ssh客户端的自定义修补版本。
-q
不起作用(在Debian 7上不适合我),则可以使用另一个问题的解决方案:serverfault.com/a/764403/62024
您还可以使用:
Banner none
上
/etc/ssh/sshd_config
sshd_config
”,因此很遗憾,这无法回答问题。
Suppressing ssh banner from OpenSSH client
和找到此答案,尽管它不能完全回答OP问题,但可能会帮助将来的用户。
apt-get update && apt-get install hexedit
cp -p /usr/sbin/sshd /tmp/sshd.backup
cp -p /tmp/sshd.backup /tmp/sshd.new
hexedit /tmp/sshd.new
按TAB键从十六进制切换到ASCII区域。
使用CTRL + S调出搜索提示,并在横幅中搜索要隐藏的文本,例如“ OpenSSH_7.4”。
您应该看到类似以下内容:
0007DA54 61 67 65 6E 74 00 00 00 4F 70 65 6E agent...Open
0007DA60 53 53 48 5F 37 2E 34 70 31 20 52 61 SSH_7.4p1 Ra
0007DA6C 73 70 62 69 61 6E 2D 31 30 2B 64 65 spbian-10+de
0007DA78 62 39 75 32 00 00 00 00 4F 70 65 6E b9u2....Open
使用箭头键突出显示要更新的字符串的开头,然后键入替换项。
请注意不要超出原始横幅的长度范围。如果您只想将字符串中的每个单词设置为“ 00”以使字符串为空,则也可以按TAB键切换回十六进制区域。
您的更改应类似于:
0007DA54 61 67 65 6E 74 00 00 00 48 65 72 65 agent...Here
0007DA60 20 62 65 20 64 72 61 67 6F 6E 73 2E be dragons.
0007DA6C 20 54 75 72 6E 20 42 61 63 6B 00 00 Turn Back..
0007DA78 00 00 00 00 00 00 00 00 4F 70 65 6E ........Open
使用CTRL + x和Y保存更改。
strings /tmp/sshd.new | grep Rasp
rm /usr/sbin/sshd
cp -p /tmp/sshd.new /usr/sbin/sshd
systemctl restart ssh.service
ssh -vv user@ip
注意!!
仅当您更新OpenSSH时,此更改才是临时的,二进制文件将被替换。
sshd
,这似乎很可能是因为它确实没有指定sshd_config
访问权限。他们正在寻找基于客户端的解决方案。
LogLevel ERROR
只会抑制OpenSSH的较新版本中的旗帜。在旧版本中,LogLevel QUIET
还是ssh -q
必需的。