【发布时间】:2021-01-23 18:00:52
【问题描述】:
我正在开发 smtp 服务器,有一个关于 smtp 握手的问题我不明白。
#1。邮件客户端(outlook)-> 我的 SMTP 服务器 EHLO - 授权 - 从 - 到 - 数据 - 退出 这是 smtp 中继请求。我的 smtp 服务器接受请求并将邮件传递到其他邮件服务器。
#2。其他 SMTP 服务器 -> 我的 SMTP 服务器 EHLO - 从 - 到 - 数据 - 退出 我理解 SMTP 服务器之间的 smtp 流如下。在这种情况下不需要 AUTH 命令,因为 AUTH 命令是用于客户端向 smtp 服务器发送请求中继的身份验证。
#1、#2 是我理解的 SMTP 流程。我很好奇的是我的 smtp 服务器如何确定这个请求是来自客户端还是来自服务器。我想通过它来决定是否执行AUTH命令。
如果我的想法是错误的,请不要笑太多,我请求一个善意的解释。 谢谢。
【问题讨论】:
-
垃圾邮件发送者会制作任何东西来绕过任何类型的限制。所以他们可以“冒充”服务器,对吧?基本上 smtp 服务器使用反向 dns 解析来检查远程 IP 是否有权发出或中继消息。
标签: smtp protocols smtpclient