share facebook facebook twitter menu hatena pocket slack

2011.12.14 WED

SESってなんじゃ?(SMTPがサポートされました)

三浦 悟

WRITTEN BY 三浦 悟

本日(12月14日)、SESにSMTP機能がサポートされました。
メーラーでもSendmailやPostfixでも利用することができます。
今回は試しにmiura@cloudpack.jpのメールアドレスで、GmailからSESを経由して
Hotmailにメール送信してみたいと思います。

○SESの設定

AWSコンソールのSESタブを開くと、「SMTP Settings」というメニューが追加されています。

これを開くと、SMTPサーバーの基本情報が表示されます。

Server Name: email-smtp.us-east-1.amazonaws.com
Port: 465
TLS: Yes
Authentication: Your SMTP credentials

Authenticationの欄にあるように、SMTPで送信するには、SMTP認証用のIAMユーザーを作る必要があり、
画面中央の「Create My SMTP Credential」をクリックすると手順に従って設定することができます。

ボタンをクリックすると、IAMタブに遷移して、「Create User for SMTP」というダイアログが開くので、
SMTP用のIAMユーザーを登録します。
ここにSMTP用のIAMユーザー名を入力して、「Create」ボタンをクリックします。

そうすると、作成完了のダイアログが表示されます。
Credential情報は「Show User SMTP Security Credential」で表示されます。

Credential情報はファイルとして「Donwload Credential」のボタンでダウンロードし保管しておきます。

“Iam User Name”,”Smtp Username”,”Smtp Password”
“smtp-memorycraft”,”ACCESS_KEY******”,”SECRET_KEY******”

ダウンロードが完了し、ダイアログを閉じると再びSESタブに自動的に遷移します。
SESのダッシュボードを表示し、メール送信者を追加するために、「Verify a New Sender」をクリックします。

ここで、今回SMTPで送信したい送信者のメールアドレスを入力し、「Submit」をクリックします。

そうすると、そのメールアドレス宛に認証用のメールが届くので、認証リンクをクリックします。

AWSの画面が表示され、認証が完了した旨のメッセージが表示されています。
以上で送信者の認証が完了しました。

SESは、無償では認証したメールアドレスに対してしか送信できないため、
テスト受信用のメールアドレスもこれと同様にして認証しておきます。
(手順は同様なので、割愛します。)

○メールクライアント( Gmail ) の設定

次にGmailのSMTP設定を行います。
「設定<アカウントとインポート」 タブの「名前」欄で送信者のメールアドレスを追加します。
今回は、既にGmail経由送信で設定していたので、「編集」で設定を変更してみます。

「次のステップ」をクリックすると、「Gmail経由で送信する」が選択されているので、
「SMTPサーバー経由で送信する」の方を選択します。
そうすると、SMTPサーバー、ポート、ユーザー名、パスワード、接続プロトコルの入力欄が表示されます。
SESのSMTP Settingsに記載のあったように、SMTPサーバー名とポート、プロトコルを入力します。

Server Name: email-smtp.us-east-1.amazonaws.com
Port: 465
TLS: Yes
Authentication: Your SMTP credentials

また、ダウンロードしたcredential.csvに記載されている、Smtp UsernameとSmtp Passwordを
ユーザー名、パスワードに入力します。

ここで、「変更を保存」をクリックすると、有効性のチェックが始まるのですが、
下記のようなエラーが表示されました。

TLS接続だとうまく設定できないようなので、接続プロトコルをSSLにしたら、
設定が成功したのでこのまま進みます。
登録が完了すると、「名前」欄が以下のような表示に変わり、AWSを使ったSMTP接続が
設定されていることが確認できます。

それでは実際にメールを送信してみます。
以下の内容のメールを「Verify User」で登録しておいたhotmailアドレス宛に送信します。

hotmail側を確認してみると、下記のように受信できていました。
これにより、アプリケーションなどでも、SDKではなく従来のSMTP送信でメール配信することができます。

こちらの記事はなかの人(memorycraft)監修のもと掲載しています。
元記事は、こちら

三浦 悟

三浦 悟

高円寺在住のなんじゃ系男子 またの名をmemorycraftといいます。 炭水化物大好き 日々の「なんじゃ?」を記事にしてます。

cloudpack

cloudpackは、Amazon EC2やAmazon S3をはじめとするAWSの各種プロダクトを利用する際の、導入・設計から運用保守を含んだフルマネージドのサービスを提供し、バックアップや24時間365日の監視/障害対応、技術的な問い合わせに対するサポートなどを行っております。
AWS上のインフラ構築およびAWSを活用したシステム開発など、案件のご相談はcloudpack.jpよりご連絡ください。