EC2でのメールサーバー構築が厄介だった話

エンジニア 上田
2021年11月29日

EC2上にメールサーバーを立てる時の注意点

EC2にpostfixを立ち上げたのですが、色々ハマりどころがあったので共有します。
AWS上で使用する上で特別にする必要のある作業として

EC2の25番ポート開放

デフォルトの状態ではスパム対策のため25番ポートは閉じられておりコンソールから開放することもできません。
https://aws.amazon.com/jp/premiumsupport/knowledge-center/ec2-port-25-throttle/
Email送信制限解除を申請する必要があります。営業日であれば1~2日で返信が返ってきました。

逆引きDNS申請

メールーサーバーを立ち上げる場合SPF認証を行うためElastic IPからIPを割り当てるが、Elastic IPは悪用に備えてメールサーバーのブラックリストに登録されており、迷惑メール判定を受けます。
迷惑メール判定の解除と、逆引きDNSレコードの登録のためにまた別途申請が必要です。
これも営業日であれば1~2日で返信が返ってきます。
https://aws.amazon.com/jp/premiumsupport/knowledge-center/route-53-reverse-dns/
「Amazon VPC でホストされている SMTP サーバーの使用」を参照 

Gmailへ送信する際の迷惑メール判定

GoogleはGmailの迷惑メール判定の基準を公開しています。
https://support.google.com/mail/answer/81126?hl=ja

メールが迷惑メールに分類される可能性を最小限に抑えるには、次の認証方法を設定します。
ドメインの SPF レコードを公開します。SPF は、ご使用のドメインを送信元としてスパマーが未認証のメールを送信することを防ぎます。
メールの DKIM 署名を有効にします。受信サーバーは DKIM を使用して、実際にメールを送信したのがドメイン所有者であることを確認します。重要: Gmail では 1,024 ビット以上の DKIM キーが必要です。
ドメインの DMARC レコードを公開します。DMARC は、送信者がメールのなりすましからドメインを保護できるようサポートします。

私の場合、AWSで逆引きDNSを設定した後、上の3つを設定すれば迷惑メール判定が解除されました。しかし、「Google 迷惑メール判定」で検索すると上の3つの認証を行った場合でも迷惑メール判定される場合があるそうので、その場合は上のページから「メール送信に関する問題のトラブルシューティング」のリンクに飛んで個別にお問い合わせをGoogleに送ることができます。
但し、お問い合わせなのでGmailに迷惑メール判定が解除されるかどうかはお祈りになる可能性が高いので期待できません。

Outlookで管理されているドメインへのメール送信

また上述した
・ DNSの逆引き申請
・ SPFレコード
・ DKIM署名
・ DMARCレコードの公開
を行った上でもOutlookで管理されているドメインにメールを送るときは迷惑メール判定されたのでEC2サーバーからメールを送信したい場合は注意が必要です。

IaaSの推奨

以上、EC2サーバーからメールを送信しようとしたときに、通常のサーバーからメール送信する場合以上に気をつける必要のあるとの内容でした。
メールサーバーをホストするのは迷惑メール判定を受けないためにある程度のコストが必要で、ランニングコストを考慮に入れてもSendGridやSESなどのIaaSサービスを利用した方が良いと今では考えています。
特にC向けでないサービスではSESの利用料金は相当安くなるのでなにか要件に制約がない場合はこちらを利用する予定です。

2021年11月29日

エンジニア 上田 | ,

« »
このページのトップへ