CRON などでメールを送信する際に、ざっくりと Postfix などを入れてしまっていた。
しかし、そもそも既にメールサーバが立っていれば、そこを経由して送信すれば MTA デーモンを動かす必要はない。
MSPに何を使うか探したところ、sSMTP が一番良さそうなのでこれを使うことに。
Ubuntu 12.04 で CRON の MAILTO でメール送信をするまでの設定のメモ。
インストール
$ sudo apt-get install mailutils
$ sudo apt-get install ssmtp
設定
/etc/ssmtp/ssmtp.conf
#
# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
root=postmaster
# The place where the mail goes. The actual machine name is required no
# MX records are consulted. Commonly mailhosts are named mail.domain.com
mailhub=<送信に使う SMTP サーバ>
# Where will the mail seem to come from?
rewriteDomain=<上書きするドメイン>
# The full hostname
hostname=<このホストの FQDN>
# Are users allowed to set their own From: address?
# YES - Allow the user to specify their own From: address
# NO - Use the system generated From: address
FromLineOverride=NO
mailhub はその名のとおり経由するメールサーバを指定する。
rewriteDomain は経由先のメールサーバのドメインを指定する。設定しないとドメインが不正と判断され、迷惑メール扱いになる可能性が高い。
FromLineOverride もわかりづらいが YES にすると本来の From が効く。よって、外からみるとドメインが不正と判断されるだろう。
CRON 設定
MAILTO=<送信先メールアドレス>
送信先を書いておく。