在 EXIM 上通过 Google Cloud (SMTP Relay-Mailjet) 接收邮件

在 EXIM 上通过 Google Cloud (SMTP Relay-Mailjet) 接收邮件

我在服务器上使用 DirectAdmin。我已配置 EXIM。我可以发送电子邮件,但无法接收电子邮件。例如,当我尝试通过[电子邮件保护],我要么收到 550 验证需要错误返回,要么没有收到任何错误。我该如何解决这个问题。我在 GCP 上使用 2525 端口。

我的配置如下:

exim.authenticators.post.conf

mailjet_login:
driver = plaintext
public_name = LOGIN
hide client_send = :  apikey:client

exim.路由器.pre.conf

send_via_mailjet:
driver = manualroute
domains = ! +local_domains
transport = mailjet_smtp
route_list = "* in-v3.mailjet.com::2525 byname"
condition = "${perl{check_limits}}"
host_find_failed = defer
no_more

exim.传输.pre.conf

mailjet_smtp:
driver = smtp
port = 2525
hosts = in-v3.mailjet.com
hosts_require_auth = $host_address

答案1

Exim 主要是一个 SMTP MTA。它没有任何机制来“获取”来自远程邮箱的传入邮件 - 它默认监听 TCP 端口 25(也可能是其他端口),并期望其他 SMTP 服务器建立入站连接来传送入站邮件。

您的配置是为了传出仅限 SMTP 邮件(从 exim -> 发出)。

为了使用 exim(或者任何其他 SMTP MTA)接收传入邮件,您需要在 DNS 中为您的域设置 MX 记录以指向您的邮件服务器,然后使用其他服务进行配置,以便邮件通过 SMTP 转发到此域。您的 exim 邮箱需要有公共 IP 并且可以访问。

或者

如果其他服务不支持通过 SMTP 转发邮件给您,您将需要其他程序来从任何邮箱检索邮件。如果您需要,fetchmail 之类的程序可以通过 IMAP/POP 等检索电子邮件,并使用 SMTP 将其发送到您的 exim 服务器。

相关内容