qmail 错误,允许开放中继到本地地址

qmail 错误,允许开放中继到本地地址
Last login: Wed Jun 22 14:02:11 on ttys001
BASH$ telnet domain.com 25
Trying xxx.xx.xxx.xxx...
Connected to domain.com.
Escape character is '^]'.
220 hostname.com ESMTP
helo
250 hostname.com
mail from: <[email protected]>
250 ok
rcpt to: <[email protected]>
553 sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1)
rcpt to: <[email protected]>
250 ok  ***********<---------------------- OK??!?

正如您所看到的,qmail 阻止向外部地址发送邮件的尝试,但是允许未经身份验证的用户向服务器上的本地地址发送邮件却没有任何问题。如果有人想发送病毒或阻塞服务器上的电子邮件帐户,这可能会带来问题。

有人能推荐一个解决方案吗?我指出这是一个错误,对吗?

最好的,丹尼尔

答案1

SMTP 从未要求人们在向本地计算机上的帐户发送电子邮件之前进行身份验证。这根本不是一个错误。否则,SMTP 服务器如何接收电子邮件并将其发送到您托管电子邮件的域?

答案2

正如 X-Istence 所说,这个问题从根本上就是假的。 哪有这回事中继到本地托管的邮箱。这是一个概念错误。要么邮箱是远程的,在这种情况下邮件必须存储并转发(即中继)到它,要么邮箱是本地的,在这种情况下根本不会进行中继,因为系统是邮件的最终目的地。

rcpthosts,定义 SMTP 中继服务器 ( qmail-smtpd) 将接受哪些域作为信封收件人邮箱,通常为所有本地托管域和允许中继邮件的所有域的并集。它允许将来自外部世界的消息发送到本地托管的邮箱并不是错误。它按设计工作。如果您不希望外部世界能够向您发送邮件,不要运行 SMTP 中继服务器. 运行 SMTP 中继服务器意味着您希望外界能够向您发送邮件。

授权的概念显然适用于当地的您拥有用户数据库的用户,因此适用于 SMTP 提交,而不适用于 SMTP 中继。如果您对老式邮件注入协议认为 SMTP 中继涉及授权(当然,您没有办法拥有一个用户数据库,列出可能想要向您发送邮件的南非、印度或法国的任意人员),那么您需要重新熟悉 SMTP 提交和 SMTP 中继之间的区别。这是 21 世纪;我们现在知道服务分离;我们不应该再使用 OFMIP 范例了。

相关内容