Постфикс: always_bcc все домены, кроме одного

Постфикс: always_bcc все домены, кроме одного

На двух серверах Postfix есть два почтовых домена, скажем, a.com на server1.com и b.com на server2.com. Пользователи и псевдонимы хранятся в Active Directory, к которому мы получаем доступ с помощью модуля ldap.

Как предотвратить почтовый цикл в этом сценарии? Могу ли я пересылать всю почту, кроме той, которая приходит с одного домена?

решение1

Если я правильно понял задачу, always_bcc вам не друг.

Вместо этого я бы попробовал транспортный демон (транспортную таблицу).

в транспорте:

 a.com  smtp:[mail.relay.of.b.com]
 b.com  smtp:[mail.relay.of.a.com]

Конечно, мы предполагаем, что хотим пересылать сообщения на то же имя пользователя.


Для обновленного вопроса: если вы хотите отправлять копии, вы можете использовать транспорт виртуального псевдонима. virtual_alias_maps = regexp:regexpalias

и в регулярных выражениях сделать что-то вроде этого:

 /.+@(a|b).com$/   [email protected],[email protected]

после обычногоpostmap регулярные выражения псевдонимыСоответствующие письма должны отправляться в оба пункта назначения. Вы должны быть осторожны, если у вас есть другие источники виртуальных псевдонимов, определенные на сервере, поскольку виртуальное псевдонимирование будет выполнено только один раз и прекратится при первом совпадении. Например, если у вас есть:

 virtual_alias_maps = 
          hash:/etc/postfix/myaliases
          regexp:/etc/postfix/regexpalias

И в myaliases вы пересылаете[email protected]к[email protected], то ваше регулярное выражение никогда не будет достигнуто и одно письмо будет отправлено на[email protected].

Поскольку вы пересылаете почту напрямую (транспорт), а эти серверы предположительно не будут отправлять почту обратно, виртуального алиасинга больше не происходит, поэтому не должно быть никаких почтовых циклов.

Связанный контент