【发布时间】:2016-09-27 10:53:13
【问题描述】:
我正在尝试使用 AWS SES 从本地主机发送几封电子邮件以进行测试。
我最近在 AWS 控制台上更改了我的 SMTP 凭证,每当我尝试使用 SES 从本地应用程序发送电子邮件时,这些电子邮件都不会到达收件人并退回给发件人,并带有以下标头:
From MAILER-DAEMON@us-west-2.amazonses.com Sun May 29 14:58:50 2016
X-Apparently-To: balteo@yahoo.fr; Sun, 29 May 2016 14:58:53 +0000
Return-Path: <>
Received-SPF: none (domain of a27-7.smtp-out.us-west-2.amazonses.com does not designate permitted sender hosts)
ZXIgdGhlIG1haWwgdG8gdGhlIGZvbGxvd2luZyByZWNpcGllbnRzOiBiYWx0
ZW9AZ21haWwuY29tIFJlcG9ydGluZy1NVEE6IGRzbjsgaHR0cDovL2EyNy0y
MC5zbXRwLW91dC51cy13ZXN0LTIuYW1hem9uc2VzLmNvbSBBY3Rpb246IGZh
aWxlZCBGaW5hbC1SZWNpcGllbnQ6IHJmYzgyMjsgYmFsdGVvQGdtYWlsLmNv
bSBEaWFnbm9zdGljLUNvZGU6IHNtdHA7IDU1MC01LjcuMSBVbgEwAQEBAQN0
ZXh0L3BsYWluAwMxAgNtZXNzYWdl5LXN0YXR1cwMDMQIDbWVz
c2FnZS9yZmM4MjIDAzE-
X-YMailISG: 4snxmygWLDtHybe5o15zjCZDapQTVTu4hZDcv_TW4FCtWjE7
nDyLE5rrMvq22rKmMVRtIU9m25fmKVqaIORTzaOy5PrNe8MDQhBIuhQrw6pR
dBt2Pb9jHgAmt15fpNr_6_93fWOLc.GblGJ0Kv5eRJAfQPZ3I.x1IQrHzM2U
KzhOd4LZdemwRNxyJ21xVmSVKXGdakQuJET3HOeIe.zZhfISk.d8yd.sCwYB
klU0MnNCiSh_HkXzVyOA_Yjr.DqRxR4W_LwEdE3PaFjL9cGxpxfQ1mPX5UkG
o9lVuHOkkjuXyhneDhztSnbNpe_1MDuqf8pNaG9eP.n.jRDX2hfMHGBXKekR
VtS_0qY125Hpu0ULpS2ue4tZMyDZC4nhi9aKL5_LKKyMVgRaJhZIYDw.DyyO
WgccC4BYS0AfIixDkTQHQLz9zRVVmkxYWWp7moTcCoGY.wxmK0rdFzoQmccn
1ldvx1S_f3Nr6UwZmQ.WyOHwAINKw4bA3b94UebIkr7WYWFJStRu0ZpnUr.x
gvfn7FGw4ywJ99qgLFbm8rasVkhvI2dQkCCSSvSQr67S_dd7g2k8xIixZ7qz
IR7XZxt.AUBe1gHe9nuzdci6S2gAbhjdHJyyq6WXQghrZdsBUY_Yba5oZ81f
1G0_SwvDRgw4DQ44EtCC.qcNEqiGdzjDQkowSSs1pTx3B_o.81PdjNdJshVR
b5KDfdjSYBqAFs6QEj9kpfpAMtmK9xEaiyfUXtWh5DATORu1Oy5.xOI51wG_
jLzLk1_8P1JlcvKIUpBnhn0Wy0.HKwJVeOrf3yrb.ZJtgeO7rK3xv06fucEu
AccF2zdoQPhSJpGH7IH.XnqCy6o2j37AcF6Q3wTOt90O3fzZz9YOcQK6YsfP
iEQk5uEx4sNgx92RIxXo7gXUzN_Mq9bXzq43PQs6PBfTHNbu8Zgvpg49IUcU
F9DsZpUi0681tRW7YdwhhBAbG7KKSjpuQwyK.9pv1UEj9EV5BPzagf4nH9e
0gNkuUhU6td01UREFWDZNl7Y5MQ84zP8PzolWb2iPgVggOtP1e5zxUx2m_x9
m1BPPCQyaiYafL7UIpCcczPBjIHcYbxfsla6WMEfX7qGhwVHLKAAccx0zlv.
nLL90efmyP6L_vRkllNkLGFX4SdYP6c9sgHW65rWFHvPgLAynDeJWRBemva0
iro1HgBJZfLmBeZz1SyeLreupOZxYXgmziw3jCZvzGPq9qsQkvMN_5D3gEY9
QaXjIMpoq1zXsO1L38NbrEyzeDTxKOE7aLj5tZjfeML0gw--
X-Originating-IP: [54.240.27.7]
Authentication-Results: mta1001.mail.ir2.yahoo.com from=us-west-2.amazonses.com; domainkeys=neutral (no sig); from=us-west-2.amazonses.com; dkim=neutral (no sig)
Received: from 127.0.0.1 (EHLO a27-7.smtp-out.us-west-2.amazonses.com) (54.240.27.7)
by mta1001.mail.ir2.yahoo.com with SMTPS; Sun, 29 May 2016 14:58:53 +0000
From: MAILER-DAEMON@us-west-2.amazonses.com
To: balteo@yahoo.fr
Message-ID: <01010154fd06527b-89c9140b-c9d9-49ae-af67-ff99edb17d2c-000000@us-west-2.amazonses.com>
Subject: Delivery Status Notification (Failure)
MIME-Version: 1.0
Content-Type: multipart/report;
boundary="----=_Part_1313673_1475756381.1464533930655";
report-type=delivery-status
Date: Sun, 29 May 2016 14:58:50 +0000
X-SES-Outgoing: 2016.05.29-54.240.27.7
Content-Length: 1952
有人可以帮忙吗?
编辑:
使用 linux 和 sendemail 命令行实用程序,我得到了这个:
May 30 15:04:02 beta sendemail[5004]: DEBUG => Connecting to email-smtp.us-east-1.amazonaws.com:587
May 30 15:04:07 beta sendemail[5004]: DEBUG => My IP address is: 192.168.1.15
May 30 15:04:07 beta sendemail[5004]: SUCCESS => Received: 220 email-smtp.amazonaws.com ESMTP SimpleEmailService-1463334051 hUc4mRbRHsRMfbM41cQq
May 30 15:04:07 beta sendemail[5004]: INFO => Sending: EHLO beta
May 30 15:04:07 beta sendemail[5004]: SUCCESS => Received: 250-email-smtp.amazonaws.com, 250-8BITMIME, 250-SIZE 10485760, 250-STARTTLS, 250-AUTH PLAIN LOGIN, 250 Ok
May 30 15:04:07 beta sendemail[5004]: INFO => Sending: STARTTLS
May 30 15:04:07 beta sendemail[5004]: SUCCESS => Received: 220 Ready to start TLS
May 30 15:04:07 beta sendemail[5004]: DEBUG => TLS session initialized :)
May 30 15:04:07 beta sendemail[5004]: INFO => Sending: EHLO beta
May 30 15:04:07 beta sendemail[5004]: SUCCESS => Received: 250-email-smtp.amazonaws.com, 250-8BITMIME, 250-SIZE 10485760, 250-STARTTLS, 250-AUTH PLAIN LOGIN, 250 Ok
May 30 15:04:07 beta sendemail[5004]: DEBUG => SMTP-AUTH: Using LOGIN authentication method
May 30 15:04:07 beta sendemail[5004]: INFO => Sending: AUTH LOGIN
May 30 15:04:08 beta sendemail[5004]: SUCCESS => Received: 334 VXNlcm5hbWU6
May 30 15:04:08 beta sendemail[5004]: INFO => Sending: QUtJQUpMNlRZU0ZGNFdMM00zN1E=
May 30 15:04:08 beta sendemail[5004]: SUCCESS => Received: 334 UGFzc3dvcmQ6
May 30 15:04:08 beta sendemail[5004]: INFO => Sending: QW1zdkJ0WUMxaStFS2R2Z05Hcm1hVEw4T1RzTXdZTDdZRTZqNFU3QjJ5R0w=
May 30 15:04:08 beta sendemail[5004]: SUCCESS => Received: 235 Authentication successful.
May 30 15:04:08 beta sendemail[5004]: DEBUG => User authentication was successful (Method: LOGIN)
May 30 15:04:08 beta sendemail[5004]: INFO => Sending: MAIL FROM:<balteo@yahoo.fr>
May 30 15:04:08 beta sendemail[5004]: SUCCESS => Received: 250 Ok
May 30 15:04:08 beta sendemail[5004]: INFO => Sending: RCPT TO:<balteo@gmail.com>
May 30 15:04:08 beta sendemail[5004]: SUCCESS => Received: 250 Ok
May 30 15:04:08 beta sendemail[5004]: INFO => Sending: DATA
May 30 15:04:08 beta sendemail[5004]: SUCCESS => Received: 354 End data with <CR><LF>.<CR><LF>
May 30 15:04:08 beta sendemail[5004]: INFO => Sending message body
May 30 15:04:08 beta sendemail[5004]: Setting content-type: text/plain
May 30 15:04:08 beta sendemail[5004]: SUCCESS => Received: 250 Ok 0100015501c3abd4-f72c75e4-d159-48ad-aa8e-0ce1ff48493a-000000
May 30 15:04:08 beta sendemail[5004]: Email was sent successfully! From: <balteo@yahoo.fr> To: <balteo@gmail.com> Subject: [Test] Server: [email-smtp.us-east-1.amazonaws.com:587]
...但电子邮件未送达并返回给发件人,并在电子邮件中包含以下消息:
An error occurred while trying to deliver the mail to the following recipients:
balteo@gmail.comOK
edit 2:我创建了如下身份策略:
{
"Version": "2008-10-17",
"Statement": [
{
"Sid": "stmt1464615598531",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::004523851570:root"
},
"Action": [
"ses:SendEmail",
"ses:SendRawEmail"
],
"Resource": "arn:aws:ses:us-east-1:004523851570:identity/balteo@yahoo.fr"
}
]
}
我仍然无法发送电子邮件:同样的错误消息和电子邮件返回给发件人。
编辑 3:返回的电子邮件正文中的所有内容如下:
----- Mail transféré -----
An error occurred while trying to deliver the mail to the following recipients:
balteo@gmail.comessai
【问题讨论】:
-
我通过使用提升的 IAM 凭证(根凭证)修复了 AWS SES 的类似问题。不知道为什么我创建的 SES 凭证无法发送,即使它们通过了 IAM 模拟器也是如此。还可以考虑将 SES 切换到生产环境。在你这样做之前,环境是沙盒的,这让你有些头疼。
-
@Vini.g.fer:感谢您的评论。我无法找到提升凭据的方法....
-
要通过 SES 发送电子邮件,IAM 用户必须为用户附加默认的 AmazonSesSendingAccess 策略。此策略允许 ses:SendRawEmail 操作。见docs.aws.amazon.com/ses/latest/DeveloperGuide/…。不需要其他特殊权限。
-
上述邮件中是否有邮件正文?我没有看到一个。它可能包含一些有用的东西。例如错误消息或更多详细信息。
-
是的,我确实在电子邮件中有正文。
标签: amazon-web-services amazon-ses