我想知道为什么我使用 SSH 连接到服务器,它会对远程服务器的 IP 进行反向 DNS 查找。
我发现评论说这是出于安全原因,很多教程展示了如何禁用它,但没有解释。
谢谢
答案1
可以配置 SSHD 来阻止正向 (A) 和反向 (PTR) 记录不互相映射的客户端的访问。
当连接请求到达时,守护进程会检查 IP 的反向记录:192.168.1.1 = PTR my.domain.com
然后它可以检查主机的正向查找记录:my.domain.com = A 192.168.1.1
如果 my.domain.com 无法解析为 192.168.1.1,那么它可以阻止该连接。
这是因为设置您自己的反向区域并将 PTR 记录映射到您想要的任何主机名很容易,但要将主机名映射到 IP,您需要访问该区域的权威服务器。即黑客必须做的另一件事才能获得访问权限。
答案2
不确定 SSH 为什么要这样做,但是如果你配置一个盒子只允许来自 host.xyz.com 的连接,任何人都可以配置一个盒子并将其命名为 host.xyz.com,但如果你能为 host.xyz.com 提供一个指向 1.2.3.4 的正向 DNS 条目和指向 host.xyz.com 的 4.3.2.1.in-addr.arpa 的 PTR,则更能证明您确实是 host.xyz.com。
答案3
设置 UseDNS=no 只会禁用反向 DNS 与正向 DNS 的验证。它不会禁用查询,这可以保证无用,并且在各种混合 DNS 或 DHCP 环境中需要 DNS 超时。很多人对此感到困惑。
禁用 DNS 查找的唯一方法是使用“-u0”选项运行 sshd,幸运的是,它通常可以嵌入到 /etc/sysconfig/jenkins 中,使用“OPTIONS=-u9”行。这种情况已经持续了 20 多年。
答案4
我不能 100% 确定这个问题的答案,但我认为答案可能是:
- 在标题栏中显示正确的标题
- 查看此主机是否安装了私钥。