Я хочу создать спам-фильтр, аналогичный Boxtrapper, SpamArrest, Gafana и Boxbe. Мне нужно переместить сообщение в другую папку в зависимости от пользовательских правил. Я рассмотрел следующее, но не ясно, как указать Postfix для перемещения сообщения. Большинство протоколов фильтрации позволяют только принять или отклонить сообщение, без какой-либо возможности перемещать сообщения. Я видел, что Sieve позволяет обрабатывать правила для перемещения почты, но не позволяет запускать пользовательские программы.
- Milter: http://www.postfix.org/MILTER_README.html — нет возможности переместить Сообщения. Возвращайте только действие принятия, отклонения, временного сбоя или карантина.
- Фильтр перед очередью: http://www.postfix.org/SMTPD_PROXY_README.html — нет. способ перемещения сообщений. Сложный протокол (ESMTP).
- Фильтр после очереди: http://www.postfix.org/FILTER_README.html — Нет способ перемещения сообщений.
- Sieve: http://wiki2.dovecot.org/Pigeonhole/Sieve — язык правил Sieve реализация для Dovecot называется Pigeonhole, но не позволяет запускать программы.
Может быть, есть фоновый процесс, сканирующий почтовый ящик для отправки запроса/ответа? Кажется, что фильтр на основе ловушек был бы более эффективным, чем на основе опроса.