Я хочу реализовать следующий сценарий:
мы используем почтовый сервер postfix. Чтобы заархивировать все старые и новые письма, я хочу установить второй постфикс на нашем файловом сервере и создать единый «архив» почтового ящика. тогда каждое письмо автоматически пересылается в этот почтовый ящик как скрытая копия. Теперь я хочу создать разные папки в структуре maildir и позволить серверу перемещать каждое письмо в нужную подпапку почтового ящика в зависимости от его отправителя или получателя.
например когда мы получаем письмо одному из наших сотрудников по имени «Джон Доу» на адрес john.doe@foo.bar, оно должно быть перемещено в папку «Входящие / Входящие Джон Доу». то же самое применяется, когда john doe отправляет письмо, папка будет «Inbox / John Doe Outgoing».
как я могу реализовать это поведение фильтра. я слышал о Procmail и Maildrop. Кого из двух вы бы предпочли? Что проще настроить? Здесь есть готовые решения?
заранее спасибо!
Почему бы не использовать sender_bcc_maps
и recipient_bcc_maps
скопировать почту в выделенный архивный домен - скажем, archive.foo.bar - доставленный через транспорт (5) на MDA, который хранит архивную почту в выделенных почтовых ящиках?
Нет необходимости во втором экземпляре и чистое решение во всех отношениях.
Вы можете использовать регулярное выражение или тип карты PCRE для сопоставления всех отправителей или получателей с почтовыми ящиками в архивном домене, например:
/ etc / postfix / sender-archive-pcre: /^(.*)@foo\.bar$/ $1-outbound@archive.foo.bar
/ и т.д. / постфикс / получатель-архив-pcre: /^(.*)@foo\.bar$/ $1-inbound@archive.foo.bar
А в транспорте (5): @archive.foo.bar unix:your-archive-mda
Что касается того, какой агент доставки использовать: я очень настоятельно рекомендую вам использовать dovecot 2.x, либо deliver
mda или сервер LMTP; у обоих есть полный сито поддержка фильтра с pigeonhole
плагин.