将虚假电子邮件与现有电子邮件进行匹配和转发

将虚假电子邮件与现有电子邮件进行匹配和转发

为了保证匿名性并保护用户的隐私,我需要设置一个执行以下操作的电子邮件服务器:

  1. 上传生成的电子邮件([电子邮件保护])和真实电子邮件([电子邮件保护]
  2. 从生成的电子邮件中接收电子邮件([电子邮件保护])。
  3. 发送电子邮件至真实电子邮件([电子邮件保护])。

因此:来自[电子邮件保护][电子邮件保护]

我该怎么做?Postfix?这项技术叫什么名字?是“邮件转发”还是“电子邮件中继”?

我在 DevOps 方面经验丰富,并且是一名软件开发人员。但我对电子邮件系统不太熟悉。

编辑:关键在于,将有一个系统,客户可以在其中上传原始的真实电子邮件地址,系统会将其转换为匿名电子邮件地址,而我们组织只能使用这些匿名电子邮件地址。这样做的好处是我们仍然可以在任何地方使用电子邮件地址,但我们永远不会看到或拥有真实的电子邮件地址。我们必须这样做才能遵守当地法律。

答案1

你正在寻找的是别名或重定向,可能每个像样的电子邮件服务器都可以做到这一点。让我描述一个解决方案进出口在 Debian 上。我们想将邮件重定向[email protected]到其真实地址。

为了使别名的管理更加容易,我们将它们放在 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_roleexim_password是 Exim 的 Postgres 凭据。同时,我们需要更正 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 服务器被授权从您的域发送带有信封发件人的电子邮件等。我的观点是证明从 DB 表设置别名很简单。

相关内容