sendmail 无法从自身进行中继

sendmail 无法从自身进行中继

我正在运行 3 个 centos 5.2 服务器,并且已将服务器配置为将所有消息转发给 root,然后通过 .forward 规则通过电子邮件发送给我。

这在两台服务器上运行良好,但在第三台服务器上却不行。

我还尝试从备份服务器复制邮件配置文件并将其放在文件服务器上,然后重新启动 sendmail。我还通过 yum 删除并重新安装了 sendmail,但结果是一样的。

我不确定问题是什么,它们都是标准的 centos 安装。

这是正在运行的备份服务器和未运行的文件服务器的一个例子,我还将包括邮件日志。

来自备份服务器

[root@backup ]# sendmail -v [email protected] < test.mail
[email protected]... Connecting to [127.0.0.1] via relay...
220 backup.localhost ESMTP Sendmail 8.13.8/8.13.8; Fri, 16 Oct 2009 10:23:50 -0700
>>> EHLO backup.localhost
250-backup.localhost Hello backup.localhost [127.0.0.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-DELIVERBY
250 HELP
>>> MAIL From:<[email protected]> SIZE=73
250 2.1.0 <[email protected]>... Sender ok
>>> RCPT To:<[email protected]>
>>> DATA
250 2.1.5 <[email protected]>... Recipient ok
354 Enter mail, end with "." on a line by itself
>>> .
250 2.0.0 n9GHNoGC020924 Message accepted for delivery
[email protected]... Sent (n9GHNoGC020924 Message accepted for delivery)
Closing connection to [127.0.0.1]
>>> QUIT
221 2.0.0 backup.localhost closing connection

文件服务器错误

[root@fileserver bernie]#  sendmail -v [email protected] < test.mail
[email protected]... Connecting to [127.0.0.1] via relay...
220 fileserver.localhost ESMTP Sendmail 8.13.8/8.13.8; Fri, 16 Oct 2009 10:23:26 -0700
>>> EHLO fileserver.localhost
250-fileserver.localhost Hello fileserver.localhost [127.0.0.1], pleased to meet you
250 ENHANCEDSTATUSCODES
>>> MAIL From:<[email protected]>
550 5.0.0 Access denied
root... Using cached ESMTP connection to [127.0.0.1] via relay...
>>> RSET
250 2.0.0 Reset state
>>> MAIL From:<>
550 5.0.0 Access denied
postmaster... Using cached ESMTP connection to [127.0.0.1] via relay...
>>> RSET
250 2.0.0 Reset state
>>> MAIL From:<>
550 5.0.0 Access denied
Closing connection to [127.0.0.1]
>>> QUIT
221 2.0.0 fileserver.localhost closing connection

邮件日志

Oct 16 10:39:13 fileserver sendmail[28059]: n9GHdDom028059: from=root, size=72, class=0, nrcpts=1, msgid=<[email protected]>, relay=root@localhost
Oct 16 10:39:13 fileserver sendmail[28060]: n9GHdDwl028060: tcpwrappers (fileserver.localhost, 127.0.0.1) rejection
Oct 16 10:39:13 fileserver sendmail[28059]: n9GHdDom028059: [email protected], ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30072, relay=[127.0.0.1] [127.0.0.1], dsn=5.0.0, stat=Service unavailable
Oct 16 10:39:13 fileserver sendmail[28059]: n9GHdDom028059: n9GHdDon028059: DSN: Service unavailable
Oct 16 10:39:13 fileserver sendmail[28059]: n9GHdDon028059: to=root, delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=31096, relay=[127.0.0.1], dsn=5.0.0, stat=Service unavailable
Oct 16 10:39:13 fileserver sendmail[28059]: n9GHdDon028059: n9GHdDoo028059: return to sender: Service unavailable
Oct 16 10:39:13 fileserver sendmail[28059]: n9GHdDoo028059: to=postmaster, delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=32120, relay=[127.0.0.1], dsn=5.0.0, stat=Service unavailable
Oct 16 10:39:13 fileserver sendmail[28059]: n9GHdDon028059: Losing ./qfn9GHdDon028059: savemail panic
Oct 16 10:39:13 fileserver sendmail[28059]: n9GHdDon028059: SYSERR(root): savemail: cannot save rejected email anywhere

答案1

如果没有更多细节,我无法确定,但我会检查 sendmail 用于邮件队列的卷是否存在权限问题。Sendmail 表现得好像它无法写入任何东西,无论是传入邮件还是退回邮件...
此外,这里有一个关于 savemail 恐慌的链接讨论您的别名文件可能需要重建。

答案2

看起来您的机器上有两个单独的设置。第一个可运行的设置提供以下服务:

250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-DELIVERBY
250 HELP

现场服务器仅具有:

250 ENHANCEDSTATUSCODES

所以我猜测这两个配置不同或者你错过了一个要安装的包。

查看两台机器并验证系统文件服务器上是否有所有数据包。然后尝试使用文件服务器上备份的 conf。(仅更改 ip 地址和主机名设置。)

顺便说一句。两台机器上的 .mc 文件可能会对您的问题有所启发 :)

也可能是文件服务器上缺少配置中引用的文件。例如 access 或 local-host-names。或者另一种情况是,文件存在,但格式不正确。某些文件需要采用哈希格式。使用 makemap hash filename < filename 来创建它们。

相关内容