我使用的服务器是Ubuntu 10.10。为了确保安全,我想编辑服务器发送给客户端的横幅。
如果我通过端口 22 远程登录到我的主机,它会告诉我正在运行的 SSH 的确切版本 (SSH-2.0-OpenSSH_5.3p1 Debian-3ubuntu4)。MySQL 和 Cyrus 的情况相同。
有什么建议吗?至少对于 SSH 来说?
谢谢
答案1
几乎普遍情况下,识别横幅是编译代码的一部分,没有配置选项来更改或抑制它们。您必须重新编译这些软件。
答案2
虽然隐藏 SSH 守护进程的版本号非常困难,但你可以轻松隐藏 Linux 版本(Debian-3ubuntu4)
将以下行添加到/etc/ssh/sshd_config
DebianBanner no
并重新启动 SSH 守护程序:/etc/init.d/ssh restart
或service ssh restart
答案3
隐藏这些内容并不能保护您的服务器。还有许多其他方法可以识别您的系统正在运行的内容。特别是对于 SSH,版本公告是协议的一部分,并且是必需的。
答案4
我很确定你实际上无法更改版本公告。
保护 sshd 的最佳方法是:
- 更改默认端口号。
- 禁止 root 登录。
- 强制执行协议 2(假设它不是默认完成的)。
- 将允许 SSH 访问的服务器列入白名单。
前三项可以通过修改 /etc/sshd_config 来完成
第四取决于您使用的防火墙软件。