多个 Postfix 实例抛出错误致命:未知服务:smtp/tcp

Aar*_*oir 7 freebsd postfix

我正在尝试按照README在 FreeBSD 10.0-RELEASE 上配置多个 postfix-2.12 实例。

postmulti -e init
postmulti -I postfix-out -G mta -e create
...
Run Code Online (Sandbox Code Playgroud)

这一切都有效,我可以启动和停止实例,一切似乎都很好。当我测试使用 telnet 在本地发送电子邮件时。Postfix 记录以下fatal: unknown service: smtp/tcp错误。

master.cf 中的配置文件是vanilla no chroot。

 mynetworks = 127.0.0.1/8 192.168.5.0/24
Run Code Online (Sandbox Code Playgroud)

如果我将 postfix 作为单个实例运行,一切正常。所以/etc/services当作为单个实例运行时,postfix 可以读取。

使用 postmulti 创建的 spool 目录看起来与 postfix spool dir 相同。

我一直在敲这个太久了。有没有人在 FreeBSD 上实现了多个 postfix 实例或者可以提供一些建议?

Jam*_*man 2

为了获得最佳质量的答案,您需要发布 master.cf 的内容以及有关您的配置的更多详细信息。但是,看看我的配置例如:

=================================================== =======================
# 服务类型 private unpriv chrootwakeup maxproc command + args
#(是)(是)(是)(从不)(100)
# =================================================== =========================
smtp inet n - - - - smtpd

这里我们看到 smtp 监听器运行在 chroot 环境中。该 chroot 目录中应该有 /etc/services 的可用副本:

$ grep '^smtp' $(sudo postconf -h 队列目录)/etc/services
smtp 25/tcp 邮件

如果队列目录下有etc/services文件,但内容错误,或者该文件不存在,请重新检查postfix安装说明以确保其正确执行。