1. gmail に送るための設定
ほとんど全てhttp://linux.matchy.net/archives/35
http://tomslabo.exblog.jp/12665450
と同じことをしただけ。先人に感謝。以下、自分用に変えたところだけメモ。
main.cf について
計算機が複数台あるので、main.cf はコピーして使いまわした。いったん Windows のエクスプローラで自分のユーザ (maz) のホームディレクトリにでもコピーしておいて、$ su -
# mv /home/maz/main.cf /etc/postfix/main.cf
mv: overwrite `/etc/postfix/main.cf'? y
としてから、いちおう、
# vim /etc/postfix/main.cf
して、myhostname だけは計算機ごとに変えた。ただ、上記エントリにもあるように gmail に送られてくるメールは全部自分の username@gmail.com になってしまうので、あんまり意味ないかも…
sasl_passwd について
# vim /etc/postfix/sasl_passwdの後の chown と chmod は省略。そのかわり
# postmap /etc/postfix/sasl_passwd
でハッシュ化したらすぐに
# rm /etc/postfix/sasl_passwd
で削除。これは自分以外にも共同で root やってる人間がいるので、gmail のパスを知られないために必須。sasl_passwd.db さえあれば問題ないっぽい。
その他
別にこのケースに限らないし、細かいけど、# /etc/init.d/postfix status
のかわりに
# service postfix status
でいい。他のサービスに対しても同様。参考: http://itpro.nikkeibp.co.jp/article/COLUMN/20070605/273739/
2. なんかうまくいかない
以上の結果、うまくいくはずなんだが、なぜか root 宛のメールが Delivery Error とかなる(参考にしたエントリでは「sent mailにしか入らない」となっているのに自分の場合普通に inbox にも来ているから、なにか設定がおかしいのかも)。ので、下記のように、root には送らずに gmail へ送るように変更してみた。この場合、いったん自分の gmail に送って、そこ経由で他のメールアドレスに送られる、のだと思う。
まず、/etc/aliases での root: username@gmail.com へのコメントアウト・書き換えはしない。それから以下のように logwatch を設定した。
3. logwatch の設定
インストール
もし logwatch インストールされていない場合、
# yum -y install logwatch
でインストール。さらに、cron で実行されるようにシンボリックリンクを作っておく:
# ln -s -i /usr/share/logwatch/scripts/logwatch.pl /etc/cron.daily/0logwatch
これでいいのか若干自信がないが、たぶんいいはず。
設定
設定は、ローカルなものは /etc/logwatch/conf/logwatch.conf に追記する形でもいいようだが、面倒なので、デフォルトの方を直接編集する:# vim /usr/share/logwatch/default.conf/logwatch.conf
ここで、MailTo = root となっているところの root を消して、username1@gmail.com username2@gmail.com username3@gmail.com などとする。コメントに「複数追加する場合はスペースを開けろ」とある。実際やってみたら送れた。ついでに、Detail = Low もなんとなく Med にしてみた。
root 宛に送れないってのがなんかちぐはぐだけど、動いてるっぽいからひとまずこれで。
CentOS 向けではないが、
http://vine-linux.ddo.jp/linux/app/logwatch.php
も参考になった。
[2012-10-18追記]
毎日来られるとちょっと…という場合は週に一回だけということもできるようだ。Logwatch の通知を weekly にする のとおりにやってみた。自分の場合一点だけ違いがあり、logwatch の設定ファイルは、上の方にもあるように、
/etc/logwatch/conf/logwatch.conf
ではなく、
/usr/share/logwatch/default.conf/logwatch.conf
にある。要はこのファイルの Range を daily でなく "between -7 days and -1 days" とすることで、一週間分のログをまとめる。かつ、cron.daily にあった 0logwatch という symbolic link を cron.weekly に移動して週に一度の配信とする、と。yum update で問題が起きるかはまだ試していないので不明。
4. うまくいった
主に書き間違いのせいだったかもしれない…。あとで書く。
No comments:
Post a Comment