Amazon SESを使用したメール送信を行うシェルスクリプト

Amazon(AWS) SESは、簡単にメールの送信を行うことが出来る便利なサービスです。

AWSの管理画面上で一通りの設定をした後は、メールの送信&受信テストを行うと思いますが、それだけの為にわざわざプログラムを書いてテストするのは少し手間です。

そこで、シェルスクリプトを使用してメールの送信テストを手っ取り早く確認してみます。
(メール受信の確認は、使用しているメールクライアントやGmailなどのサービスで受信を確認します)

 

なお、参考にしたサイトは以下であり、内容もほぼ参考サイトのママです。
参考サイトの情報が消えた場合のバックアップも兼ね、使いやすく・分かりやすく少しアレンジして記事にしています。

Send emails via Amazon SES with Bash and cURL (Example)
https://coderwall.com/p/3vqf2g/send-emails-via-amazon-ses-with-bash-and-curl

シェルスクリプトの内容

以下、コピーしてご使用ください。

なお、6〜8行目、13〜16行目は適宜置き換えてご使用ください。

シェルスクリプトの実行結果

作成したシェルスクリプトを実行してみます。

実行権限を付与して実行しても良いですし、以下のようにbashを宣言して実行しても良いです。

45〜52行目が実行結果のAWSからのレスポンスです。

上記は成功のレスポンスですが、失敗した場合は45〜52行目辺りにエラー内容が表示されます。

メールの受信確認

シェルスクリプトを実行して送信されたメールの受信を確認してみます。

以下はGmailのスクリーンショットですが、無事受信されていました。

最後に

シェルスクリプトを使用することで、メールの送信テストの為だけにわざわざAWSが提供しているSDKを組み込んでプログラムを書く必要が無く、簡単にテスト出来るようになりました。

Mac(執筆時:macOS Mojave 10.14.4)では、base64コマンドに-wのオプションが存在しておらず動作しないためご注意ください。(動確環境は記事最下に記載)


【動確環境】

OS:Ubuntu 18.04.1 LTS

コメントを残す

ABOUTこの記事をかいた人

高原 徹也

大手通信キャリアを経て、大ヒットスマートフォンアプリ開発を手がける企業で多数の開発プロジェクトに携わった後、起業。 起業後も様々な開発プロジェクトに携わり、開発を通じて会社を大きく成長させ、今ではASP会社、メディア運用会社を子会社で持ち、シンガポール法人でWEBメディア会社を経営、M&Aを手がける起業家として活動中。