Postfix - Rspamd + amavis
В настоящее время у меня есть Postfix с Amavis, Spamassassin, Clamav и всеми прибамбасами.
Я хотел бы добавить RSpamd в конфигурацию, я не хочу заменять Amavis, просто продолжайте их показывать рядом, отмечая спам-сообщения в теме и добавляя заголовки, чтобы увидеть, что лучше при обнаружении спама.
Проблема в том, что Amavis добавляется как smtpd_proxy_filter с обратным путем. RSpamd добавляется как milter. Теперь сам по себе запуск RSpamd - это нормально, но когда я добавляю Amavis, поскольку почта перенаправляется на прокси-сервер, добавляется заголовок Received, поэтому RSpamd считает, что все письма отправлены с localhost, пропуская некоторые проверки и не добавляя заголовки.
Я думал о некоторых решениях, но не знаю, если и как они могут быть реализованы:
- Запустите milter перед прокси, не работает, добавив
-o smtpd_milters
к master.cf - Скажите amavis не добавлять заголовок Received
- Скажите RSpamd пропустить полученные заголовки localhost и использовать тот, что после этого
Есть ли что-нибудь из этого достижимо?
Конфиг файлы здесь:
Мой main.cf имеет эти:
smtpd_milters = inet:127.0.0.1:12345
inet:localhost:11332
non_smtpd_milters = inet:127.0.0.1:12345
milter_default_action = accept
milter_content_timeout = 30s
Порт 12345 для DKIM и 11332 для RSpamd
Спасибо
2 ответа
Вы не должны использовать smtpd_proxy_filter
а также smtpd_milter
все вместе. Чтобы запустить Amavis и Rspamd бок о бок, рассмотрите возможность интеграции Amavis с amavisd-milter. smtpd_milter
Можно называть разные мольтеры один за другим.
Был в похожей ситуации несколько лет назад. Вы можете удалить ненужное Received:
заголовок, добавив через master.cf -o header_checks=pcre:/etc/postfix/remove_received.pcre
на ваш smtpd, который получает почту обратно от Amavis (возможно, экземпляр 127.0.0.1:25, но это зависит от того, куда ваш Amavis перенаправляет отфильтрованную почту).
ПКРЭ в remove_received.pcre
выглядит так:
/^Received: from server.my.domain \(\[127.0.0.1\]\).*/ IGNORE
Обратите внимание на обратную косую черту скобок, которые в противном случае интерпретировались бы как операторы группировки. Вам также может понадобиться добавить localhost в качестве дополнительной строки в зависимости от того, как ваш Amavis подключается и представляет себя.