コンピュータ/ソフトウェア関連Tips

sSMTPセットアップメモ(FreeBSD 自前サーバ版)

作成日: Jul 21, 2019
カテゴリー: FreeBSD タグ: FreeBSD

自前のSMTPサーバを利用して、root宛メールを指定したメールアドレスに送信するようにしたときのメモです。

/etc/rc.conf に以下を追加。

$ sudo vi /etc/rc.conf
sendmail_enable="NO"
sendmail_submit_enable="NO"
sendmail_outbound_enambe="NO"
sendmail_msq_queue_enable="NO"
$ sudo killall sendmail
$ sudo pkg install ssmtp
$ su -
# cd /usr/local/etc/ssmtp
# cp ssmtp.conf.sample ssmtp.conf
# vi ssmtp.conf

以下を設定

root=*****@****.***
mailhub=****.***:587
FromLineOverride=YES
AuthUser=*****
AuthPass=*****
AuthMethod=LOGIN
UseSTARTTLS=NO

パスワードを平文で記入しているので、パーミッションを確認。

# ls -l ssmtp.conf
-rw-r-----  1 root  ssmtp  158  7月 21 18:51 ssmtp.conf

revaliases の設定

# cp revaliases.sample revaliases
# vi revaliases

以下を追加。

hogehoge:***@***.***:my.smtp.host:587
root:***@***.***:my.smtp.host:587

rootユーザーのフルネームを変更する

rootユーザーのフルネームが「Charlie &」になっている。

# chpass root
Full Name: Charlie &

の部分を適宜変更する。

テストメールの送付

# echo "test mail"|ssmtp -v *****@***.***

SMTPサーバとのコマンド送受信内容が表示される。最後の3行が、以下のようになっていればOK。

[<-] 250 2.0.0 OK
[->] QUIT
[<-] 221 2.0.0 Bye

250は正常終了を意味する。

mailer.confの修正

# cd /etc/mail
# cp mailer.conf mailer.conf.original
# vi mailer.conf
sendmail        /usr/libexec/sendmail/sendmail
mailq           /usr/libexec/sendmail/sendmail
newaliases      /usr/libexec/sendmail/sendmail
hoststat        /usr/libexec/sendmail/sendmail
purgestat       /usr/libexec/sendmail/sendmail

この部分を、以下のようにする。

sendmail        /usr/local/sbin/ssmtp
mailq           /usr/local/sbin/ssmtp
newaliases      /usr/local/sbin/ssmtp
hoststat        /usr/libexec/sendmail/sendmail
purgestat       /usr/libexec/sendmail/sendmail

メールの送信テスト

root宛のメールの送信テスト。

# echo "This is a test mail."|mail -v -s "test mail" root