28.4. シスログメッセージを転送する

syslogd には、シスログメッセージを他のホストへ転送する機能が備わっています。この機能を利用すると、複数のホストで出力されたメッセージを 1 台のホストへ転送し、そのホストでシスログファイルを集中管理することができます。このようにシスログを集中管理するホストは、シスログサーバーと呼ばれることもあります。シスログサーバーは、複数のホストが出力したメッセージを一元管理するだけでなく、クラッカーがホストに侵入した際に、ログの削除を困難にするための対策としても利用されています。実際にシスログメッセージを転送するには、メッセージを転送する側のホストと転送されたメッセージを受け取るシスログサーバー側の両方のホストでの設定が必要になります。

ログを転送するホストの設定

項28.2.2 で解説したように、メッセージを転送する側のホストでは、/etc/syslog.conf の ACTIONS に @ホスト名(あるいは IP アドレス)でメッセージを転送するホストを指定します。以下の例では、ファシリティが mail のすべてのシスログメッセージを ホスト syslogserver へ転送しています。

mail.*    @syslogserver

編集後、設定を反映させるために syslogd を再起動します。

# /etc/init.d/syslog restart
ログを受け取るホストの設定

他のホストから転送されたシスログメッセージを受け取るには、受け取るホストの syslogd デーモンに -r オプションを付けて起動する必要があります。Turbolinux 10 Server の syslogd は、デフォルトで -r オプションを指定していませんので /etc/sysconfig/syslog ファイルを編集して、syslogd に -r オプションを渡す必要があります。

# Options to syslogd
# -m 0 disables 'MARK' messages.
# -r enables logging from remote machines
# -x disables DNS lookups on messages recieved with -r
# See syslogd(8) for more details
SYSLOGD_OPTIONS="-m 0 -r"  <- -r オプションを追記する
# Options to klogd
# -2 prints all kernel oops messages twice; once for klogd to decode, and
#    once for processing with 'ksymoops'
# -x disables all klogd processing of oops messages entirely
# See klogd(8) for more details
KLOGD_OPTIONS=""

-r オプションの追記後、syslogd を再起動します。

# /etc/init.d/syslog restart

シスログサーバーへ転送されたメッセージは、シスログサーバーの /etc/syslog.conf の記述に従い処理されるようになります。