0

我正在尝试在 Amazon EC2 linux 服务器上使用 Amazon SES。我尝试了一切,我已经按照所有教程进行操作,但我无法在我的应用程序上使用我的 Amazon SES 中的 SMTP。

错误:SMTP 错误:无法验证。SMTP 错误消息:SMTP -> FROM SERVER:220 email-smtp.amazonaws.com ESMTP SimpleEmailService-222567251 SMTP -> FROM SERVER: 250-email-smtp.amazonaws.com 250-8BITMIME 250-SIZE 10485760 250-STARTTLS 250-AUTH PLAIN LOGIN 250 Ok SMTP -> ERROR: AUTH not accepted from server: 530 必须先发出 STARTTLS 命令 SMTP -> FROM SERVER:250 Ok SMTP 错误:无法验证。

4

1 回答 1

1

可以用telnet建立连接吗?

该线程有很多建议: https ://forums.aws.amazon.com/message.jspa?messageID=301767

从该线程的大约 2/3 开始:

围绕 SSL 和 TLS 的术语有时在第三方文档中以不一致或令人困惑的方式使用。我相信您遇到的问题与这些库的功能集有关,而不是 SSL 和 TLS 工作方式之间的差异。建立安全连接的两种不同方式包括 STARTTLS 和握手协议。

STARTTLS 为文本协议(SMTP、IMAP、POP3 等)提供了一种在现有已建立的明文连接中使用 TLS/SSL 协商安全连接的方法。

握手协议(又名包装模式)支持在应用程序协议开始之前建立 TLS/SSL 连接。Amazon SES SMTP 接口当前需要握手协议并且不支持 STARTTLS。我们支持 SSL 3.0 和 TLS 1.0。

SSL 和 TLS 规范是有关握手协议的更多信息的良好来源: •SSL 3.0 规范 (RFC 6101) •TLS 1.0 规范 (RFC 2246) Net::SMTP::SSL 的文档声称它支持握手协议SSL,而 Net::SMTP::TLS 表明它只支持 STARTTLS 不支持 TLS 握手协议。我相信图书馆缺乏对握手协议的支持解释了为什么它不适合你。

于 2013-02-23T02:15:37.273 回答