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

Aln*_*tak 8 smtp postfix

我需要配置一个 SMTP 服务器来接受任何可能在端口 25 上到达它的地址的任何电子邮件并将其传送到本地邮箱(即垃圾邮件沉洞)

我的操作系统默认支持的 MTA 是 Postfix,我没有这方面的经验。我曾经做过很多 Sendmail 和 Exim,但那是几年前的事了。

这可以用 Postfix 完成吗?

Jen*_*y D 10

您可以使用虚拟邮箱执行此操作。代替通常的查找映射,您将拥有一个如下所示的 PCRE 表:

/.*/ spamuser
Run Code Online (Sandbox Code Playgroud)

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

在您的 postfix.conf 中,您将拥有该行

virtual_alias_maps = pcre:/etc/postfix/virtual
Run Code Online (Sandbox Code Playgroud)

有一个关于这两个更多信息虚拟别名映射PCRE表postfix.org


Orl*_*hev 5

这是我如何做到的

创建用户网络邮件

adduser webmail
Run Code Online (Sandbox Code Playgroud)

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

 sudo apt-get install postfix-pcre
Run Code Online (Sandbox Code Playgroud)

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

代码:

/.*/                        webmail
Run Code Online (Sandbox Code Playgroud)

编辑/etc/postfix/main.cf添加这一行:

virtual_alias_maps = pcre:/etc/postfix/virtual
Run Code Online (Sandbox Code Playgroud)

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

postmap -q test@a pcre:/etc/postfix/virtual
Run Code Online (Sandbox Code Playgroud)

将返回在虚拟文件 (/etc/postfix/virtual) 中指定的电子邮件 ID。在这种情况下。代码:

webmail
Run Code Online (Sandbox Code Playgroud)

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

mail testmail@example.com
Run Code Online (Sandbox Code Playgroud)

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

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

mail webmail
Run Code Online (Sandbox Code Playgroud)

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

tail -f /var/log/mail.log
Run Code Online (Sandbox Code Playgroud)