我有服务器 A 和服务器 B - 我正在将账户从 A 移动到 B,但我希望服务器 A 将收到的所有邮件转发到服务器 B,以确保在 DNS 传播期间我复制邮箱后不会丢失任何邮件
在 ServerA 上,我在 main.cf 中有:
transport_maps = hash:/etc/postfix/transport
在该文件中我尝试过:
[email protected] smtp:[IP of serverB]:25
并运行 postmap /etc/postfix/transport,然后重新启动 postfix
这似乎没有任何作用。如果我没有为电子邮件创建虚拟别名,它会说电子邮件在虚拟别名表中不存在(似乎忽略了邮件传输配置)。如果我有一个别名,它可以正常工作,但传输仍然被忽略。
我可以获得的唯一传输是服务器上所有邮件的通配符 - 这并不理想..:
* smtp:[IP of serverB]:25
这就引出了我的第二个问题——当触发传输时,ServerB 拒绝邮件:
Relay access denied (in reply to RCPT TO command)
在 ServerB 上,我已将 IP 地址添加到 mynetworks 选项。我是否遗漏了其他选项?
ServerA 是否需要在 ServerB 上进行身份验证,或者 mynetworks 选项是否足够?
如果有影响的话,ServerB 就是 ISPConfig 安装。
非常感谢您的帮助,我已经在谷歌上搜索了几个教程,它们似乎都只是提到了上面的选项,所以我不知道是什么导致了这些问题
答案1
在服务器 A 上,我尝试将其放入/etc/postfix/transport
:
domain.com smtp:[IP of server B]
(在该文件上运行postmap
等)。假设服务器 B 已设置为接收电子邮件domain.com
,那么这应该就是您所需要的。
如果这不起作用,您应该包括以下内容以帮助进行故障排除:
- 来自服务器 A 和 B的输出
postconf -n
(如果愿意,请用 example.com 替换您的域名) - 服务器 A 收到的某位用户的电子邮件日志
domain.com
- 来自服务器 B 的日志(如果适用)
- 服务器 A 上的输出
postmap -q [email protected] hash:/etc/postfix/transport