Желательно, чтобы это можно было сделать с помощью виртуального экземпляра почтового сервера на существующей машине Linux, но я готов запустить совершенно другую установку (Linux или Windows), чтобы заставить это работать.
В основном система, которую мы используем, генерирует электронные письма клиентам, когда мы делаем определенные вещи. При настройке тестирования мы регулярно импортируем полный оперативный снимок в отчеты о тестировании и т. Д. Проблема в том, что это может закончиться тем, что мы отправим неверные электронные письма нашим клиентам.
Моя цель - создать другой почтовый сервер на сервере, который будет принимать всю почту, а затем перенаправлять ее обратно команде разработчиков. Лучшее, что я могу придумать, - это создание переадресации всех адресов для каждого домена каждого клиента. Хотя должен быть лучший вариант?
Машина будет не быть доступным в Интернет, поэтому спам не является риском.
Изменить: существует несколько доменов адресов клиентов. Любое комплексное решение не должно зависеть от предметной области. Поле from также зависит от пользователя, вошедшего в систему, или раздела системы. Нам также нужно видеть электронные письма, поэтому они перенаправляются.
Как уже указывалось, переопределение адреса - это один из способов. У Exim также есть хорошая структура для этого:
http://www.exim.org/exim-html-3.30/doc/html/spec_34.html
Кстати, то, что вы хотите, часто называют «общим» адресом. Это может помочь в поиске конфигурации для выбранного вами почтового сервера.
Вы также можете подумать о том, чтобы изменить свою тестовую систему, чтобы выгрузить почту в файл вместо того, чтобы отправлять ее. Это позволяет избежать хлопот, связанных со специальным «тестовым» почтовым сервером, который выполняет всю работу; также вы можете легко проанализировать файл автоматически, чтобы решить, успешно ли прошел тест. Конечно, возможно, не вариант поменять тестируемую систему ...
Я предполагаю, что эти электронные письма отправляются с одной учетной записи. Практично ли, чтобы ваш почтовый сервер временно отказывался от почты с этого аккаунта на время тестов?
Как вы думаете, ваша тестовая установка вашего приложения будет иметь другой IP-адрес, а не рабочий?
Не могли бы вы настроить существующий почтовый сервер так, чтобы вся электронная почта с IP-адреса xyz перенаправлялась пользователю abc?
Это позволяет вам сохранить ваше тестовое приложение точно таким же, с изменениями только почтового сервера.
Большинство почтовых серверов поддерживают перезапись адресов или изменение базы метода доставки на основе некоторой метрики входящей почты. Вы можете либо переписать все исходящие адреса с использованием локального пользователя, либо просто изменить способ доставки, чтобы бесцеремонно выгружать его в файл.
Например, если вы используете постфикс, есть довольно подробная документация доступно, даже если в нем конкретно не указан ваш случай.
Я бы предложил использовать сито для ваших нужд, поскольку он не привязан к конкретному MTA. Мы широко используем его для фильтрации / блокировки для себя и наших клиентов.
Я ищу что-то похожее для использования в качестве SMTP-сервера в тестовой среде. Пока я нашел subethasmtp, Devnull SMTP-сервер и Дамбстер, но у меня еще не было возможности протестировать ни один из них.
В идеале я бы хотел что-то с веб-интерфейсом для просмотра и управления полученными электронными письмами.