【问题标题】:Is there a way I can tell whether an SMTP server is expecting a client to connect using "implicit" SSL versus "explicit" SSL?有没有办法可以判断 SMTP 服务器是否期望客户端使用“隐式”SSL 与“显式”SSL 进行连接?
【发布时间】:2010-09-15 10:15:44
【问题描述】:

SSL 可以是“显式”或“隐式”,如此链接所述:

http://help.globalscape.com/help/secureserver2/Explicit_versus_implicit_SS.htm

System.Net.Mail 仅支持“显式”SSL,如下所述:

http://blogs.msdn.com/webdav_101/archive/2008/06/02/system-net-mail-with-ssl-to-authenticate-against-port-465.aspx

所以,我正在尝试使用 System.Net.Mail 连接到我无法控制的 SMTP 服务器,但它失败了。我怎么能确定它失败了,因为服务器想要一个“隐式”SSL 连接?我可以从客户端进行哪些测试?

【问题讨论】:

    标签: .net ssl smtp system.net


    【解决方案1】:

    通常这是由约定管理的。在端口 25(正常情况)上运行的 SMTP 使用显式 SSL。在端口 465 上运行的 SMTPS 使用隐式 SSL。在端口 587 上运行的邮件提交使用显式 SSL。

    为了确定,telnet 到端口,如“telnet mail.example.com 25”。如果您看到服务器标识自己的纯文本横幅,那么您正在处理显式 SSL。如果您连接成功但什么也看不到,那么您正在处理隐式 SSL。

    【讨论】:

    • 我已经对侦听端口 465 的邮件服务器进行了测试。首先,我尝试使用显式 ssl 发送电子邮件但没有成功。当我手动使用 telnet 时,横幅以纯文本形式显示,但是成功发送电子邮件的方法是使用隐式 SSL。我想你所说的并不是在所有情况下都是完整的。
    猜你喜欢
    • 2010-10-22
    • 2013-02-15
    • 2015-05-15
    • 1970-01-01
    • 1970-01-01
    • 2019-11-01
    • 2015-05-21
    • 1970-01-01
    • 2020-01-27
    相关资源
    最近更新 更多