我们有几个域,它们的 MX 记录指向位于网络边缘的运行 Qmail 的网关,该网关随后根据 smtproutes 将其转发到几个内部邮件服务器之一。
我的问题是,如果我想将发往特定域的每封电子邮件转发到两个单独的服务器,在 Qmail 中是否有简单的方法可以做到这一点?(我们希望在不同步 IMAP 帐户的情况下从一台机器迁移到另一台机器,因此我们希望邮件在两台机器上保留几周,以便用户可以在新服务器上收到最近的邮件)。
谢谢。
附言:如果这是重复的,我很抱歉,我以为我已经提交了,但现在找不到它(在我的历史记录中也找不到),所以我认为它一定没有通过。
答案1
您可能想看看这个:lifewithqmail.org/lwq.html#dot-forward
和这个:greens.org/about/software/qmail/man/man5/dot-qmail.html
QMAIL 文件 要更改 qmail-local 的行为,请在您的主目录中设置一个 .qmail 文件。
.qmail contains one or more lines. Each line is a delivery instruction. qmail-local follows each instruction in turn. There are five types of delivery instructions: (1) comment; (2) program; (3) forward; (4) mbox; (5) maildir. (3) A forward line begins with an ampersand: &[email protected] qmail-local takes the rest of the line as a mail address; it uses qmail-queue to forward the message to that address. The address must contain a fully qualified domain name; it must not contain extra spaces, angle brackets, or comments: # the following examples are WRONG &me@new &<[email protected]> & [email protected] &[email protected] (New Address) If the address begins with a letter or number, you may leave out the ampersand: [email protected] Note that qmail-local omits its new Return-Path line when forwarding messages.
希望这会有所帮助 - 我手边没有 qmail 服务器可以先测试这一点。
编辑:
您可能需要使用脚本为每个用户创建这些文件。
答案2
涉及多少用户?是否可以让他们向电子邮件客户端添加另一个帐户,以开始从新服务器提取邮件?如果配置正确,他们仍然可以访问旧邮件(如果两个帐户都使用 IMAP,甚至可以将其移动到新服务器)。
另外,为什么不愿意同步 IMAP 帐户?您是否要切换到其他 IMAP 服务器?过去,当我移动邮件时,我使用 rsync 将邮件复制到新服务器。一次 rsync 后,在旧服务器上停止 IMAP/SMTP,再执行一次 rsync 以获取第一次 rsync 期间所做的更改,然后在新服务器上启动 IMAP/SMTP。
更改配置文件,使邮件定向到新服务器而不是旧服务器。提前通知用户,并在半夜进行。如果您控制 DNS,则可以提前一周降低主机记录上的 TTL,这样当您实际进行更改时,DNS 更新将快速传播。