Image

知识库 → 安装和配置 SpamAssasin 反垃圾邮件过滤器并将邮件分组到 Postfix Ubuntu 服务的垃圾邮件文件夹中

[虚拟服务器] [VPS/VDS 上的应用]
出版日期: 08.06.2023

在 Ubuntu\Debian 邮件服务器上为 Postfix 服务设置 spamassassin 反垃圾邮件服务,并将电子邮件移动到垃圾邮件文件夹。 此配置允许您通过训练过滤器和自动移动邮件来轻松处理邮件。

本指南假定您已经配置了邮件服务器本身并且需要配置垃圾邮件过滤器。 可以在此处找到有关设置邮件服务器的更多信息:

您还可以订购带有预配置操作系统的 VPS,并以 VPS 服务器的价格获得现成的公司邮件服务器。

1. 安装服务 spamassassin

apt-get install spamassassin spamc
adduser spamd --disabled-login

2. 让我们设置服务

vi /etc/default/spamassassin

查找行:

OPTIONS="--create-prefs --max-children 5 --helper-home-dir"

并替换为:

OPTIONS="--create-prefs --max-children 5 --username spamd --helper-home-dir /home/spamd/ -s /home/spamd/spamd.log"

在文件的最后,包括 cron:

CRON=1

让我们保存文件。 (:wq)

3. 过滤器设置:

mv /etc/spamassassin/local.cf /etc/spamassassin/local.cf.bk
vi /etc/spamassassin/local.cf

rewrite_header Subject ***** SPAM SCORE ***** report_safe 0 required_score 5.0 use_bayes 1 use_bayes_rules 1 bayes_auto_learn 1 skip_rbl_checks 0 use_razor2 0 use_pyzor 0 ifplugin Mail::SpamAssassin::Plugin::Shortcircuit endif

让我们保存文件。

4. 服务设置 Postfix

找到 smtp 行并添加以下配置:

vi /etc/postfix/master.cf

smtp inet n - y - - smtpd -o content_filter=spamassassin spamassassin unix - n n - - pipe user=spamd argv=/usr/bin/spamc -f -e /usr/sbin/sendmail -oi -f ${sender} ${recipient}

保存文件并重启服务

systemctl restart postfix.service
systemctl enable spamassassin.service
systemctl start spamassassin.service

让我们通过向邮箱发送一封包含此文本的信件来检查服务的运行情况:

XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X

5. 设置将垃圾邮件移动到垃圾邮件文件夹。

安装和配置 Sieve 服务

apt-get install dovecot-sieve dovecot-managesieved
vi /etc/dovecot/conf.d/90-sieve.conf

sieve = /etc/dovecot/dovecot.sieve

让我们保存文件。

让我们创建一个文件:

vi /etc/dovecot/dovecot.sieve

require "fileinto"; if header :contains "SPAM" "YES" { fileinto "Junk"; } if header :contains "X-Spam-Flag" "YES" { fileinto "Junk"; }

让我们保存文件。

将配置添加到文件末尾:

vi /etc/dovecot/dovecot.conf

service stats { unix_listener stats-reader { user = vmail group = vmail mode = 0660 }

unix_listener stats-writer {

user = vmail group = vmail mode = 0660 } }

让我们保存文件。

让我们将配置添加到文件中,使该行看起来像这样:

vi /etc/dovecot/conf.d/15-lda.conf

protocol lda { mail_plugins = $mail_plugins sieve }

让我们将配置添加到文件中,使该行看起来像这样:

vi /etc/dovecot/conf.d/10-director.conf

protocol lmtp { mail_plugins = $mail_plugins sieve }

让我们重新启动服务:

systemctl start spamassassin.service 
systemctl restart postfix.service

现在,所有标记为垃圾邮件的电子邮件都会出现在垃圾邮件文件夹中。





暂时没有评论