如何阻止流向特定域的所有流量

如何阻止流向特定域的所有流量

我最近为我的 VPS 添加了一个 IP 地址。问题是,之前的所有者已经放弃了该域名,并将其名称服务器设置在此 IP 上。尽管我的防火墙 (CSF) 拒绝了对该域名的任何访问,但我的问题是,由于该域名每次受到访问者(例如 google 和 Bing 等搜索引擎爬虫)的点击,我服务器上的日志文件中都会出现大量错误消息。

下面是从路径中负载很重的日志中截取的样例行/var/log/消息

client 74.125.181.85#34411: query (cache) 'ns1.the_troublesome_domain.com/A/IN' denied

我没有成功说服所有者更改其名称服务器。因此,我决定阻止所有前往此域的流量,以停止日志文件(但我不知道这是否是正确的决定)。我已经尝试将以下规则添加到 Iptables

iptables -I INPUT -s the_troublesome_domain.com -j DROP

只会收到警告

iptables v1.4.7: host/network `the_troublesome_domain.com' not found

请让我知道你对这个问题的想法。

提前致谢。

答案1

-s旨在指定 IP 地址,您尝试配置的过滤器将丢弃所有具有该 IP 源的数据包。如果您提供 DNS 实体,则在添加规则时它将被解析为 IP 地址。由于无法解析该 DNS 记录,因此规则添加失败。

要使此数据包过滤器工作,您需要根据字节偏移量匹配所请求的记录(即深度数据包检查),无论如何,这种方法都是错误的。您将使内核的数据包过滤器清理数据包,以便它可以丢弃名称服务器已拒绝的流量。

如果您看到查询负载给软件带来任何压力,我会感到非常惊讶;很可能它只是弄乱了您的日志文件。如果这是一个问题,您最好的做法就是简单地请求一个不同的 IP 地址。您没有办法让流量消失。

相关内容