Linuxサーバー管理をやっていて、何らかの障害や警告、ログなんかは root あてに届きます。
その root 宛のメールを、個人メールアドレスに転送出来ると管理上便利ですよね。
そんな方法を調べてみました。
root あてのメールを転送する
root あてにメールを送っているプログラム、デーモンは
- crond
- logwatch
です。
これらのプログラムは、サーバーの運用上の情報や警告をroot宛にメールで送ってきます。
このメールは、Linux に root でログインして
1 |
# mail |
で見ることが可能ですが、毎度、こんなことやっていると運用上は煩わしいです。
そこで、root あてのメールを個人メールに転送する方法を考えてみます。
aliases で転送
/etc/aliases見ると次のようになっています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 |
# # 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のメールを受け取るかの記述があるので、ここに追記します。
root: (メールアドレス)
このあと、必ず
1 |
# newaliases |
で変更を反映しておきます。
newaliases しておくと、
/etc/aliases.db
というバイナリのデータベースが作成されるようです。
これで root 宛のメールが、指定したメールアドレスに転送されるようになります。
メール転送エージェント (MTA、Mail Transfer Agent または Message Transfer Agent) の設定
実際にLinuxサーバー側から、メールを送るにはメール転送エージェント (MTA) の起動が必要になります。
メール転送エージェントは、電子メールを相手方に送信するためのメールサーバ機能における中心的な機能で、電子メールクライアントからSMTPなどでメールを受信します。
その後、相手別に振り分け、メール配送エージェントへ振り分ける機能を持っています。
MTAにはいくつか種類がありますが、一般的に使われているのは、「Sendmail」「qmail」「Postfix」の3つです。
最近は特にPostfixが使われているようです。
Postfixを起動するには、CentOS 6の場合
1 |
# /etc/init.d/postfix start |
CentOS 7の場合
1 |
# systemctl start postfix |
です。
コメント