カテゴリー
Linux

/etc/aliases を編集して root のスプールにメールを溜めたくない!エイリアス定義で転送だ!★ #Sendmail ★ #CentOS★

/etc/aliases 編集のポイント

ファイルの最後に次を追加すれば、root 宛のメールを外部のメールへと転送できます。

次の例では

  1. root 宛のメールを user_who_get_root_mail に転送し、
  2. user_who_get_root_mail 宛のメールを testuser@example.com に転送

しています。

# Person who get root's mail
root:       testuser
testuser:   test@example.com

root 宛のメールがスプールにも残らないようになりますので、これ以後は root へのメールをチェックする必要もありません♪楽ちんですわ♪

編集後に反映させるコマンド

これを行って、メール転送設定を反映させます。

# メールエイリアス設定用のデータベースをビルド
newaliases

root の転送先に直接メールアドレスを指定しない理由

/etc/aliases ファイルの最後の方にある次の部分が、root 宛のメールを直接メールアドレスへ転送できない原因となっているようですの。

# trap decode to catch security attacks
decode:          root

コメントには一体なにが書いてあるのでしょうか?おおよそ次のような意味ですわね。

  • セキュリティ攻撃をキャッチするためのトラップデコード

ということは、「decode」ユーザ宛のメールを root へ転送するという意味ではなく、「decode: 」と指定することで root ユーザにセキュリティを施す、という意味と考えられます。

こちらのページが気づくきっかけとなりました。ありがとう存じます。

ただし、検証はしておりませんので、確証は持てません><。面倒くさがりはいけませんの><。

おまけ。/etc/aliases 全体の内容

編集後の /etc/aliases の設定状態を挙げますわ♪と言いましても root から転送するユーザー名、そのユーザから転送するメールアドレスはテキトーですの♪

#
#  Aliases in this file will NOT be expanded in the header from
#  Mail, but WILL be visible over networks or from /bin/mail.
#
#	>>>>>>>>>>	The program "newaliases" must be run after
#	>> NOTE >>	this file is updated for any changes to
#	>>>>>>>>>>	show through to sendmail.
#

# Basic system aliases -- these MUST be present.
mailer-daemon:	postmaster
postmaster:	root

# General redirections for pseudo accounts.
bin:		root
daemon:		root
adm:		root
lp:		root
sync:		root
shutdown:	root
halt:		root
mail:		root
news:		root
uucp:		root
operator:	root
games:		root
gopher:		root
ftp:		root
nobody:		root
radiusd:	root
nut:		root
dbus:		root
vcsa:		root
canna:		root
wnn:		root
rpm:		root
nscd:		root
pcap:		root
apache:		root
webalizer:	root
dovecot:	root
fax:		root
quagga:		root
radvd:		root
pvm:		root
amanda:		root
privoxy:	root
ident:		root
named:		root
xfs:		root
gdm:		root
mailnull:	root
postgres:	root
sshd:		root
smmsp:		root
postfix:	root
netdump:	root
ldap:		root
squid:		root
ntp:		root
mysql:		root
desktop:	root
rpcuser:	root
rpc:		root
nfsnobody:	root

ingres:		root
system:		root
toor:		root
manager:	root
dumper:		root
abuse:		root

newsadm:	news
newsadmin:	news
usenet:		news
ftpadm:		ftp
ftpadmin:	ftp
ftp-adm:	ftp
ftp-admin:	ftp
www:		webmaster
webmaster:	root
noc:		root
security:	root
hostmaster:	root
info:		postmaster
marketing:	postmaster
sales:		postmaster
support:	postmaster

# trap decode to catch security attacks
decode:		root

# Person who should get root's mail
#root:		marc
root:		testuser
testuser:	test@example.com

なお、環境は CentOS 5.10 で、Sendmail のバージョンは、8.13.8 ですの♪

[root@oki2a24 ~]# cat /etc/redhat-release 
CentOS release 5.10 (Final)
[root@oki2a24 ~]# sendmail -d0.101
Version 8.13.8

おわりに

Logwatch のメールはインストール直後の設定では root 宛てに届きますけれども、別の Gmail アドレスを直に設定して変更しておりました。

Tripwire も、レポート送付先のメールアドレスをポリシーファイルに設定し、改ざん検知に役立てておりました。

ところがある日、root ユーザのメールを確認しますと!メールが沢山溜まっております!それも、Tripwire 関係のメールです!

メールを開いて確認してみますと、どうやら cron 実行時の出力結果のメールですの。

このままですと、root 宛のメールだけでいつか VPS の容量を圧迫してしまうかしら?

そのような理由で、本投稿で root 宛のメールをメールアドレスに転送する方法に取り組まさせていただきました。

最後に、参考になったページですの♪ありがとう存じます。

以上です。

コメントを残す