我正在设置我的第一个邮件服务器。 在过去,我使用了一个已经configuration的Postfix设置,我试图复制。
基本上我可以在服务器上创build一个用户,然后在/ etc / postfix / virtual中添加一个规则,例如:
[email protected] user
重新启动postfix,然后发送电子邮件给用户,它会工作。
我知道有很多因素可以正常工作。
我只是试着做了上面的,并发送一个电子邮件到我添加到/ etc / postfix /虚拟从服务器shell的地址,它发送好,但它没有到达指定的用户收件箱(我只是检查服务器上的webmin)。
我在这里错过了一些重要的步骤吗?
这里是/ var / log / maillog的摘录:
Sep 13 07:58:41 srv sendmail[3037]: r8D6wfEX003037: from=root, size=231, class=0, nrcpts=1, msgid=<[email protected]>, relay=root@localhost Sep 13 07:58:41 srv sendmail[3038]: r8D6wfJa003038: from=<[email protected]>, size=494, class=0, nrcpts=1, msgid=<[email protected]>, proto=ESMTP, daemon=MTA, relay=localhost [127.0.0.1] Sep 13 07:58:41 srv sendmail[3037]: r8D6wfEX003037: [email protected], ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30231, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (r8D6wfJa003038 Message accepted for delivery) Sep 13 07:58:41 srv sendmail[3040]: r8D6wfJa003038: to=<[email protected]>, ctladdr= <[email protected]> (0/0), delay=00:00:00, xdelay=00:00:00, mailer=esmtp, pri=120494, relay=thedomain.org. [xx.xx.xxx.xx], dsn=4.0.0, stat=Deferred: Connection refused by thedomain.org.
您需要确保在main.cf文件中包含以下指令:
virtual_alias_domains = example.net example.com virtual_alias_maps = hash:/etc/postfix/virtual
example.net和example.com是你想要有虚拟地图的域。 详细信息请参阅文档。
如果您在后缀中有一个虚拟域,那么该域中的所有地址都必须是虚拟的。 如果您只想将邮件从一个本地用户redirect到另一个本地用户,则应该使用正常的别名。
通常情况下,如果您只想将邮箱中的用户发送到您域中的用户名,则根本不需要使用任何种类的别名,而只需将您的域设置为我的目标,然后使用unix:passwd.byname local_recipient_maps中的unix:passwd.byname设置。
通常local_recipient_maps = unix:passwd.byname $alias_maps $virtual_mailbox_maps $virtual_alias_maps 。