Простой SMTP-ретранслятор с белым списком

Простой SMTP-ретранслятор с белым списком

У меня есть тестовый экземпляр скомпилированного веб-приложения (которое я не писал), которое я хотел бы протестировать, однако приложение содержит адреса электронной почты клиентов, которые я хотел бынетполучать электронные письма во время проведения указанного тестирования.

Прямо сейчас это веб-приложение использует определенный SMTP-сервер — назовем его mail1— для отправки уведомлений по электронной почте, когда происходят различные события. Чтобы свести к минимуму объем настроек, которые мне нужно будет сделать с приложением или его данными (что может исказить тестирование), я думаю, что решением, позволяющим избежать отправки этих писем, может быть установка временного SMTP-реле, mail2который проверяет исходящие адреса электронной почты и ретранслирует письма только в mailтом случае, если они предназначены для определенного домена. Все остальные, не предназначенные для этого домена, можно отбросить или, что еще лучше, переслать на другой адрес в этом домене из белого списка, чтобы убедиться, что онибудет иметьбыли отправлены клиентам, если бы не были внесены в белый список mail2.

Это то, что я могу сделать с Postfix или Qmail? Если да, есть ли какие-либо рекомендации, как начать это делать? Я никогда не настраивал ни то, ни другое раньше, и мне интересно, есть ли, возможно, совершенно другое решение для ограничения почты, которое я упускаю из виду. Может быть, даже что-то, что могут сделать Gmail/Google Apps?

решение1

Зависит от вашей настройки и базового дистрибутива (я предполагаю, что вы используете Linux). Лично я бы посоветовал использовать инструменты вашего дистрибутива. Так что, если ваш дистрибутив использует Postfix, используйте Postfix. Если он использует Sendmail, используйте Sendmail.

В любом случае я бы рекомендовал Postfix, поскольку с его помощью очень легко настроить простой SMTP-шлюз.

решение2

В итоге сделал это с помощью Postfix. Ключевая часть файла main.cf:

relayhost = [mail1.mydomain.com]
smtpd_recipient_restrictions = check_recipient_access hash:/etc/postfix/rcpt_whitelist, reject

А rcpt_whitelist содержит:

whitelisted1.com OK
whitelisted2.com OK

Затем я сделал это, postmap hash:rcpt_whitelistчтобы загрузить его.

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