Назад | Перейти на главную страницу

Как научить spam и ham для spamassassin, работающего в докер-контейнере?

Я запускаю SpamAssassin как milter в контейнере Docker отдельно от Postfix и Dovecot. Postfix и SA прекрасно работают вместе, Postfix подключается к spamass-milterSA делает свое дело, почта помечается соответствующим образом, все в порядке.

Теперь я хотел бы иметь возможность обучать спаму SA из радиолюбителей, когда я перемещаю сообщения туда и обратно между входящими и нежелательными, более или менее как в это руководство. Я подтвердил, что сито работает благодаря простому фильтру, который перемещает спам в папку нежелательной почты, если он отмечен SA, и, похоже, это работает. Dovecot также работает в собственном контейнере Docker.

Это руководство подразумевает, что spamc может подключаться к экземпляру SA через TCP, что было бы здорово, если бы это не означало, что мне нужно иметь spamc доступны внутри контейнера, в котором запущен Dovecot, что означает необходимость установки SA внутри этого самого контейнера, что, в свою очередь, означает множество ненужных дублирований.

Есть ли способ обойти это?

РЕДАКТИРОВАТЬ Было высказано предположение, что контейнеры на основе Ubuntu имеют spamc пакет. Однако я использую базовый образ CentOS, у которого нет отдельного spamc пакет.

Да, есть!

Как вам нужно только spamc в вашем контейнере Dovecot вы должны только установить spamc а не Spamassassin в контейнере Dovecot.

Debian / Ubuntu (контейнер Dovecot):

apt install spamc

CentOS (контейнер Dovecot):

Вы можете установить только spamc с помощью пип (Менеджер пакетов Python).

pip install spamc

Если в вашем контейнере еще не установлен pip:

Добавьте репозиторий EPEL:

yum install epel-release

Установить пип:

yum install python-pip

А теперь установите spamc с помощью pip, как указано выше.