SSH 客户端选项来抑制服务器横幅?

22 ssh banner

我已经阅读了从客户端打印 motd 中停止 ssh 登录?,但是我的情况有点不同:

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

任何的想法?

小智 48

有一个LogLevel选项:

它使横幅静音,但您仍然可以收到错误消息:

$ ssh -o LogLevel=error localhost 
Permission denied (publickey).
Run Code Online (Sandbox Code Playgroud)


小智 9

使用以下更新 ~/.ssh/config 以抑制横幅

Host *
    LogLevel error
Run Code Online (Sandbox Code Playgroud)


小智 8

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

ssh -t '$node2' 'sudo cat xxx' |grep xxxxx" 2>/dev/null >/root/node2
Run Code Online (Sandbox Code Playgroud)

或者

ssh -t -q '$node2' 'sudo cat xxxx' |grep xxx" >/root/node2
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助其他人


tod*_*dsm 7

似乎您正在寻找-q

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

ssh user@host
*------------------------------------------------------------------------------*
| banner: blah                                                                 |
*------------------------------------------------------------------------------*
Last login: Mon Oct  2 16:40:01 2017 from ipAddress
$
Run Code Online (Sandbox Code Playgroud)

-q

ssh -q user@host
Last login: Mon Oct  2 16:40:30 2017 from ipAddress
$
Run Code Online (Sandbox Code Playgroud)

很好很安静。横幅仍然配置,但您不会被它打扰。

另一个注意事项:不要使用横幅。最好不要确认或否认任何事情。它对你不担心的人没有帮助,你担心的人会在他们工作时笑;-)


Mic*_*ton 6

您应该能够Banner在块内设置不同的(或无)Match

例如:

Match Address 192.0.2.0/24
        Banner none
Run Code Online (Sandbox Code Playgroud)

但这必须根据具体情况在服务器端完成。您无法从客户端执行此操作。


vor*_*aq7 -5

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

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

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

  • 这是旧信息,在常见发行版上不再适用。下面使用“-q”或“-o LogLevel=error”的答案现在效果很好:-) (29认同)