PostfixでメールをGmailにリレーする

Published: 2016年10月16日 by tomsato

概要

Postfixを使ってGmailにメールを送るためのやり方

そもそもPostfixとはオープンソースのメールを転送するソフトウェア

サーバから監視のアラートメールを送信したい場合などに設定しておく必要がある

準備

テスト検証する環境

$ cat /etc/redhat-release
CentOS release 6.8 (Final)

インストール

// Postfixのインストール
$ sudo yum install postfix
// その他処理に必要になるパッケージ
$ sudo yum -y install cyrus-sasl-plain cyrus-sasl-md5
// メール送信用のパッケージもインストール
$ sudo yum -y install mailx

設定ファイル修正

// バックアップ
$ sudo cp -p /etc/postfix/main.cf{,.`date +%Y%m%d`}
// 修正 (以下の記述を追記する)
$ sudo vim /etc/postfix/main.cf
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_tls_security_options = noanonymous
smtp_tls_CApath = /etc/pki/tls/certs/ca-bundle.crt

ファイルを作成

// usernameとpasswordは個人gmailアカウントのものを設定する
$ sudo bash -c 'echo [smtp.gmail.com]:587 username@gmail.com:password > /etc/postfix/sasl_passwd'
$ sudo chmod 600 /etc/postfix/sasl_passwd
$ sudo postmap /etc/postfix/sasl_passwd

諸々起動させる

$ sudo service saslauthd start
$ sudo service postfix start
$ sudo chkconfig saslauthd on
$ sudo chkconfig postfix on

テスト

メールを送信する

$ sudo bash -c 'echo testmail | mail username@gmail.com'

メールが届かない時

メールを送ってもGmailにメールが届かないときの確認方法

① ログを見てみる

// syslogをインストール
$ sudo yum install rsyslog

再度テストメールを送信してログを確認する

$ sudo less /var/log/maillog

② キューを確認する

$ postqueue -p

これでメール配送待ちのキューを見れる
「Mail queue is empty」だと問題がない

③ Gmailの設定を確認する
Gmailヘルプ
にてメールクライアントにログインできない場合のトラブルシューティングが載っているので確認する

コメントを書く

※ 個別に返信が必要な時のみご記入ください

※ Emailは公開されません

※ 承認されると名前・コメントが下記に表示されます

コメント一覧

最近の投稿

ビジュアルリグレッションテストについてまとめ、ネットで調べると数多くのライブラリがありどれがどんな立ち位置なのか全体像がわかりずらかったのでどんな種類があるのか入門の入門としてまとめます、またPlaywrightを使って実際に触ってみました

社内ツールなどの超小規模なAPIをGolangで実装する際にフレームワークを使うべきかを、実際にnet/httpを使った実装とフレームワークを使った実装を比較することでどれだけ優位性があるかを見ていきたいと思います。今回はフレームワークにはシンプルで使いやすそうなEchoを使うことにします。

vue-pdfを使ってNuxt.jsで作成しているアプリケーションに pdfスライドを表示させるサンプルを作成しました README.md通りに実装してもうまくいかないところがあったのでそのあたり含めてまとめます

Vue.js / Nuxt.jsにおけるログインの実装方法をまとめる Auth0やNuxt.jsのAuth Moduleとmiddlewareについて調べつつサンプルを作成することで理解を深める

コンポーネント設計について考える Atomic DesignやPresentational Component, Container Componentについてまとめつつ 自分だったらVue.js / Nuxt.jsでどういうコンポーネント設計にするかについてまとめます

カテゴリ一覧

タグ一覧