我试图使用AWS SES为了测试目的从本地发送几封电子邮件。问题使用亚马逊网络服务从本地主机发送电子邮件SES
我最近改变了在AWS控制台上我的SMTP凭据,每当我尝试使用SES从我的本地应用程序发送电子邮件,该邮件没有到达收件人,并与下列头退回给发件人:
From [email protected] Sun May 29 14:58:50 2016
X-Apparently-To: [email protected]; 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: [email protected]
To: [email protected]
Message-ID: <[email protected]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:<[email protected]>
May 30 15:04:08 beta sendemail[5004]: SUCCESS => Received: 250 Ok
May 30 15:04:08 beta sendemail[5004]: INFO => Sending: RCPT TO:<[email protected]>
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: <[email protected]> To: <[email protected]> Subject: [Test] Server: [email-smtp.us-east-1.amazonaws.com:587]
...但邮件未送达,回来给发件人与以下邮件中的电子邮件地址:
An error occurred while trying to deliver the mail to the following recipients:
[email protected]
编辑2:我已经创建了一个身份p olicy如下:
{
"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/[email protected]"
}
]
}
我仍然不能发送电子邮件:同样的错误消息和电子邮件回到发件人。
编辑3:所有我在返回的邮件正文如下:
----- Mail transféré -----
An error occurred while trying to deliver the mail to the following recipients:
[email protected]
我通过使用提升的IAM凭证(根证书)修复了AWS SES的类似问题。不知道为什么我创建的SES凭证无法发送,甚至认为他们通过了IAM模拟器。还要考虑将SES切换到生产环境。在你这样做之前,环境是沙箱,这给你一些头痛。 –
@ Vini.g.fer:感谢您的评论。我无法找到提升证书的方式...... – balteo
要通过SES发送电子邮件,IAM用户必须具有附加用户的默认AmazonSesSendingAccess策略。此策略允许使用SendRawEmail操作。请参阅http://docs.aws.amazon。COM/SES /最新/ DeveloperGuide /控制用户access.html。没有其他特殊的特权是必需的。 –