我最近升级到 Ubuntu 14.04.1 LTS(可信)并按照https://help.ubuntu.com/14.04/serverguide/mail-filtering.html 中的说明进行操作,并且发送和接收邮件都很好。
虽然我确实X-Virus-Scanned在我的消息中看到了标题,这表明确实正在处理邮件,但我没有看到任何X-Spam-Level或X-Spam-Score标题被添加到消息中。这使得下游procmailrc和客户端过滤......更加困难。
虽然$final_spam_destiny = D_DISCARD在 /etc/amavis/conf.d/20-debian_defaults 中确实大大减少了我的收件箱中的垃圾邮件,但我在调整之前担心误报并且不知道会发生什么,所以暂时将其设置D_PASS为存在。这就暴露了问题。
我不确定从哪里开始诊断问题(否则我会发布一个可疑的配置文件)。
/etc/amavis/conf.d/15-content_filter_mode取消了注释以启用病毒和垃圾邮件检查的行,并且病毒检查似乎根据标题工作。
垃圾邮件刺客当然似乎也开始得很好。
SpamAssassin 调试工具:信息
SA 信息:缩放:能够使用 360/360 'body_0' 编译规则 (100%)
SpamAssassin 加载的插件:AskDNS、AutoLearnThreshold、Bayes、BodyEval、Check、DKIM、DNSEval、FreeMail、HTMLEval、HTTPSMismatch、Hashcash , HeaderEval, ImageInfo, MIMEEval, MIMEHeader, Pyzor, Razor2, RelayEval, ReplaceTags, Rule2XSBody, SPF, SpamCop, URIDNSBL, URIDetail, URIEval, VBounce, WLBLEval, WhiteListSubject
SpamControl: init_pre_fork on SpamAssassin
我还在$log_level = 2;/etc/amavis/conf.d/50-user 中进行了设置,并且在日志中没有看到任何明显的错误。
问:接下来尝试什么有什么建议吗?
更新(看来我已经有了正确的设置):
/etc/amavis/conf.d$ grep sa_tag_level_deflt *
20-debian_defaults:# $sa_tag_level_deflt = 2.0; # add spam info headers if at, or above that level
20-debian_defaults:$sa_tag_level_deflt = -999; # add spam info headers if at, or above that level
Run Code Online (Sandbox Code Playgroud)
所以,问题解决了,这是一个事情的集合,我将在这里为其他发现自己走上同样道路的人详细介绍。
首先,spamassassin在使用 ipv6 运行时似乎(在某些环境中)存在问题。不知道为什么。编辑/etc/default/spamassassin,或者/etc/init.d/spamassassin如果您没有,则添加--ipv4到OPTIONS列表中。然后用于service spamassassin restart退回服务,并service spamassassin status检查 spamd 是否正在运行。您的配置可能不需要此步骤。
接下来,确保您有一个/etc/procmailrc文件,其权限是所有人可读的,并且它包含如下内容:
DROPPRIVS=yes
:0fw
| /usr/bin/spamc
:0
* ^X-Spam-Status: Yes
$HOME/mail/possible-spam
Run Code Online (Sandbox Code Playgroud)
接下来,如果您正在运行webmin,您需要检查 procmail 服务,并确保它不会向您发出警告,表明postfix未配置为使用procmail。在 中/etc/postfix/main.cf,您需要注释掉默认mailbox_command运行的 Deliver 并将其替换为 procmail。service postfix restart进行编辑后您需要运行。
#mailbox_command = /usr/lib/dovecot/deliver -c /etc/dovecot/dovecot.conf -m "${EXTENSION}"
mailbox_command = procmail -a "$EXTENSION"
Run Code Online (Sandbox Code Playgroud)
如果您手动将垃圾邮件移动到名为 的邮件文件夹中spam,那么您需要像这样训练垃圾邮件杀手:
sa-learn --progress --dbpath ~/.spamassassin --spam --mbox ~/mail/spam
Run Code Online (Sandbox Code Playgroud)
请注意,可以进行一些进一步的调整,并且需要service spam assassin restart稍后进行调整,但这会有所帮助。
一是,如果您收到大量垃圾邮件,请将 中的值/etc/spamassassin/local.cf设置为稍低的值:required_score
# Set the threshold at which a message is considered spam (default: 5.0)
#
required_score 4.0
Run Code Online (Sandbox Code Playgroud)
在同一文件中/etc/spamassassin/local.cf,还可以通过在末尾添加此内容来按垃圾邮件严重的国家/地区进行过滤。根据一些电子邮件分析,俄罗斯和中国是历史上两个非常重要的贡献者。
# Filter Russia
header RELAYCOUNTRY_RU X-Relay-Countries =~ /RU/
describe RELAYCOUNTRY_RU Relayed through Russia
score RELAYCOUNTRY_RU 8.0
# Filter China
header RELAYCOUNTRY_CN X-Relay-Countries =~ /CN/
describe RELAYCOUNTRY_CN Relayed through China
score RELAYCOUNTRY_CN 8.0
report_header 1
fold_headers 1
detailed_phrase_score 1
Run Code Online (Sandbox Code Playgroud)
上面的内容不仅解决了丢失的标头,我怀疑这是 procmail 没有被调用。
| 归档时间: |
|
| 查看次数: |
6419 次 |
| 最近记录: |