Назад | Перейти на главную страницу

Простое реле SMTP с белым списком

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

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

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

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

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

Закончил этим с 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 чтобы загрузить это.