Я использую Postfix + amavis + SpamAssassin. Сообщения проходят нормально, и они получают X-Spam-Score
как я и ожидал, вместе с X-Spam-Status
values, подразумевая, что SA что-то с ними делает. К сожалению, похоже, что amavis не хочет помечать их как спам, так как все сообщения проходят через X-Spam-Flag: NO
.
Пример сообщения, которое я сейчас просматриваю, имеет следующие заголовки:
X-Virus-Scanned: Debian amavisd-new at magni
X-Spam-Flag: NO
X-Spam-Score: 11.733
X-Spam-Level: ***********
X-Spam-Status: No, score=11.733 tests=[BAYES_99=3.5, HTML_MESSAGE=0.001,
MIME_HTML_ONLY=1.457, RCVD_IN_BL_SPAMCOP_NET=1.96, RCVD_IN_PBL=0.905,
RCVD_IN_SORBS_DUL=0.877, RCVD_IN_XBL=3.033] autolearn=no
Вот мой файл amavisd.conf:
$mydomain = "";
$MYHOME = '/var/amavisd';
$TEMPBASE = "$MYHOME/tmp";
$inet_socket_port = 10024;
$forward_method = 'smtp:127.0.0.1:10025';
$notify_method = $forward_method;
# @local_domains_acl = qw( "." ); # you may want to use qw() to check all in and out
$sa_tag_level_deflt = -999; # add spam info headers if at, or above that level
$sa_tag2_level_deflt = 5.0; # add 'spam detected' headers at that level
$sa_kill_level_deflt = 999; # triggers spam evasive actions
$sa_debug = 1;
$final_virus_destiny = D_DISCARD; # (defaults to D_BOUNCE)
$final_banned_destiny = D_REJECT; # (defaults to D_BOUNCE)
$final_spam_destiny = D_PASS; # (defaults to D_REJECT but we're tagging and passing)
$spam_admin = "postmaster\@$mydomain";
$spam_lovers{lc("postmaster\@$mydomain")} = 1;
$virus_admin = "postmaster\@$mydomain";
$QUARANTINEDIR = undef;
$virus_quarantine_to = undef;
#$spam_quarantine_to = 'spam-quarantine';
$remove_existing_spam_headers = 0;
$sa_local_tests_only = 0; # (default: false)
$SYSLOG_LEVEL = 'mail.err';
$DO_SYSLOG = 1;
$log_level = 2;
$enable_dkim_verification = 0;
# @bypass_spam_checks_maps = (1);
@lookup_sql_dsn = ( 'DBI:mysql:database=postfix;host=127.0.0.1;port=3306', '', '' );
$sql_select_policy = 'SELECT "Y" as local FROM aliases WHERE source IN (%k) UNION SELECT "Y" as local FROM users WHERE address IN (%k)';
1;
Любые идеи?
ОБНОВЛЕНИЕ: сообщение, которое я держал:
X-Spam-Flag: NO
X-Spam-Score: 14.085
X-Spam-Level: **************
X-Spam-Status: No, score=14.085 tests=[BAYES_99=3.5, NO_DNS_FOR_FROM=1.496,
RAZOR2_CF_RANGE_51_100=0.5, RAZOR2_CF_RANGE_E8_51_100=1.5,
RAZOR2_CHECK=0.5, RCVD_IN_XBL=3.033, RDNS_NONE=0.1,
URIBL_BLACK=1.955,
URIBL_JP_SURBL=1.501] autolearn=no
в почтовых журналах есть такая запись:
mail.log.1:Sep 5 21:43:39 magni amavis[25486]: (25486-10) Passed CLEAN, [78.189.26.137] [88.206.193.68] <buk@78.189-6793.ttnet.net.tr> -> <gms8994>, Message-ID: <9168695667.JH8FPJK6165793@hsnmmapfch.eiygiquc.info>, mail_id: 4Moi5p2dOV-I, Hits: 14.085, size: 891, queued_as: AFF8C2C367, 1156 ms
Как было предложено Дэйв Драгер, Я попробую остановить spamd и посмотрю, что произойдет.
ОБНОВЛЕНИЕ 2: остановлен spamassassin, оставив работающим amavis, только что получил это сообщение:
X-Spam-Flag: NO
X-Spam-Score: 17.712
X-Spam-Level: *****************
X-Spam-Status: No, score=17.712 tests=[BAYES_99=3.5, FH_FROMEML_NOTLD=2.696,
RAZOR2_CF_RANGE_51_100=0.5, RAZOR2_CF_RANGE_E8_51_100=1.5,
RAZOR2_CHECK=0.5, RCVD_ILLEGAL_IP=1.908, RCVD_IN_SORBS_WEB=0.619,
RCVD_IN_XBL=3.033, URIBL_BLACK=1.955, URIBL_JP_SURBL=1.501]
autolearn=failed
с этим в журналах:
mail.log:Sep 9 08:49:11 magni amavis[13604]: (13604-10) Passed CLEAN, [77.70.121.78] [77.70.121.78] <trfq@pc-2bb82028ef37> -> <gms8994@dp.cx>, Message-ID: <1517253501.OMHO2ISO759593@xxmodf.awlxrunvwnzdz.ru>, mail_id: Lg-rCSg9x0rr, Hits: 17.712, size: 844, queued_as: 8269D2BF6B, 2312 ms
per @cite, я посмотрел /etc/amavis/conf.d/50-user (на самом деле я использую debian). Он был пуст. Я переместил конфигурацию из /etc/amavis/amavisd.conf в 50-пользовательский, перезапустил, и сообщения теперь помечены X-Spam-Flag: YES
. Указывает на цитирование.
Чтобы решить эту проблему, вам необходимо предоставить более подробный вывод журнала: Остановите amavisd и перезапустите его в режиме отладки (amavisd debug
, в Debian / Ubuntu это, вероятно, amavisd-new debug
, но поскольку вы упомянули, что настроили amavisd с amavisd.conf
и нет /etc/amavis/conf.d/50-user
, Я думаю, вы не используете Debian / Ubuntu). Пока вы это делаете, вы, вероятно, захотите отключить прослушиватели SMTP-порта 25 Postfix на внешних интерфейсах ваших почтовых серверов (вы всегда можете отправлять почту локально), иначе вы, вероятно, получите слишком много журналов, поэтому найдите их в /etc/postfix/master.cf
и раскомментируйте соответствующие записи (не забудьте postfix reload
впоследствии).
Кроме того, чтобы не загромождать экран, удалите $sa_debug
настройка из вашего amavisd.conf
временно - но включите его повторно, если вы не можете выяснить причину своей проблемы (а также попытайтесь выяснить, почему не удается автообучение).
Еще два комментария к вашей конфигурации, которые на самом деле не связаны с вашей проблемой:
$sa_kill_level_deflt
к $sa_tag2_level_deflt
- ваша окончательная судьба спама D_PASS
в любом случае.$sa_tag_level_deflt
к undef
.Комментарий, адресованный Дейву: amavisd-new по умолчанию не использует spamd, поэтому перезапуск spamd бессмысленен. Более того, вы не можете изменить способ обработки amavisd-new сообщения данной категории контента (здесь: CC_SPAM) из конфигурации Spamassassin.
Проверьте журналы Amavis. Я обнаружил, что значения, которые Amavis отправляет в Spamassassin, могут не работать, если Spamassassin уже запущен (с использованием другого файла конфигурации с другим набором переменных). Я думаю, вы обнаружите, что Spamassassin работает, и Amavis использует его вместо того, чтобы создавать для него свой собственный процесс. Попробуйте также убить Spamassassin и посмотреть, начнет ли Amavis использовать упомянутые выше переменные (поскольку он будет порождать свой собственный процесс).