rokkonet

PC・Androidソフトウェア・アプリの開発・使い方に関するメモ

メール送信システム ( postfix, mail ) インストールとgmailリレー送信設定

2021 Apr. 24.
2020 Oct. 31.
2020 Feb. 09.
2018 Sep. 23.


参考元 Gmail 経由でメールを送信するように Postfix を設定する – ymyzk’s blog


gmailアカウントログインを2段階認証に設定

2段階認証プロセス:オン

パッケージインストール

# apt install postfix bsd-mailx libsasl2-modules

postfix設定問い合わせでは、Internet with smarthost を選択する。
システムメール名には、"取得している無償ドメイン名"をセットした。( mydomain )
SMTP relay host” には [smtp.gmail.com]:587 を記述する。


設定

googleアカウントのアプリパスワードを生成する

次の作業で利用するのでアプリパスワード画面を開いておくか、メモしておく。

/etc/postfix/sasl_passwd を次の1行の内容で作成する

[smtp.gmail.com]:587 YourAccount@gmail.com:アプリパスワード

  例 [smtp.gmail.com]:587 sample@gmail.com:abcdefghabcdefgh

/etc/postfix/sasl_passwdファイル設定
# cd /etc/postfix
# chmod 600 sasl_passwd
# postmap /etc/postfix/sasl_passwd


/etc/postfix/main.cf に次の4行を追記する
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_tls_security_options = noanonymous


postfix再起動
# systemctl restart postfix.service


メール送信
$ Msg="読めますか?\n2行目です。\n3行目です"
$ Title='メール試験'
$ MailDest="hoo@example.xx bar@example.yy"
$ echo -e "${Msg}" | mail -s `echo -e "${Title}" | nkf -jM` $MailDest

(下記のように本文をjisコードにすると文字化けした)

$ echo -e "${Msg}" | nkf -j | mail -s `echo -e "${Title}" | nkf -jM` $MailDest


確認
# tail -f /var/log/mail.log