GCPのインスタンス上でメールを送信する(SendGrid+postfix)
はじめに
GCP Compute Engineインスタンスからは単独でメールを送信する事ができません。
メールが使えないと不便な事が多いですよね。
ここでは「SendGrid」というクラウドサービスを使い、インスタンス上からメールを送信する手順を紹介します。
SendGridとは
米SendGrid社によって2009年から提供されているクラウドベースのメール配信サービスで、月間3億通超のメール配信を行っているそうです。
このサービスには無料プランがあり、1日あたり100通以内のメール配信であれば無料で利用する事ができます。
詳細は「Pricing - SendGrid」をご覧ください。
SendGrid登録
以下の手順でSendGridにフリーアカウントを登録します。この時点ではクレジットカードの登録は必要ありません。
- トップページより「Sign Up」をクリックします
- 次のページ(価格一覧ページ)で「Try for Free」をクリックします
- 必要項目を入力し「Create Account」をクリックします
- プロフィールを入力し「Save」をクリックします
- 確認メールが届くので「Confirm Email Address」をクリックします
以上で登録は完了です。
※「Settings - Account Details」メニューよりタイムゾーンを変更しておくのをおすすめします。
APIキーの作成
サーバからSendGridを使用するため、以下の手順でAPIキーを作成します。
- 「Settings - API Keys」をクリックします
- 「Create API Key」をクリックします
- APIキーの名前とアクセス権限を設定し、「Create & View」をクリックします
- 完了画面に表示されるAPIキーをメモしておきましょう(※このキーは二度と表示されません)
- 「Done」をクリックします
以上でAPIキーの作成は完了です。
アクセス元IPアドレスの制限
もしメール配信を利用するサーバが固定IPアドレスを持っている場合、こちらの設定をおすすめします。
この設定を行った場合、許可IPアドレス外からメールを配信する事ができなくなります。
- 「Settings - IP Access Management」をクリックします
- 「+ Add IP Addresses」をクリックします
- 初回は同意画面がでますので、確認のうえチェックボックスにチェックし「Confirm and Continue」をクリックします
- 「IP address(es) or range」の欄にIPアドレスまたはIPアドレス範囲を記入します
- 「Save」をクリックします
Postfixインストール
今回はメールサーバとしてPostfixを使用します。
yumを使い以下の手順でインストールします。
yum -y install postfix cyrus-sasl-plain cyrus-sasl-md5 mailx
次に、postfix設定ファイルを開き、以下の内容を追記します。
「[PASTE_YOUR_KEY]」の部分は、先ほど作成したAPIキーを設定しましょう。
# configure sendgrid
relayhost = [smtp.sendgrid.net]:2525
smtp_tls_security_level = encrypt
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = static:apikey:[PASTE_YOUR_KEY]
header_size_limit = 4096000
smtp_sasl_security_options = noanonymous
設定が完了したら、postfixの設定をリロードします。
postfix reload
これでサーバ上からメールが送信できるようになりました。
以下のコマンドにてテストメールを送ってみましょう。
echo 'This is test mail.' | mail -s TestMail [YOUR_MAIL_ADDRESS]
Author And Source
この問題について(GCPのインスタンス上でメールを送信する(SendGrid+postfix)), 我々は、より多くの情報をここで見つけました https://qiita.com/ariaki/items/e389cc3dce549f450e3b著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .