【发布时间】:2018-06-12 06:09:51
【问题描述】:
我正在按照Documentation 中列出的步骤进行操作,我可以成功连接,但尝试实际发送电子邮件会收到 250 Ok 响应,但没有消息 ID,也没有消息发送到我的收件箱。
openssl s_client -crlf -starttls smtp -connect email-smtp.us-east-1.amazonaws.com:587 0<input.txt
CONNECTED(000002F4)
depth=3 C = US, ST = Arizona, L = Scottsdale, O = "Starfield Technologies, Inc.", CN = Starfield Services Root Certificate Authority - G2
verify error:num=20:unable to get local issuer certificate
---
Certificate chain
0 s:/CN=email-smtp.us-east-1.amazonaws.com
i:/C=US/O=Amazon/OU=Server CA 1B/CN=Amazon
1 s:/C=US/O=Amazon/OU=Server CA 1B/CN=Amazon
i:/C=US/O=Amazon/CN=Amazon Root CA 1
2 s:/C=US/O=Amazon/CN=Amazon Root CA 1
i:/C=US/ST=Arizona/L=Scottsdale/O=Starfield Technologies, Inc./CN=Starfield Services Root Certificate Authority - G2
3 s:/C=US/ST=Arizona/L=Scottsdale/O=Starfield Technologies, Inc./CN=Starfield Services Root Certificate Authority - G2
i:/C=US/O=Starfield Technologies, Inc./OU=Starfield Class 2 Certification Authority
---
Server certificate
-----BEGIN CERTIFICATE-----
<super long server certificate>
-----END CERTIFICATE-----
subject=/CN=email-smtp.us-east-1.amazonaws.com
issuer=/C=US/O=Amazon/OU=Server CA 1B/CN=Amazon
---
No client certificate CA names sent
Peer signing digest: SHA512
Server Temp Key: ECDH, P-256, 256 bits
---
SSL handshake has read 5292 bytes and written 469 bytes
---
New, TLSv1/SSLv3, Cipher is ECDHE-RSA-AES256-GCM-SHA384
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
Protocol : TLSv1.2
Cipher : ECDHE-RSA-AES256-GCM-SHA384
Session-ID: 5B1EDC39B0B80D50AEAEF28A1F7E49846B77A4B9FF5A7BA347A620F56F9D0FE8
Session-ID-ctx:
Master-Key: <Long master key>
Key-Arg : None
PSK identity: None
PSK identity hint: None
SRP username: None
Start Time: 1528749113
Timeout : 300 (sec)
Verify return code: 20 (unable to get local issuer certificate)
---
250 Ok
421 Timeout waiting for data from client.
closed
让我担心的主要事情是:Verify return code: 20 (unable to get local issuer certificate) 在文档中的任何地方都没有提到,这让我想知道我是否应该发送某种证书。我的输入文件如下所示:
EHLO domain.com
AUTH LOGIN
smtp_username
smtp_password line 1
smtp_password line 2
MAIL FROM: verified_email1@domain.com
RCPT TO: verified_email1@domain.com
DATA
From: Sender Name <verified_email1@domain.com>
To: verified_email1@domain.com
Subject: Amazon SES SMTP Test
This message was sent using the Amazon SES SMTP interface.
.
QUIT
有人知道我做错了什么吗?我正在尝试在 Windows 10 操作系统上使用适用于 Windows 的 openssl 执行此操作,如果这可能是问题,但考虑到我一直到 250 好的事实,我认为这不是问题。
【问题讨论】:
-
您为什么要直接与 SMTP 通信?有很多图书馆 - 都不合适吗?我看到的最大问题是
421 Timeout waiting for data from client.- 您的 curl 命令/Windows 上的某些内容不正确。 -
@stdunbar 421 超时来自 QUIT 命令在 windows openSSL 中不起作用。亚马逊论坛明确表示这是一个可能的问题。我查了一下,因为我也是这么想的。而且我只是在尝试测试以确保它完全有效,因为第三方尝试也没有奏效,所以我尽可能地降低了水平,试图让某些事情发生。
-
@stdunbar 更正:您实际上可能是正确的。为了验证我尝试按照亚马逊论坛推荐的方式运行,但它不起作用,但我不明白为什么我会超时,因为我遵循了指南中指定的命令
标签: amazon-web-services amazon-ec2 amazon-simple-email-service