URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 87090
[ Назад ]

Исходное сообщение
"Postfix. Запуск программы по письму. "

Отправлено BachiStil , 29-Окт-09 12:14 
У sendmail-а для запуска программы по письму, можно в /etc/mail/aliases прописать строки такого вида
spam: "|/usr/local/bin/sa-learn --spam"
not-spam: "|/usr/local/bin/sa-learn --ham"

Как эту задачу можно реализовать в postfix?


Содержание

Сообщения в этом обсуждении
"Postfix. Запуск программы по письму. "
Отправлено Amator , 29-Окт-09 12:30 
>У 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-файлов.


"Postfix. Запуск программы по письму. "
Отправлено BachiStil , 29-Окт-09 13:14 
А если алиасы хранятся в mysql?

virtual_alias_maps = mysql:/usr/local/etc/postfix/mysql/mysql_virtual_alias_maps.cf



"Postfix. Запуск программы по письму. "
Отправлено Amator , 30-Окт-09 04:42 
>А если алиасы хранятся в 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).


"Postfix. Запуск программы по письму. "
Отправлено BachiStil , 05-Ноя-09 08:20 
Amator, спасибо за помощь.