Перезаписать адрес назначения на основе аутентификации SMTP

Перезаписать адрес назначения на основе аутентификации SMTP

В целях разработки мы хотим настроить почтовый сервер (postfix), который будет направлять все письма, отправляемые через определенную учетную запись SMTP, на эту же учетную запись.

редактировать: Почта больше не будет отправляться на исходный адрес.

Поэтому мы создаем разные учетные записи для разных проектов, и вся почта одного проекта отправляется в один почтовый ящик.

В настоящее время мы используем следующее решение:Переписать получателя всех (кроме одного получателя) исходящих сообщений электронной почты

Но как мы можем адаптировать это к разным адресам назначения на основе учетной записи SMTP AUTH?

решение1

Вот два варианта:

1. использовать sender_bcc_mapsопцию в Postfix.

sender_bcc_maps (по умолчанию: пусто)

Необязательные таблицы поиска адресов BCC (скрытая копия), индексированные по адресу отправителя. Адрес BCC (несколько результатов не поддерживаются) добавляется, когда почта поступает извне Postfix.

Вам необходимо добавить следующее /etc/postfix/my.cnf:

sender_bcc_maps = hash:/etc/postfix/bcc_maps

И в /etc/postfix/bcc_mapsфайле добавьте нужное сопоставление:

[email protected] [email protected]
[email protected] [email protected]

Затем выполните:

postmap /etc/postfix/bcc_maps

И перезапустите Postfix.

  1. Перенаправление на основе отправителя

В main.cf:

smtpd_sender_restrictions = check_sender_access hash:/etc/postfix/sender_access

и в файле sender_access:

from_address@domain redirect new_to_address@anotherdomain.

Затем postmap /etc/postfix/sender_accessперезапустите постфикс

решение2

Это не ответна основе SMTP-аутентификациино предоставляет решение, основанное на ваших потребностях.

Для этого я использовал канонические карты, установил новый vps (centos/ubunbtu и т. д.), а затем настроил свои системы «dev» на смарт-хостинг этого ящика (внутри сети, например, 192.168.0). Вы можете сделать то же самое с помощью wp-smtp или других, мы использовали interworx, поэтому смарт-хост работал лучше всего.

[root@mx ~]# cat /etc/postfix/main.conf
  recipient_canonical_classes = envelope_recipient
  recipient_canonical_maps = regexp:/etc/postfix/recipient_canonical_map
  mynetworks = 192.168.0.0/24
  header_checks = regexp:/etc/postfix/header_checks
  relayhost = mailserver.example.com

[root@mx ~]# cat /etc/postfix/header_check
  /^Subject: (.*?)$/ REPLACE Subject: [Dev] $1
[root@mx ~]# cat /etc/postfix/recipient_canonical_map

  /./ [email protected]

*regexp, поэтому нет необходимости выполнять пост-отображение файлов.

Поскольку это среда разработки, исходя из личного опыта, я бы не советовал манипулировать вашим производством для приспособления к разработке, а создавать такие системы, чтобы объединить эти системы.

http://www.postfix.org/postconf.5.html#recipient_canonical_maps

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