📘

独自ドメインでメールを使えるようにしてみた(送信編)

2021/05/03に公開

独自ドメインでメールを送信できるようにした

お名前.comで独自ドメインを取得した。その独自ドメインでGCPの組織を設定したが、そのドメインのメールアドレスでメールが来る可能性もあるのでメールアドレスを使えるようにしてみました。
そのままお名前.comでメールサーバを契約しても良かったが、せっかくなので以前から使ってみたかったAWS SESを使ってみた。(自分の規模感くらいだったら転送量以外無料ってのもアツイ!)
Amazon Simple Email Service (SES)の料金

また、せっかくなので勉強ついでにDKIM、DMARCにも対応してみました。
DMARCとは

Amazon SESとは?

メールの送信に必要なMTAはpostfixなどを使って自分で建てることもできますが、その性質上公開する必要があるため、標的にされやすく、設定などをうっかり間違えるとスパムの踏み台サーバになってしまうことも。
そういった設定をまるっとamazonに任せてしまおうというフルマネージド型/サーバレス型のEメールサービスです。

注意点

  • Amazon SES を使用した E メールの受信 にあるように、あくまでMTAの提供をしてくれるだけなので、POPやIMAPをやってくれるわけじゃなく。そのままではoutlookなどで使うことはできません。
  • 今回は後編で受信もしたいのでリージョンをバージニア北部にしておく。東京リージョンがまだこの受信機能に限っては実装されていません。

Amazon SES の設定手順

下記の通り、コンソールからSESを選択しDomains→Verify a New Domainを選択する

DKIM鍵を一緒に作成したいので設定しておきます。
「Verify This Domain」を押下します。

Route53もしくはDNSに設定する内容が出てきます。
今回はこの独自ドメインをちょうどRoute53で管理していたので「UseRoute53」を押下します。

MXレコードを書き換えてもいい?っていうWARNINGが出ます。今回は初めてMXレコードを登録するのでそのままチェックをつけて進みます。 注意 すでにMXを設定している場合も遠慮なく書き換わってしまうのできちんと確認してからにしましょう

設定直後は確認できていませんが時間がたつと確認され有効になります。

数分後

テストメールの送信について

きちんと設定できているかどうか?DKIMが有効になっているかを外部のアドレスに対してテストメールを送信して確認してみます。

テスト用のメールを設定します

まず、テストメール送信先のアドレスが自分のものという設定を行います。
テスト用のメールアドレスを設定します。



設定したメールアドレスにAWSからメールが送信されます。
受信したメールの中にリンクがあるのでそのリンクを24h以内に押下します。

すると確認済みにステータスが変化して、テスト用のメールアドレスができるようになります。

テスト用のメールが設定できたらドメインからテストメールを送信してみます

設定がうまくできているかを下記からテストメールを送信してテストすることが出来ます。

テストメールを送信してみます。TOに先程設定したテスト用のメールアドレスを設定します。

送信されたメールでSPFやDKIMが有効になっているかを確認できます。
下記はgmailに送られたメールでメッセージのソースを表示で表示される画面です。

DMARCの設定

更にDMARCにも対応させます。DMARCに対応させるために独自のMail Fromを設定させます。

MAIL FROM Domainの設定


mailのfrom domainを設定します。ドメインを入力し、Set MAIL FROM Domainを押下します。

MXとTXTが発行されるので設定します。
Route53を使用していれば自動的に設定してくれます。

MXとSPFにチェックをつけてCreate Record Setsを押下します。
押下するとMXとSPFが作成されます。

DMARCのTXTレコード設定

このあと、自分でDMARC用のTXTレコードを下記を参考にして設定します。
https://docs.aws.amazon.com/ja_jp/ses/latest/DeveloperGuide/send-email-authentication-dmarc.html#dmarc-dns
上記に書いてあるように
_dmarcという名前のTXTレコードを設定します。ここでは下記のように設定しました。

DMARCのテスト

DMARCが効いているかを先程と同じくテストメールを送って試します。
下記画像のように新たにDMARCがPASSできていれば成功です。

メールの受信について

メールの受信は次の記事で設定していきたいと思います。

Discussion