2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

WP Mail SMTP Pro のインストール方法とIAM最小権限の設定

Last updated at Posted at 2022-03-25

はじめに

WP Mail SMTP Proの設定方法とIAMの設定について、簡単にまとめます。

環境構築

下記の通りに、EC2上でWordpressを構築しました。

  • Amazonlinux2
  • PHP 8.0.8
  • PHP-FPM 8.0.8
  • nginx 1.20

SESの設定方法は、下記の通りにするとよいです。(Lambdaの構築工程は省きましょう)
ドメインメール設定です。

Pro版 のインストール方法

まず、Wordpressの管理画面からWP Mail SMTPの無料バージョンをインストールします。
今回、Amazon SESを使用しますが、そのためには、WP Mail SMTP Proにアップグレードする必要があります。

スクリーンショット 2022-03-25 23.06.26.png

Pro版にバージョンにアップグレードする方法は、下記のドキュメント通りに設定するとよいです。

ただし、EC2上でWordpressを構築している場合、Pro版は、手動でインストールする必要があります。
手動でインストールする方法については、下記のドキュメント通りに行ってください。
Pro版をダウンロードし、Wordpressの管理画面からアップロードするイメージです。

最後に、IAMユーザーで作成したアクセスキーとシークレットキー、リージョンを記入し、Add an Email Addressをクリックすると、SES設定が完了です。
スクリーンショット 2022-03-25 23.14.57.png
スクリーンショット 2022-03-25 23.15.32.png
スクリーンショット 2022-03-25 23.15.57.png

Email Testタブからテストメールを実行すると、SESを使い、メール送信することができました。
スクリーンショット 2022-03-25 23.19.38.png
スクリーンショット 2022-03-25 23.19.59.png

DMARCエラー

テストメールを送信した際、以下のDMARCエラーに遭遇しました。
このエラーは、ドメインに対して、DMARCと呼ばれる成りすまし対策設定がされていないことを注意するメッセージでした。

そしてDMARCが正しく設定されていない場合、送信先が受信した際、迷惑メールフォルダに入るだけでなく(こちら側の送信は成功するのに相手側では)受信されないケースが出る可能性があるため、対策しましょう。

スクリーンショット 2022-03-25 23.33.34.png

対策は、SESで設定したドメインと同じドメイン名のRoute53ホストゾーンに、下記のレコードを作成します。

  • レコード名_dmarc
  • レコードTXT
  • v=DMARC1; p=none; fo=1; rua=mailto:test@example.co
    • test@example.coは、送信元のメールアドレスになります。
    • ホストゾーンは、example.co

スクリーンショット 2022-03-25 23.49.11.png

これで再度、テストメールを送信すると、成功します。

IAMユーザーの最小権限の設定

IAMユーザーの権限は、AmazonSESFullAccessですが、最小限の権限を設定しましょう。
以下の通りにIAMポリシーを作成し、IAMユーザーにアタッチしてください。

送信元IPでの制限をかけており、111.11.11.11/32は、EC2のIPを指定しています。
また、アクションもses:SendRawEmailのみで問題ありません。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "ses:SendRawEmail",
            "Resource": "*",
            "Condition": {
                "IpAddress": {
                    "aws:SourceIp": "111.11.11.11/32"
                }
            }
        }
    ]
}
2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?