Amazon SESを使用してEメールを受信する方法


18

Amazon Web Services(AWS)とAWS Simple Email Service(SES)は初めてです。

AWS SESでは、アプリがメールを受信できますか?SES開発者ガイドにリファレンスが見つかりませんでした。

私のアプリでは、顧客ごとに受信した電子メールを顧客ごとに識別する必要があり、最終的にそれらはデータベースに(プログラムで)保存されます。すべての顧客は、アプリをホストしているドメインでメールを受け取ります。

たとえば、アプリがwww.example.comAWSでホストされているとします。そして、このmyappというのお客様には、のような電子メールを持つことができますjohn@example.combarry@example.comlisa@example.comそのような。

AWS SESでこれが不可能な場合は、AWS環境でこれをどのように行うことができるかについての代替案(大量メール送信用)を提案してください。


待つ。送信または受信について話しているのですか?
mailq

回答:


9

AmazonのSESは、メールの送信専用です。電子メールを受信する場合は、EC2サーバーインスタンスでSendmail、Postfix、Qmailなどのメールトランスポートエージェント(MTA)をセットアップし、DNS MXレコードがそのインスタンスを指すようにする必要があります。この場合、静的IPを使用するためにElastic IP(EIP)を使用する必要がある可能性もあります。言うまでもなく、特定のDNSBLによってブロックされる可能性のあるIPアドレス範囲を見つけることになります。

AWS内でメールを受信することは控える傾向があり、専用の同じ場所に配置されたサーバーまたはVPSの外部でメールサーバーを受信する傾向があります。


22
これはもはや真実ではありません。Amazon SESの新しいアップデートには、さまざまな方法でEメールを保存できる受信ルールが追加されています。
エレガント。

1
aws.amazon.com/ses(最初の2行を読んでください)はまだ事実です。SESには受信ルールを使用して電子メールを受信する機能がありますが、従来のメールボックスまたは個人のメールボックスとして指定することはできません。
アドナン

41

今日はあなたの大切な日です!AWS SESがメール受信を開始しました:https : //docs.aws.amazon.com/ses/latest/DeveloperGuide/receive-email.html

これは、個人用メールボックスとして使用するように設計されていないことに注意してください。現在の設定では、自動受信メールの完璧なプラットフォームが作成されます。生成されたレポート(銀行のメッセージ、DMARCレポート、電子請求書など)の自動プロセスに最適

たとえば、S3に保存されたメッセージは次のとおりです。https//s3-eu-west-1.amazonaws.com/s3.jakub-boucek.cz/temp/lts0ahe3tucqpoii4ji0g0u3u08nrpuk1g0p3bo1とこれは、httpsエンドポイントに配信される通知の出力です:http : //pastebin.com/yR3RjjkE


1
素晴らしい発見、ヤクブ。私はまだこれについての発表を見ていませんでした。
EEAA

1
SESのセットアップが複雑であることがわかりました。誰でも簡単なチュートリアルを特定しましたか?Gmailをサービスのクライアントとして構成できますか?
16年

こんにちは@blongはい、SESは非常に複雑です。Gmail(または別のプロバイダー)をこのための「クライアント」として作成することはできません。これは従来の受信トレイではなく、SESは受信メール用のマシンプロセッサです。SESを使用してメール Gmailにリダイレクトできます。しかし、それも簡単ではありません。AWS Lambda SES Email Forwarderプロジェクトをご覧ください。
-JakubBoucek

こんにちは@JakubBoucek、私の質問に答えてくれてありがとう。別のアプローチを見つける必要があるようです。:ここで私は考えるかもしれ何かsimplyian.com/2015/01/07/...
blong

1
@ limasxgoesto0次のような任意のMIMEパーサーを使用します。github.com
nodemailer

3

更新:この回答を投稿した後、AmazonはSESを介したメールの受信のサポートを追加しました。自動処理用に設計されており、一般的なIMAPメールボックスとしては使用できません。詳細については、https://docs.aws.amazon.com/ses/latest/DeveloperGuide/receive-email.htmlを参照してください。

時代遅れ

Amazon SESは、メールの送信専用です。

(出典:http : //aws.amazon.com/ses/

Amazon Simple Email Service(Amazon SES)は、企業および開発者向けの高度にスケーラブルで費用対効果の高いバルクおよびトランザクションメール送信サービスです。

メールの受信はそれほど難しくありません。スパム対策のハードルがすべてあるため、メールを送信するよりも間違いなく簡単です。仮想ユーザーでPostfixサーバーを設定するのはどうですか?どのようなボリュームを考えていますか?


2
ダウン票をいただいた場合、その理由についてコメントをいただければ幸いです。この回答が書かれた時点(4年前)では、間違いではありませんでした。
マーティンヒーメルズ

...そのとおりです。答えは投稿された時点では間違っていませんでした。しかし、今日、情報は間違っています。したがって、反対票はあなたに関するものではなく、情報に関するものです。正しい情報での編集または更新を検討してください。(単なる提案)
-agentv

2

Amazon SESは送信専用であり、メールを受信することはありません(バウンスのみ)。

送信者のメールアドレスが有効であることを確認する必要があります。これがどのメールアドレスになるかはあなた次第です。Freemail-Accounts、EC2のメールサーバーのアカウント、会社のメールサーバーのアカウント、または所有している任意のメールアカウントを持つことができます。しかし、それはあなたのものでなければなりません。


0

私が見つけた最良のアプローチは、「dovecot」メールサーバーをローカルにインストールすることです。127.0.0.1およびMaildirでリッスンするように調整します。

listen = 127.0.0.1
# mail_location = mbox:~/mail:INBOX=/var/mail/%u # Comment this and add next:
mail_location = maildir:~/Maildir

次にインストールする s3fs

sudo apt install s3fs
sudo echo "s3fs#mailbox-konkove /home/kes/Maildir/new fuse _netdev,allow_other,profile=mail,uid=1000,gid=1000,use_cache=/tmp/S3,defaults,noatime,endpoint=eu-west-1 0 0" >> /etc/fstab

AWSを構成する CLI

~/MaildirIMAPプロトコル経由でメールを取得するようにメールクライアントを設定します

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.