- 论坛徽章:
- 0
|
如何在postfix中实现下面的例子,或者说各种邮件系统如何实现:
登陆
telnet smtp.126.com 25
然后输入
helo www.126.com
之后
mail from:qdragon@126.com
提示:请先通过验证.............
完整提示:
------------------------------------
220 Coremail SMTP(Anti Spam) System (126com[030901])
helo www.126.com
250 smtp4
mail from:qdragon@126.com
553 You are not authorized to send mail as <mail from:qdragon@126.com>;, authentication is required
-------------------------------------
就是这个提示如何实现,现在我在 postfix 中的 main.cf 中加入了
smtpd_sender_restrictions = permit_sasl_authenticated reject
这样是控制 mail from 的用户必须先通过验证,但是问题来了!如果 126.com 的服务器想我发送邮件,它肯定没有什么验证信息给我验证,但是我也不能阻止它,163是如何做到的?或者问,这样的邮件系统如何实现的?
实现的最终目的:对用户在自己的机器上用 foxmail 之类的客户端发信的时候要求验证才能发送电子邮件,对于126.COM,YAHOO,HOTMAIL之类的ISP服务器的MTA不做限制。(限制mail from)
--------------------------------------------------------------------------------------------------------
在有一种说法
但是如果用 telnet 上去的话,收件人可以随意指定的!大家能否去网易看看?你用 telnet smtp.126.com 25 登陆上去看看,登陆上去之后,输入
helo 126.com
mail from:qdragon@xxx.com 然后就提示没有这个用户……
但是,如果我从一个叫做(xxx.com)的MAIL服务器发送邮件,其过程一样是
helo xxx.com
mail from:qdragon@xxx.com
rcpt to:qdragon@126.com
data.
..
quit
这样的过程,为什么它就能够发过去呢? |
|