14

我对 AWS 比较陌生,但我想弄清楚如何让 AWS 接收电子邮件。根据这篇文章How to configure email accounts like support@xyz.com or feedback@xyz.com on AWS SES 仅处理出站电子邮件。

我希望实现的是过滤别名的能力。例如,如果别名是“xyz12alias”,那么任何发送到“xyz12alias@mydomain.co”的电子邮件都可以看到该电子邮件并适当地处理内容。在我的情况下,它将存储在与过滤器关联的帐户中。

任何人都可以指导我使用 AWS 中允许我在 Amazon AWS 上实施入站电子邮件的策略或服务吗?

https://postmarkapp.com/inbound似乎给了我想要的东西,但是 AWS 框架本身有什么东西吗?postmarkapp 是否有替代服务?

谢谢。

4

5 回答 5

10

Amazon Simple Email Service 刚刚引入了传入电子邮件支持:

https://aws.amazon.com/about-aws/whats-new/2015/09/amazon-ses-now-supports-inbound-email/

除了提供可扩展、经济高效的电子邮件发送平台外,Amazon SES 现在还可以接受您的传入电子邮件。您可以配置 Amazon SES 以将您的消息传送到 Amazon S3 存储桶,通过 AWS Lambda 函数调用您的自定义代码,或者将通知发布到 Amazon SNS。您还可以将 Amazon SES 配置为丢弃或退回您不想接收的消息。如果您选择将消息存储在 Amazon S3 中,Amazon SES 可以在将邮件写入存储桶之前使用 AWS Key Management Service (KMS) 对其进行加密。

您可以通过定义使用 Amazon SES 控制台或 Amazon SES API 设置的接收规则来配置所有这些操作。接收规则使单个消息能够触发多个操作。您的规则可以根据您的选择广泛或具体,因为您可以将它们配置为应用于特定的电子邮件地址或整个域。

您还可以使用接收规则来控制 Amazon SES 可以代表您接受哪些消息。另一种过滤方法是设置自定义 IP 地址阻止列表和允许列表。如果您知道不想接收来自特定 IP 地址范围的邮件,只需将其添加到您帐户的 IP 地址阻止列表中即可。您还可以通过将 IP 地址范围添加到您的允许列表来覆盖阻止列表,这可以对您的入站电子邮件流量进行细粒度控制。

于 2015-09-29T11:38:47.020 回答
5

您必须设置自己的服务器;这就是使用 AWS 处理它的方法。除了批量电子邮件递送服务外,他们不提供任何其他服务。下面几个链接:

http://jeffreifman.com/how-to-install-your-own-private-e-mail-server-in-the-amazon-cloud-aws/

http://cerebellumstrategies.com/2012/04/15/amazon-linux-postfix-dovecot/

更新:AWS 中现在有一个可用的解决方案,如下面的评论中所引用的。

于 2013-11-25T22:52:48.800 回答
2

在 SES 上似乎仍然不可能。不过,我建议您查看 Mandrill 和 Sendgrid。

http://mandrill.com/features/

https://sendgrid.com/docs/API_Reference/Webhooks/parse.html

于 2014-05-01T15:52:06.037 回答
2

以下是如何使用 Amazon 和任何虚拟服务器将电子邮件从 SES 传送到本地 IMAP 帐户。这个计划是关于稳定运行的:每一步都在我们的控制之下。

  1. 让 SES 接收电子邮件
  2. 并传递到 S3 存储桶并将通知发送到 SNS 主题
  3. 使用 HTTPS 协议订阅该通知
  4. 使用 aws/aws-php-sns-message-validator 并编写一个小的 PHP 脚本以通过 HTTPS 从 SNS 接收通知
  5. SNS 只发送消息 ID-s,把它们放在一个文件中
  6. 在您的服务器上安装 incron 以启动一个 shell 脚本,该脚本通过 s3cmd 从 S3 存储桶下载这些消息并通过 sendmail 传递到本地 IMAP 帐户
  7. 使用任何 IMAP 服务器,我使用 Courier IMAP
  8. 使用例如 Rainloop 网络邮件阅读您的消息
  9. 也使用 SES 发送外发电子邮件
于 2017-07-17T01:27:08.860 回答
0

When using AWS SES inbound mail support, main challenge is that, it fits well for programmatic tasks, but hardly human readable since it receives in raw message delivered format.

You you can setup a S3 bucket, SNS Topic (Which could again links to Email, SMS & etc.), Lambda to forward the inbound mail with the same format it receives to take any programmatic actions based on the content of the email.

If you want read the message in human readable format, you need to write your own code to do the formatting. For example using Serverless lambda SES forwarder includes, NodeJS code runs in Lambda to convert raw email to human readable format and forward to recipient email.

于 2017-07-17T02:04:07.443 回答