所以这里的问题是:
example.com
并*.example.com
指向服务器的 IP 地址sshd_config 的手册页包含以下内容ListenAddress
:
Specifies the local addresses sshd(8) should listen on.
The following forms may be used:
ListenAddress host|IPv4_addr|IPv6_addr
ListenAddress host|IPv4_addr:port
ListenAddress [host|IPv6_addr]:port
Run Code Online (Sandbox Code Playgroud)
这似乎表明 sshd 有能力将自己限制为特定的主机名。但是我已经尝试过ListenAddress secret.example.com:22
,但是在重新启动 sshd 之后,似乎没有根据所使用的主机名添加任何限制。
man sshd_config
似乎没有在这种情况下显示任何其他选项。
是不是我遗漏了什么,或者 sshd 根本没有这种能力?
小智 6
没有“DNS”连接之类的东西。一旦客户端获得 IP,它就只能建立 TCP/IP 连接。服务器只看到 IP,所以它不知道客户端用来查找服务器的名称。
我们有网站虚拟主机的原因是因为客户端传输请求特定主机的标头。事实上,虚拟主机在 SSL(TLS) 被修改为在初始连接期间允许“服务器名称指示”之前不能使用 SSL。
为了让“虚拟主机”与 SSH 一起工作,客户端需要一种在连接时传输主机名的方法。但即使 SSH 支持这样的功能,您也通过要求特定的主机名来增加零安全性。原因是 sshd 必须解密攻击者的数据包才能运行过滤器。只要您禁用 SSH 密码,解密攻击者的数据包以与您的 SSH 密钥进行比较就没有什么区别。
如果您不想被扫描,请移动 SSH 端口和/或安装 fail2ban。如果你真的很偏执,你可以安装一个端口敲门器,从临时扫描器“隐藏”你的开放端口和/或使用 iptables 将 IP 地址列入白名单。
归档时间: |
|
查看次数: |
8295 次 |
最近记录: |