Как мне перенаправить все электронные письма, направленные на user-*@example.com (например, user-1234@example.com), на команду pipe в Postfix? Идея состоит в том, чтобы создать анонимность в стиле Craigslist путем назначения динамических псевдонимов электронной почты каждому пользователю. Однако я не могу найти соответствующую информацию в документации.
Ладно. А теперь другой подход.
Поставить новый транспорт в master.cf
:
coolscript unix - n n - 50 pipe
flags=R user=vmail argv=/path/to/script -o SENDER=${sender} -m USER=${user} EXTENSION=${extension}
вы можете расширять / изменять параметры по своему усмотрению.
Затем (чтобы исключить pcre) вы можете использовать регулярное выражение, чтобы сделать "уловку" в main.cf
:
transport_maps = regexp:/etc/postfix/redirect.regexp
И в /etc/postfix/redirect.regexp
вы положили:
/^user-.*@example\.com/ coolscript:
Перезагрузите Postfix с помощью postfix reload
.
Сначала проверьте, скомпилирован ли pcre в Posfix с помощью postconf -m
. Тогда вы можете установить main.cf
:
virtual_alias_maps = pcre:/etc/postfix/redirect.pcre
И в /etc/postfix/redirect.pcre
вы положили:
/^user-.*@example\.com$/ somelocalalias
И в /etc/aliases
вы добавляете
somelocalalias: |"/path/to/script"
Не забывай postalias /etc/aliases
а затем перезагрузите Postfix с postfix reload
.