Solaris 服务器上的 sendmail SMTP 中继?

Solaris 服务器上的 sendmail SMTP 中继?

如何检查 Solaris 服务器中是否为 smtp 中继配置了 sendmail 选项

答案1

在 /etc/mail/sendmail.cf 或 /etc/mail/submit.cf 中搜索“DS”。这通常是配置的位置。

答案2

我想你想知道的是“我如何知道 sendmail 是否配置为中继”,如果不正确,我很抱歉。SMTP 在那里是多余的,因为它是中继

检查您使用的 sendmail 版本。如果您使用的是 8.9.3 或更早版本,则默认情况下您可能正在中继。如果您运行的是较新版本,则可能不是。

Sendmail 配置很复杂,但将 sendmail 配置为中继可能是最常见的任务之一。我会告诉您查看文件/etc/mail/sendmail.mc,即“可读”文件,但人们倾向于将拜占庭原始文件 (sendmail.cf) 从一台机器复制到另一台机器,因此您无法确定 cf 和 mc 文件是否相同。如果您够勇敢,您可以仔细查看 sendmail.cf 文件并查找以 DR、DH、CM 或 DM 宏标志开头的域(通常在启用中继时出现)...是的,这很糟糕。更简单的方法是查看 sendmail.cf 文件之外的内容。

首先检查/etc/mail/access/etc/mail/relay-domains文件,看看它们是否被篡改过。如果这些文件中确实有非本地条目,则可能是有人设置了某种中继。如果它们是空的,则很可能没有中继(如果有中继,则它是一个开放中继,这会很可怕)。很多时候会在那里设置 localhost 等。这只是为了让您可以发送本地邮件。

测试开放中继的最简单方法就是尝试发送消息。

创建用于远程交付的测试文件test_file,内容如下:

To: [email protected]
From: root@your_box.com
Subject: TEST MAIL.

This is a Header Test
(empty line)

保存,然后输入以下内容:

cat test_email | /usr/lib/sendmail -bm -t -v 

如果无法对主机进行反向查找,许多网站都会拒绝邮件,因此如果您的主机无法解析,您可能需要尝试几次。

如果您仍然不知道,您将不得不学习如何仔细阅读 cf 文件(或将其展示给可以阅读的人)。希望这至少能有所帮助。

相关内容