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

Сопоставление и пересылка поддельного сообщения электронной почты на существующую электронную почту

Чтобы гарантировать анонимность и защитить конфиденциальность пользователей, мне необходимо настроить почтовый сервер, который делает что-то вроде этого:

  1. Загрузите сгенерированные электронные письма (sdf12@domain.com) и настоящие электронные письма (bob@company.com)
  2. Получайте электронные письма из сгенерированных писем (sdf12@domain.com).
  3. Отправляйте электронные письма на настоящие электронные письма (bob@company.com).

Таким образом: письма с sdf12@domain.com идут на bob@company.com

Как мне это сделать? Постфикс? А как называется эта техника? Это «пересылка почты» или «ретрансляция электронной почты»?

У меня большой опыт работы с DevOps, и я разработчик программного обеспечения. Но я плохо знаком с системами электронной почты.

редактировать: Все дело в том, что будет система, в которой клиент загружает необработанные, реальные адреса электронной почты, что система преобразует их в анонимные адреса электронной почты, и что мы в организации можем использовать только эти анонимные адреса электронной почты. адреса. Это имеет то преимущество, что мы по-прежнему можем использовать адреса электронной почты повсюду, но мы никогда не увидим настоящие адреса электронной почты и не будем владеть ими. Мы должны сделать это в соответствии с местным законодательством.

То, что вы ищете, называется псевдонимами или перенаправлениями, и, вероятно, каждый приличный почтовый сервер может это сделать. Позвольте мне описать решение для Exim на Debian. Мы хотим перенаправлять почту на local_part@clients.domain.com на их реальный адрес.

Чтобы упростить администрирование псевдонимов, давайте поместим их в таблицу SQL (в этом примере на Postgres сервер localhost, база данных client_db):

CREATE TABLE client_aliases (local_part VARCHAR(32) PRIMARY KEY, real_address VARCHAR(64));

Он будет содержать анонимную локальную часть адреса электронной почты и реальные адреса ваших клиентов. Затем нам нужно добавить учетные данные Postgres в конфигурацию Exim. Для этого добавьте файл /etc/exim4/conf.d/main/99_servers с содержанием:

hide psql_servers = localhost/client_db/exim_role/exim_password

где exim_role и exim_password учетные данные Postgres для Exim. В то же время нам нужно исправить права доступа к конфигурационному файлу, созданному Debian, поэтому нам нужно изменить строку в /etc/exim/update-exim4.conf.conf:

CFILEMODE='640'

Затем мы создаем роутер Exim в файле /etc/exim4/conf.d/450_client-aliases с содержанием:

client_aliases:
    debug_print = "R: client_aliases for $local_part@$domain"
    driver = redirect
    domains = clients.domain.com
    data = ${lookup pgsql{SELECT real_address FROM client_aliases WHERE local_part='${sg{$local_part}{'}{''}}'}}

[Ср. поиск в базе данных и перенаправить роутер]

Теперь вам просто нужно добавить некоторые данные в таблицу, восстановить конфигурацию Exim, и вы можете начать проверку разрешения адреса электронной почты:

update-exim4.conf
exim4 -bt

Редактировать: Конечно, вам также необходимо изменить другие части конфигурации Exim по умолчанию, настроить некоторые ACL, чтобы перенаправления работали только для определенных IP-адресов и адресов отправителя, проверьте политику SPF, чтобы сервер Exim мог отправлять электронные письма с отправителем конверта. из вашего домена и т. д. Я хотел доказать, что настройка псевдонимов из таблицы БД проста.