Я пытаюсь фильтровать почту на уровне пользователя. У меня установлены CentOS и Postfix.
Мне удалось установить фильтр на сервере, и он отлично работает, за исключением того, что вместо фильтрации по пользователю все электронные письма (отправленные и полученные) для всех пользователей проходят через фильтр. (Я хочу, чтобы через фильтр проходили только письма, отправленные на bounce@example.com).
Я добавил к master.cf
:
myhook unix - n n - - pipe flags=F user=nils_filter argv=/path to/postfix.php ${sender} ${size} ${recipient}
smtp inet n - - - - smtpd -o content_filter=myhook:
pickup fifo n - - 60 1 pickup -o content_filter=myhook:
main.cf
имеет:
smtpd_recipient_restrictions = check_recipient_access hash:/etc/postfix/access,permit_mynetworks, reject_unauth_destination
и я обновил access
файл с:
bounce@example.com FILTER myhook
После запуска postmap
и перезагрузка, он работает для всего домена example.com (все электронные письма, отправленные и полученные по smtp, передаются по конвейеру через настроенный мной фильтр).
Не могли бы вы указать мне правильное направление, в котором я могу ошибаться?
Все электронные письма были отправлены, потому что вы указали content_filter
по smtpd и забрать в master.cf.
Решение:
-o content_filter=myhook:
из master.cfСтавить myhook
в файле доступа с правильный синтаксис
bounce@example.com FILTER myhook:
Ссылка: доступ человека