Ubuntu 14.04でメール送信してみました
メールサーバーはGmailを使いました
postfixをインストール
$ sudo apt-get install postfix
Gmailを使うために必要なものをいれます
$ sudo apt-get install sasl2-bin
postfixの設定をします
$ vim /etc/postfix/main.cf
relayhost = [smtp.gmail.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
smtp_sasl_mechanism_filter = plain
smtp_use_tls = yes
を追記
smtp_sasl_password_maps
に設定したファイルを作ります
$ vim /etc/postfix/sasl_passwd
[smtp.gmail.com]:587 (あなたのアカウント)@gmail.com:(パスワード)
(あなたのアカウント)@gmail.com:(パスワード)
はお持ちのアカウントのものを
パスワード入りで危険なので権限をきつくします
$ sudo chown root:root /etc/postfix/sasl_passwd
$ sudo chmod 600 /etc/postfix/sasl_passwd
必要なdbファイルを生成
$ sudo postmap /etc/postfix/sasl_passwd
postfix 再起動
mailコマンドを使いたいので
$ sudo apt-get install mailutils
テスト
$ echo test | mail sample@sample.co.jp
(メールアドレスはご自身のものにしてください)
$ mailq
で、メールがたまってなければOKですがエラーが..
(SASL authentication failed; server smtp.gmail.com[173.194.72.108] said: 534-5.7.9 Application-specific password required. Learn more at?534 5.7.9 http://support.google.com/accounts/bin/answer.py?answer=185833 z4sm6903248pdg.94 - gsmtp)
2段階認証してたアカウントだからかはじかれてるみたいでした
アプリのパスワードの設定をすればいいみたいです
Googleアカウントへアクセス
アプリのパスワードをひとつ作ります
できたパスワードを
$ vim /etc/postfix/sasl_passwd
に設定
メール送信テストを再度すると送ることが出来ました