Amazon SESをセットアップしてEC2インスタンス上のWordPressからメールが送信できるようにする

最終更新 2026年3月27日 最終更新者 administrator

EC2上に構築したWordPressサイトからデフォルトではメールを送信することができません。

この記事では、Amazon SESをセットアップして、AWSのEC2上に構築したWordPressサイトからメールが送信できるようセットアップする方法をまとめました。

マネジメントコンソールからセットアップする

AWSのマネジメントコンソール上からAmazon SESをセットアップします。

Amazon SESをセットアップする

Amazon SESを設定していきます。

まずは使用するメールアドレスを入力します。

送信するドメインを検証してドメインからメールが送信されるようにする

ドメインの検証を行い、ドメインからメールが送信されるようセットアップしていきます。

以下の通り、表示されたDNSレコードをRoute 53に登録してドメインからメールの送信がされるようにセットアップします。

Route 53に上記で表示されたレコードを登録していきます。

EC2のeni(ネットワークインターフェース)に紐づいているセキュリティグループからSMTPの通信を許可する

SESをセットアップするだけでは不十分で、EC2のネットワークインターフェースに紐づいているセキュリティグループで、メールを送信する通信プロトコルを許可する必要があります。

以下のようにアウトバウンド通信がすべて許可されていれば特に設定は必要ありません。

サンドボックスの解除

Amazon SESはアカウントを作成した段階では、サンドボックス状態になります。サンドボックスとは検証環境のことです。AWSに申請して本番環境にしてもらいます。

本番アクセスのリクエスト

本番アクセスをリクエストします。

以下の内容を記載して本番アクセスをリクエストします。

本番アクセスをリクエストするとステータスがレビュー中に変わります。

すぐに本番環境で使えるようになりました。

WordPress側でメール送信用プラグインのインストールとセットアップ

メール送信用のプラグインをWordPressにインストールしてAWSとWordPressを紐づけます。

有名なプラグイン、WP Mail SMTPを検索してみましたが見当たらないため、今回はFluentSMTPを使用します。Easy WP SMTPはAmazon SESと連携するのに有料のPro版への課金が必要になります。

AWSのロゴをクリックします。

必要な情報を入力していきます。Access Keyについては別途AWS側での払い出しが必要です。

FluentSMTPに紐づけるAccess KeyをAWS側で払い出す

まずはAWSのマネジメントコンソール側でAmazon SES>SMTP設定をクリックします。

次に右上の「SMTP認証情報の作成」ボタンを押下します。

IAMの画面が表示されます。「ユーザーの作成」ボタンを押下します。

すると以下のようにユーザーが作成されます。この画面を閉じずに、以下の画面で確認できるSMTPユーザー名と、SMTPパスワードを、それぞれ左にあるコピーボタンを押下してコピーしておきます。今回のセットアップでは使いませんが、別のプラグインで使用するケースもあるので、コピーしたユーザー名とSMTPパスワードは必ず控えておきましょう。この情報を紛失した場合は再度同じ手順でユーザーを作り直す必要があります。

作成したIAMユーザーでアクセスキーを作成します。

ここで確認できるアクセスキーの情報は一度きりなので、紛失した場合は再度アクセスキーを作り直す必要があります。作成したアクセスキーの左側にあるボタンを押してアクセスキーを、シークレットアクセスキーの左側にあるボタンを押してシークレットアクセスキーをコピーします。

アクセスキーをFluentSMTPに追加するためにSMTP設定で作成したIAMユーザーのポリシーを編集する

Amazon SESのSMTP設定から作成したIAMユーザーにはデフォルトでは以下のポリシーになっています。

このポリシーだとアクセスキーをFluentSMTPで認証できないので、1行だけActionにコード( “ses:ListIdentities”)を追加します。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "ses:SendRawEmail",
            "Resource": "*"
        }
    ]
}

追加した記載内容が以下です。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ses:SendRawEmail",
                "ses:ListIdentities"
            ],
            "Resource": "*"
        }
    ]
}

アクセスキーをFluentSMTPに追加する

この状態で先ほどのFluentSMTPの設定画面に戻り以下のように確認したアクセスキーを入力します。リージョンは今回は東京で作成しているので東京リージョンを指定します。

FluentSMTPからメールの送信をテストする

WordPressのダッシュボードから設定>FluentSMTPへ移動します。

以下の画面でテストメールの送信を行います。

以下のようなメールが届けばテストは成功です。

関連記事