ログインユーザーでメールログを閲覧出来るようにする
メールログを監視してbouncedとなったメールアドレスに対して何らかの処理を行うということをしたいのだけど、ログの解析は何とかなるとしてもそもそもメールログが読み込めない。考えてみれば当然のことで、メールログって基本的にroot権限なんですよね。そして600。
$ stat /var/log/maillog
Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
このままだと不便なのでログインユーザーでメールログを読めるようにしたい。ただセキュリティ的な意味で誰でも読めるみたいなことにはしたくないので、ちょっとひねって、グループで管理することにしてみました。やってみた手順はこんな感じ。
- ログ閲覧ユーザー専用のグループを作成する
# groupadd logadmin
- ログインユーザーをログ閲覧ユーザー専用グループに追加する
# usermod -a -G logadmin vagrant
- メールログのパーミッションとグループを変更する
# chmod 640 /var/log/maillog # chgrp logadmin /var/log/maillog
- ログローテーションの設定を変更する
# vi /etc/logrotate.d/syslog create 640 root logadmin ← endscriptの直下に追加
- ログインし直して確認