У sendmail-а для запуска программы по письму, можно в /etc/mail/aliases прописать строки такого вида
spam: "|/usr/local/bin/sa-learn --spam"
not-spam: "|/usr/local/bin/sa-learn --ham"Как эту задачу можно реализовать в postfix?
>У sendmail-а для запуска программы по письму, можно в /etc/mail/aliases прописать строки
>такого вида
>spam: "|/usr/local/bin/sa-learn --spam"
>not-spam: "|/usr/local/bin/sa-learn --ham"
>
>Как эту задачу можно реализовать в postfix?У postfix точно так же, только нужно обратить внимание на параметр
$ postconf allow_mail_to_commands
allow_mail_to_commands = alias, forwardПри таком выводе заворот писем до команд разрешен с alias-файлов и из .forward-файлов.
А если алиасы хранятся в mysql?virtual_alias_maps = mysql:/usr/local/etc/postfix/mysql/mysql_virtual_alias_maps.cf
>А если алиасы хранятся в mysql?
>
>virtual_alias_maps = mysql:/usr/local/etc/postfix/mysql/mysql_virtual_alias_maps.cfВы много чего не договариваете.
Дело не в mysql, а в virtual_alias_maps
Ключевое слово virtual !В virtual_alias_maps нужно _адресу_ (ключу) поставить в соответствие _адрес_ (значение) (или несколько адресов). Других вариантов нет.
Вы бы прояснили ситуацию - что нужно реализовать и какая Ваша идея реализации.
Может кто-то подскажет. Я могу ошибаться.
Можно через virtual_alias_maps выйти на aliases файл, задав, к примеру, такое соответствие:spam@virtual-domain.tld spam@localhost
ну а в aliases файле
spam: "|/usr/local/bin/sa-learn --spam"
но это какой-то BAD и думаю не то, что Вам нужно.
А вообще, если имеем дело с виртуальными доменами (virtual_alias_domains или virtual_mailbox_domains), то заворот писем команде осуществляется через создание нового типа транспорта в master.cf - с помощью pipe демона.
В main.cf имеется параметр transport_maps - делаем соответствие email <-> наш_новый_транспорт (его название из master.cf).
Amator, спасибо за помощь.