请给我介绍一下SMTP认证的大致情况,记住以下几点。
当有人问“您使用的是什么身份验证?”
他们指的是什么?SMTP协议的哪种变体,如ESMTP和先弹出后SMTP?
有多少种变体?在这些协议中,我读到了诸如身份验证机制(Auth login,Auth plain,CRAM-MD5)之类的东西?
有人能在这里从更广泛的层面上阐明一些问题吗?
发布于 2012-09-05 15:44:51
这里有很多层次和很多方面。存在多个相关的ESMTP扩展和多个身份验证方案。
连接方式会影响到哪种身份验证方案是有意义的。一般来说,如果您有一个加密的连接,明文密码是没有问题的,因为连接级加密负责防止窃听。
如果您没有加密连接,理想情况下,您根本不想以任何形式传输密码。存在涉及质询-响应机制或会话口令交换的各种认证方案,以便即使在未加密的信道上也安全地进行认证。
SMTP之前的POP曾经很流行,因为没有足够的标准来验证SMTP。如今,它应该仅仅被认为是历史的,尽管可能仍然有一些网站在使用这种机制。其思想是将身份验证推迟到POP协议,该协议无论如何都需要用户身份验证;然后,当用户通过POP进行身份验证时,SMTP端口也会在有限的时间内从相同的IP地址被允许。显然,如果用户没有或不想使用POP,这是很麻烦的,而且一些用户在NAT上,因此远程服务器看到的IP地址不是唯一的他们的IP地址,但是曾经,这种安排非常自然地适合人们如何使用他们自己的ISP的POP和SMTP服务通过拨号PPP连接到Internet。
目前,对于新系统,默认设置应该是根据RFC6409设置单独的加密和身份验证邮件提交代理端口587。一些系统通过加密通道在端口465上运行传统的SMTP服务器,但这应该被视为传统的安排。
进一步查看http://en.wikipedia.org/wiki/SMTP_Authentication和http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol,这两个都是我在这篇文章中非常依赖的。
https://stackoverflow.com/questions/12266381
复制相似问题