Я настраиваю тестовый сервер для веб-приложения, которое отправляет некоторые уведомления по электронной почте.
Иногда тестирование выполняется с реальными данными клиентов, и по этой причине мне нужно гарантировать, что сервер не сможет отправлять электронные письма нашим реальным клиентам во время тестирования.
Я хочу настроить postfix так, чтобы он принимал любую исходящую электронную почту и перенаправлял ее на один адрес электронной почты, вместо того, чтобы доставлять ее по настоящему месту назначения.
Я использую сервер Ubuntu 9.10.
заранее спасибо
Настройте локального пользователя для получения всей перехваченной почты:
adduser mailtrap
Вам нужно добавить в main.cf:
transport_maps = hash:/etc/postfix/transport
luser_relay = mailtrap
Затем создайте / etc / postfix / transport со следующим:
localhost :
your.hostname.example.com:
* local:mailtrap
Сохраните и запустите: postmap /etc/postfix/transport
наконец перезапустите постфикс invoke-rc.d postfix restart
Вся местная электронная почта будет доставлена в обычном режиме, а внешняя электронная почта будет доставлена на местный mailtrap
учетная запись.
Лучше создать файл виртуального псевдонима:
В /etc/postfix/main.cf:
virtual_alias_maps = pcre:/etc/postfix/virtual
В / etc / postfix / virtual:
/.*@.*/ root
Вы можете заменить root
с каким бы пользователем вы не хотели получать всю исходящую электронную почту. Этот шаблон можно настроить, если вы хотите, чтобы локальная почта доставлялась нормально (без перенаправления):
/.*@(?!hostname\.localdomain$).*/ root
Оригинальная идея найдена здесь: Сервер разработки Postfix - перехват всей исходящей почты
Postfix предоставляет нечто, называемое smtp-раковиной. По умолчанию он закрывает все получаемые электронные письма. Более поздние версии также можно настроить для записи электронной почты в файлы.
Это технически не использует postfix (но утилиту, предоставляемую postfix). Это также технически не перенаправляет каждое электронное письмо на один адрес электронной почты. Но он захватывает весь трафик на порт 25 и выгружает его в файл, который можно проанализировать.