Мы ищем реализацию Variable Envelope Return Path (VERP) для улучшения обработки отказов для нашего приложения.
Наша текущая почтовая инфраструктура MS Exchange 2007, но в настоящее время выполняется обновление до 2010 года. Мы также внедряем Postini для фильтрации спама.
Exchange не поддерживает субадресацию (см. Также этот вопрос по одноразовым адресам ) - и VERP является своего рода специализированным приложением субадресации.
Существуют ли какие-либо варианты реализации VERP в Exchange без установки другого не SMTP-ретранслятора Exchange перед Exchange для предварительной обработки входящих сообщений? В частности, можно ли создать транспортное правило, которое может соответствовать целевому (несуществующему) получателю, сохранить адрес получателя в специальном заголовке, добавленном к сообщению, и перенаправить сообщение в предварительно созданный почтовый ящик?
Примечание: у нас есть ресурсы для разработчиков, если можно как-то использовать пользовательский код.
источник
Ответы:
Разумеется, из коробки нет поддержки VERP в Exchange 2007/2010. Как Вам известно. Я не верю, что вы сможете создать правило транспорта, даже с PowerShell, чтобы делать то, что вы хотите. Я полагаю, что самое близкое, что вы получите, это создание собственного транспортного агента. Вы можете найти Exchange SDK по адресу msdn.microsoft.com. Если ваша цель состоит в том, чтобы определить, для кого сообщение отскочило, вам, возможно, будет лучше проанализировать протоколы протокола. Протоколирование протокола должно быть включено и имеет отдельные журналы отправки / получения. Удачи Пол
источник
Обмен это отстой. Почтовое программное обеспечение Linux бесплатное. Установите его на ящик, настройте поддомен для всей почты вашего приложения, которую вы отправляете. (Как и myapp.mycompany.tld, поэтому вся ваша почта приходит с someuser@myapp.mycompany.tld)
Было бы довольно легко написать (или заставить кого-то написать) быстрое и грязное приложение, которое получало бы и обрабатывало рикошетные сообщения и уведомляло ваше приложение, используя что-то вроде SOAP.
Если вы работаете в среде только с Windows, вам неинтересно запускать одноразовый сервер Linux, но я не знаю, как это сделать с Exchange.
Другим вариантом может быть вставка уникальной строки символов в заголовок, тему или текст каждого сообщения. Используйте X-MyApp-Id: бла. Конечно, это может отключить больше спам-фильтров ...
источник
Мы делаем это, анализируя журналы отслеживания сообщений и имея правило, которое удаляет рикошетные сообщения перед их отправкой. Это работает, если ваше отправляющее приложение может создать путь возврата VERP. Это не SMTP-часть обмена, которая не может выполнить VERP, это часть почтового ящика, которая не может обрабатывать подстановочные знаки для размещения отказов сообщений в почтовом ящике. Если вы используете журналы, вам не нужно отправлять сообщение об отказе, которое сокращает ваш почтовый трафик. Журналы являются CSV-файлами, поэтому они загружаются в базу данных аккуратно, а затем вы анализируете поле пути возврата для идентификатора вашей записи VERP и используете код причины, чтобы пометить как жесткий или мягкий отскок. Проблема в том, что это прекрасно работает, если ваше приложение использует SMTP для подключения к серверу exchaange. По какой-то причине если вы используете обмен каталогами раскладки, то ваш путь возврата verp заменяется адресом from, и вы теряете возможность сделать это. Все еще пытаюсь понять это.
источник