SSH 客户端选项可以抑制服务器横幅吗?

SSH 客户端选项可以抑制服务器横幅吗?

我读了停止 ssh 登录从客户端打印 mod?,但我的情况有点不同:

  • 我想保留 Banner /path/to/sometxt 服务器端
  • 我想在特定条件下传递一个选项,以便不打印横幅(例如ssh -o "PrintBanner=No" someserver)。

任何想法?

答案1

你不能。(至少不是使用普通的 OpenSSH)

服务器横幅在身份验证之前由服务器发送。它的目的通常是包含法律免责声明或类似“如果您未获得授权,请立即断开连接”类型的消息,或者您不希望远程用户能够抑制/忽略的其他重要内容。

如果您真的想摆脱这个问题,您将需要破解并编译您自己的定制版本的 SSH 客户端。

答案2

有一个LogLevel选项:

它会使横幅静音,但您仍然会收到错误:

$ ssh -o LogLevel=error localhost 
Permission denied (publickey).

答案3

我已经测试过了,我认为你可以-q在 ssh 命令中使用。参数 -q 意味着静音模式. 它会导致大多数警告和诊断消息被抑制,例如

ssh -t '$node2' 'sudo cat xxx' |grep xxxxx" 2>/dev/null >/root/node2

或者

ssh -t -q '$node2' 'sudo cat xxxx' |grep xxx" >/root/node2

希望这可以帮助别人

答案4

好像你正在寻找-q

安静模式。导致大多数警告和诊断消息被抑制。

ssh user@host
*------------------------------------------------------------------------------*
| banner: blah                                                                 |
*------------------------------------------------------------------------------*
Last login: Mon Oct  2 16:40:01 2017 from ipAddress
$

-q

ssh -q user@host
Last login: Mon Oct  2 16:40:30 2017 from ipAddress
$

安静又舒适。横幅仍处于配置状态,但您不会受到其干扰。

另外要注意的是:不要使用横幅。最好不要确认或否认任何事情。这对你不担心的人没有帮助,而你担心的人会嘲笑他们;-)

相关内容