我希望发送给系统用户的所有邮件都被redirect到root。 如何用postfix来完成? 这主要是因为我得到了由cron发送的邮件。
由于所有非系统用户已经在/etc/aliases列出,我只需要一个不在这个文件中的用户。
我考虑使用mailbox_transport ,但我找不到有关如何指定local:运输的任何文档。
我也考虑使用luser_relay ,但是因为这比mail_spool_directory的优先级低,邮件仍然放在每个用户的邮件缓冲池中,这正是我想要避免的。
积分: https : //www.cyberciti.biz/tips/how-to-redirect-one-users-mail-to-another-user-with-postfix.html
Postfix是一个开源的邮件传输代理(MTA),用于邮件的路由和传递。 这篇文章举例说明如何使用Postfix MTA将电子邮件转发给其他本地或远程电子邮件用户。
它提供了一种将本地和远程用户的邮件redirect到另一个用户的方法。 您需要configuration/ etc / postfix / aliases(或使用/ etc / aliases)文件。 别名文件(读为表)提供了一个系统范围的机制来redirect本地收件人的邮件。 redirect由Postfix本地交付代理处理。
通常,别名表被指定为一个文本文件,作为postalias命令的input。 结果是一个以dbm或db格式编制的索引文件,用于邮件系统的快速查找。 在更改Postfix别名数据库之后,执行命令newaliases以重build索引文件。*
使用vi文本编辑器打开文件/ etc / postfix / aliases:
# vi /etc/postfix/aliases
现在添加行如下:
abuse: [email protected], [email protected], [email protected], postmaster
保存并closures文件。 滥用的名字是在本地机器上接收邮件的本地地址。 [email protected]是另一个域上的电子邮件地址,可以转发到(该值可以是本地机器上的用户名或电子邮件地址)。 这可以是用逗号分隔的单个或多个值。
要将根邮件redirect到tom用户:
root: tom
要么
root: [email protected]
inputnewaliases命令来build立新的数据库:
# newaliases
要进一步解决问题,请参阅postfix服务器日志文件:
# tail -f /var/log/mailog
示例输出
Jan 8 03:56:33 www330 postfix[13209]: p089uXvh013209: from=root, size=29, class=0, nrcpts=1, msgid=<[email protected]>, relay=root@localhost Jan 8 03:56:33 www330 postfix[13210]: p089uXZH013210: from=, size=337, class=0, nrcpts=1, msgid=<[email protected]>, proto=ESMTP, daemon=MTA, relay=localhost.localdomain [127.0.0.1] Jan 8 03:56:33 www330 postfix[13209]: p089uXvh013209: to=root, ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30029, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (p089uXZH013210 Message accepted for delivery) Jan 8 03:56:34 www330 postfix[13211]: STARTTLS=client, relay=cyberciti.biz.s9a1.psmtp.com., version=TLSv1/SSLv3, verify=FAIL, cipher=AES256-SHA, bits=256/256 Jan 8 03:56:36 www330 postfix[13211]: p089uXZH013210: [email protected], ctladdr= (0/0), delay=00:00:03, xdelay=00:00:03, mailer=esmtp, pri=30576, relay=cyberciti.biz.s9a1.psmtp.com. [202.xxx.yyy.zzz], dsn=2.0.0, stat=Sent (Thanks)
以上输出表明发送到本地root帐户的邮件通过名为cyberciti.biz.s9a1.psmtp.com的smtp服务器转发到[email protected]。 如果您对邮件服务器没有pipe理员权限,请使用您自己的主目录中的.forward文件将电子邮件转发到另一个帐户。