В продолжении поста про ловлю почты postfix + dovecot. Так как предыдущий варинт оказался мне не по нраву, да и не подошел, потому что письма после фильтра теряются. Пришлось искать решение при котором письма попадают и в ящик, и на обработку php.

Добавляем эту строчку в /etc/postfix/recipient_bcc. После сохранения запускаем в консоли «postmap /etc/postfix/recipient_bcc«. Так мы учим Postfix отправлять копии письма которые содержат «@yourdomain.tld» на адрес robotscript@localhost. Т.е. создаем catch-all адрес.

Добавляем эту строчку в /etc/postfix/transport. После сохранения запускаем в консоли  «postmap /etc/postfix/transport«. Теперь Postfix  знает что письма приходящие на адрес robotscript@localhost больше никуда не передаются, а попадают сразу к нам.

Эти строки идут в  /etc/postfix/main.cf.

Проверьте чтобы параметр «mydestination» в /etc/postfix/main.cf содержал «localhost«.

Добавляем эту строчку в /etc/aliases. После сохранения запускаем в консоли «postalias /etc/aliases«. Теперь письма пришедшие на robotscript@localhost отправляются прямиком на наш PHP обработчик. Скрипт получает данные через STDIN.

Перезапускаем Postfix, теперь письма обрабатываются php скриптом и при этом доходят до получателя.