Postfix - 接受任何域的任何用户的所有电子邮件

Postfix - 接受任何域的任何用户的所有电子邮件

我需要配置一个 SMTP 服务器来接受任何电子邮件发送到任何可能通过端口 25 到达的地址,并将其投递到本地邮箱(即垃圾邮件接收站)

我的操作系统默认支持的 MTA 是 Postfix,但我对此没有经验。我以前经常使用 Sendmail 和 Exim,但那是几年前的事了。

可以用 Postfix 来完成吗?

答案1

您可以使用虚拟邮箱来执行此操作。与通常的查找图不同,您将拥有如下所示的 PCRE 表:

/.*/ spamuser

spamuser无论收件人的电子邮件地址是什么,都返回用户名。

在你的 postfix.conf 中,你应该有以下行

virtual_alias_maps = pcre:/etc/postfix/virtual

还有更多关于两者的信息虚拟别名映射PCRE 表postfix.org

答案2

这是我的方法

创建用户网络邮件

adduser webmail

我必须安装 postfix-pcre 包。代码:

 sudo apt-get install postfix-pcre

我创建了一个名为 /etc/postfix/virtual 的文件,内容如下:-

代码:

/.*/                        webmail

编辑/etc/postfix/main.cf以添加此行:

virtual_alias_maps = pcre:/etc/postfix/virtual

对于绝对的新手(比如我),如果配置正确,查询命令:代码:

postmap -q test@a pcre:/etc/postfix/virtual

将返回虚拟文件 (/etc/postfix/virtual) 中指定的电子邮件 ID。在本例中。代码:

webmail

要测试工作情况,请使用终端中的 mail 命令。代码:

mail [email protected]

输入主题、邮件正文,然后按 Ctrl+D(退出撰写窗口)。

要查看消息,请使用以下命令。(webmail 是虚拟文件中配置的邮件 ID。用您的名字替换。)代码:

mail webmail

PS:要检查邮件日志,请使用以下命令。代码:

tail -f /var/log/mail.log

答案3

如果您想将 postfix 变成一个可以接受任何域的邮件的开放代理,您可能需要查看以下代码:http://www.postfix.org/smtp-sink.1.html

它基本上是一个负载测试器(接受然后丢弃),但您也可以将其配置为接受然后存储。

相关内容