ger*_*zel 5 domain-name-system spamassassin blacklist perl rbl
问题
有没有办法让 spamassassin 绕过我的 linux 系统的 dns 服务器来查询 DNSBL?
背景信息
当我的服务器收到电子邮件时,它会被 spamassassin 检查。其中一项检查在 DNS 黑名单中查找相关邮件服务器。不幸的是,我的提供商的 DNS 不允许再查询这些 BL。这由 spamassassin 的标题信息URIBL_BLOCKED在我收到的所有电子邮件中显示。我也手动测试了这个:
root@net:# dig 2.0.0.127.multi.uribl.com txt +short
"127.0.0.1 -> Query Refused. See http://uribl.com/refused.shtml for more information [Your DNS IP: 123.123.123.123]"
Run Code Online (Sandbox Code Playgroud)
(123.123.123.123在我的/etc/resolv.confdns 中配置。)
当我直接 手动查询他们的名称服务器之一(请参阅@cc.uribl.com。)而不使用我的提供者的递归时,我得到了一个答案:
root@net:# dig 2.0.0.127.multi.uribl.com txt @cc.uribl.com. +short
permanent testpoint
Run Code Online (Sandbox Code Playgroud)
(请注意,这是应该给出此结果的 BL 的测试查询)
总结
那么,除了在这个系统上安装 dns 递归器之外,有什么方法可以让 spamassassin 不使用系统默认 dns 进行 dnsbl 查询?
UPDATE
好吧,其实安装本地dns-recursor是没有问题的。它轻巧且易于设置,现在我不再遇到 BL 的问题。
Spamassassin ( Mail::SpamAssassin::DnsResolver ) 使用Net::DNS::Resolver perl 模块。
它应该允许您通过环境变量更改 spamassassin 使用的名称服务器RES_NAMESERVERS。