Postfix 到 Postfix 的中继

Bob*_*rne 2 linux debian postfix centos

我有一个(可能不寻常的)情况,使用 Postfix 将邮件中继到另一个 Postfix 邮件服务器,然后需要将电子邮件发送出去。我已经阅读了大量教程,并看到了使用 Postfix 作为电子邮件中继发送到外部提供商(如 Google 等)的说明。但这有所不同,因为我需要发送到另一个 Postfix 服务器并让它充当发件人. 发件人将始终相同(对于两台服务器),但最终收件人可以是任何人。

问题是我缺少一些关键信息:

  • 我如何告诉 mail.postfix2.com 接受来自 postfix1.com 的中继邮件?
  • 我如何告诉 mail.postfix2.com 将中继邮件发送到目的地?
  • 如何更改 mail.postfix2.com 接受中继邮件的端口?

以下是基本配置参数:

后缀服务器 1:

main.cf:

myhostname = postfix1.com
relayhost = mail.postfix2.com
mydestination = postfix1.com, localhost.postfix1.com, localhost, mail.postfix2.com
inet_interfaces = all
Run Code Online (Sandbox Code Playgroud)

后缀服务器 2:

main.cf:

myhostname = mail.postfix2.com
mydomain = postfix2.com
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
relay_domains = $mydestination
inet_interfaces = all
Run Code Online (Sandbox Code Playgroud)

当我尝试转发到 mail.postfix2.com 时,我得到:

Oct 21 11:04:28 ns3312015 postfix/error[2538]: C016F47E75B5: to= <user@example.com>, relay=none, delay=25, delays=1.4/24/0/0.1, dsn=4.4.1, status=deferred暂停:连接到 mail.postfix2.com[123.123.123.123]:25:连接超时)

虽然我打开了端口 25,但我怀疑主机以某种方式阻止了它,所以我尝试在我的 postfix1.com main.cf 中使用这个参数:

relayhost = mail.postfix2.com:587
Run Code Online (Sandbox Code Playgroud)

在 postfix2.com 上,我在 master.cf 中取消了注释:

submission inet n   -   n   -   -   smtpd 
Run Code Online (Sandbox Code Playgroud)

回复是:

10 月 21 日 09:56:03 ns3312015 postfix/smtp[16154]:B8BB347E71F0:to= <user@example.com>,relay=mail.postfix2.com[123.123.123.123]:587,delay=1.4,delays= 0.5sn5/68 =4.7.1, status=deferred (host mail.postfix2.com[123.123.123.123] said: 454 4.7.1 <user@example.com>: Relay access denied ( relay access denied (回复RCPT TO命令))

我需要怎么做才能让 mail.postfix2.com 接受 postfix1.com 的邮件并将其发送?

neu*_*nus 5

只需将 postfix1.com 放在 mail.postfix2.commynetworks上。