SSH客户端选项可禁止显示服务器横幅?


15

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

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

任何想法?

Answers:


-1

你不能 (至少没有库存的OpenSSH)

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

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


15
这是旧信息,在通用发行版中不再适用。下面这些问题的答案为使用-q-o LogLevel=error工作的高度现在:-)
勤杂工

28

有一个LogLevel选项:

它使标语静音,但您仍然可以收到错误:

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

不适用于OpenSSH 6.9客户端-也许版本信息会有用吗?
Zayne S Halsall

适用于OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.3,OpenSSL 1.0.1f 2014
Kulbir Saini

6

我已经测试过了,我想你可以-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

希望这可以帮助别人


-q从Fedora 22客户端到Centos 6和Suse 2.6(客户端为OpenSSH 6.9)不起作用。如果它引用了特定的ssh版本,此答案可能会被否决?
Zayne S Halsall 2016年

6

使用以下命令更新〜/ .ssh / config以禁止显示横幅

Host *
    LogLevel error

我相信“ Host *”行是多余的或不正确的。无论如何,没有它我将获得理想的效果。值得一提的是,OP希望在某些编程条件下获得效果,在这种情况下,上面列出的命令行选项是更好的解决方案。
UncaAlby

4

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

例如:

Match Address 192.0.2.0/24
        Banner none

但这必须根据特定条件在服务器端完成。您不能从客户端执行此操作。


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
$

好安静。标语仍处于配置状态,但您不会被它打扰。

另外请注意:请勿使用横幅。最好不要确认或拒绝任何事情。它不会帮助您与您不担心的人在一起,而您所担心的人会在工作中笑出来;-)


0

对我而言,-o LogLevel=error它比更好-q,因为后者抑制了重要的错误信息(然后您只能通过退出代码获得该信息)。

比较一下(无选项): [root@myserver804 myuser1]# ssh targetserver1; echo "exit code=$?" @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host key has just been changed. The fingerprint for the RSA key sent by the remote host is SHA256:hvtR8Dl09aUeCeG2cT5EA8b+nbCOoV6h1DUON2vE63w. Please contact your system administrator. Add correct host key in /root/.ssh/known_hosts to get rid of this message. Offending RSA key in /root/.ssh/known_hosts:1735 RSA host key for targetserver1 has changed and you have requested strict checking. Host key verification failed. exit code=255

与此(安静) [root@myserver804 myuser1]# ssh -q targetserver1; echo "exit code=$?" exit code=255

与此(仅日志错误) [root@myserver804 myuser1]# ssh -o LogLevel=error targetserver1; echo "exit code=$?" @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host key has just been changed. The fingerprint for the RSA key sent by the remote host is SHA256:hvtR8Dl09aUeCeG2cT5EA8b+nbCOoV6h1DUON2vE63w. Please contact your system administrator. Add correct host key in /root/.ssh/known_hosts to get rid of this message. Offending RSA key in /root/.ssh/known_hosts:1735 RSA host key for targetserver1 has changed and you have requested strict checking. Host key verification failed. exit code=255

因此,结论是-如果您仍然对相关错误感兴趣,请使用 -o LogLevel=error


0

无论-q-oLogLevel=error作品还是作品。

起作用的是抑制STDERR

ssh hostname command 2>/dev/null

但是,不利的一面STDERR抑制不仅应用于SSH程序,而且应用于整个命令。


-2

只需调用一个shell,它应该隐藏标题。

ssh you@someplace.com /bin/bash

但是请注意,至少对我来说,我的$ PS1没有设置,所以看起来好像挂了。我必须输入几个命令来验证它是否正常工作。


1
这不会抑制Banner选项中显示的横幅/etc/sshd_config(至少在FreeBSD / OpenSSH_5.8p2上没有)
voretaq7 2013年

啊,我在这个问题上看到了杂念。那
将使

-2

对我来说,-q可以解决问题,但我仍然可以将输出保存到文件中。

ssh -q root @ server28“ ls -alF / dr_mksysb | egrep -v \” total | lost + found | ./ | ../ \“ | awk'{print \ $ NF}'| sed's /.\$ // g'“> $ {basedir} /28.list


太好了,它为您工作。但是,这不能回答问题,最多只能是评论。
杰拉尔德·施耐德

那就是问题,它的确回答了这个问题,我摆脱了motd(横幅)的困扰,我遇到的问题与上述问题完全相同
Zatarra

与问题有关的答案的唯一部分是-q参数。其余的完全无关,仅对您有所帮助。参数已经给出答案,可以随意给予好评,如果它帮助你,但这个“答案”将只能收到downvotes
杰拉尔德·施耐德
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.