01 декабря 2021

SMTP Relay Exchange и сохранение писем

Возникла задача - с вебсайта отправляются письма через протокол SMTP. Cоединение идёт с сервером Exchange с поднятым SMTP relay. Копии отосланных писем надо сохранить в почтовой папке "Отправленные" того же ящика. Подобную фишку пока реализовали только в Office365, а остальным надо сделать следующее:

Для тех кто торопится: перехватить письмо транспортным правилом и добавить в скрытую копию (BCC) его же + правилом входящих писем (InboxRule) сделаем перемещение для таких писем из Входящие в Отправленные.

Имеем конфигурацию:
Linux-хостинг с SMTP-доступом к Exchange.
Exchange c настроенным коннектором для SMTP relay (как правило уже есть) на 25 порту.

Alias и почтовый адрес нашей учётки в Exchange:
mydomain2-website-mail
website@mydomain2.tld

1 шаг.
Добавим транспортное правило в Exchange через ECP или Powershell с таким содержанием:
Условие "Отправитель: website@mydomain2.tld"
Действие "Отправить скрытую копию сообщения (СК): website@mydomain2.tld"

2 шаг.
Добавим правило для папки Входящие (InboxRule) этого пользователя на перемещение. Для этого необходимо открыть консоль Exchange Management Shell под пользователем, у которого есть полные права на ящик website@mydomain2.tld. Я временно добавил Administrator в список полного доступа (Full access) этого ящика, а потом убрал после выполнения команды:

New-InboxRule -Mailbox mydomain2-website-mail -Name CopySMTPSentItems -From website@mydomain2.tld -MoveToFolder 'mydomain2-website-mail:\Отправленные'

В итоге имеем, что все появляющиеся письма в папке Входящие с отправителем website@mydomain2.tld — попадут в Отправленные. Если отправлять из Outlook под этой учёткой — конфликта не будет.

Комментариев нет:

Отправить комментарий