如何使用 Postfix 和 Dovecot 将邮件转发到特定邮箱?

如何使用 Postfix 和 Dovecot 将邮件转发到特定邮箱?

我不知道如何使用 hPostfix 和 Dovecot 将邮件转发到特定的邮箱。

发件人邮箱地址-->收件人邮箱

目前邮件已被转移到特定用户的收件箱中。

Postfix 配置:

主配置文件

lmtp_destination_recipient_limit = 1
mailbox_transport = lmtp:unix:private/dovecot-lmtp
virtual_alias_maps = hash:/etc/postfix/_virtual
virtual_mailbox_base = /var/vmail
virtual_uid_maps = static:10000

虚拟别名映射

@sender.org                        [email protected]

鸽舍:

mail_location = maildir:~/Maildir
namespace inbox {
  inbox = yes
  location =
  mailbox Drafts {
    special_use = \Drafts
  }
  mailbox Junk {
    special_use = \Junk
  }
  mailbox Trash {
    special_use = \Trash
  }
  prefix =
  separator = /
  type = private
}
protocols = imap imap lmtp
service auth {
  unix_listener /var/spool/postfix/private/auth {
    group = postfix
    mode = 0666
    user = postfix
  }
  unix_listener auth-userdb {
    group = vmail
    mode = 0600
    user = vmail
  }
}
service lmtp {
  unix_listener /var/spool/postfix/private/dovecot-lmtp {
    group = postfix
    mode = 0666
    user = postfix
  }
}

答案1

virtual_alias_maps命令旨在通过收件人而不是发件人重定向传入消息,因此您的命令建议将 user@recipient 作为发往 *@sender 的邮件的通用地址。请注意,文件名必须与 main.cf 中指定的相同,因此/etc/postfix/_virtual在您的情况下,您需要postmap在每次更新后调用。

如果您想根据发件人地址重新路由收到的邮件,您可以尝试以下操作:

修改main.cf选项smtpd_recipient_restrictions,使其包含check_sender_access hash:/etc/postfix/sender_access 然后创建/etc/postfix/sender_access类似以下内容的内容

sender.org REDIRECT [email protected]

(看Access后缀手工录入(5)有关文件语法的详细信息。

之后,运行postmap /etc/postfix/sender_access、重新加载/重新启动您的 postfix,从现在开始,来自域 sender.org 的所有传入邮件都应发送到[电子邮件保护],无论收件人 (TO)、抄送 (CC) 和密送 (BCC) 字段如何。

答案2

谢谢你的回答。你说得对。这是收件人而不是发件人。

让我澄清一下我的问题。

我怎样才能实现以下星座?

邮件->收件人地址->邮件账户->具体邮箱

相关内容