ex1-lab

Linux, CentOS, Mac OS X, Windows, 仮想化, Apache等のLinux中心に気になることをメモがわりに・・・

322.7 syslog

      2017/03/06 この記事は約3分で読むことができます。

322.7 syslog

重要度 1
説明 syslogサービスの使用方法と設定上のセキュリティ問題について経験と知識があること。
主要な知識範囲

  • syslog サービスセキュリティ問題
  • chroot環境

重要なファイル、用語、ユーティリティ
・リモート syslog サーバ

syslog

syslogのログはネットワーク上に接続している別のサーバに送信でき、1つのログサーバに集約してログを管理できます
複数サーバのログを一元管理するには、以下の設定を行います

・ログを管理するログサーバの設定
外部からのsyslog送信を許可するため、該当ポートを開ける(デフォルトではポート番号:514番)
syslog に -r オプションをつけて送信する。(-r オプションは、インターネットドメインからのメッセージ受信を許可する)

・外部にログを出力するサーバの設定
syslog.confファイルにログサーバのホスト名またはアドレスをログの出力先として指定する

書式
ファシリティ.プライオリティ @syslogを管理するホスト

すべてのファシリティの警告以上をログをLOGSV00サーバに送信
*.warning @LOGSV00

すべてのファシリティのログを192.168.0.10 に送信
*.* @192.168.0.10

セキュリティ

syslogサーバは、ネットワーク経由で送信されてきたログデータを逐一記録していきます。
接続認証などは特に用意されていないため、送られてきたログデータがセキュリティ攻撃を意図したものだった場合に備えて、パケットフィルタリングなどで送信元のサーバのIPアドレスを制限しておく必要があります。
ログデータのやり取りを行うネットワークは、外部から隔離されたネットワークであることが望ましいでしょう。

syslogは通常、ポート番号514番を使うため、root権限で動作します。
そのため、攻撃を受けた場合に影響範囲が拡がらないよう、DNSサーバのBINDなどと同様、chroot環境で動作させるようにするといいでしょう。

chroot環境

chroot環境は、動作しているサービスが攻撃を受けた際に影響を最小限に抑えるためのセキュリティ対策としてchroot環境は有効な手段です
syslogサービスはローカルホストのサービスのログを/dev/logで受け取ります。
chroot環境からは既存の/dev/logを参照することができないため、受け取れるようにするためにはchroot環境にあるBINDからアクセスできる/dev/logを作る必要があります。

たとえば、BINDのchroot環境が/var/named/chroot/以下に作られる場合、/etc/sysconfig/syslogファイルに以下の設定を記述します。
syslogdのオプションに-aオプションを指定することで、デフォルトの/dev/logの他にログ情報を取得するパスを追加することができます。

syslogdを再起動すると、指定した/var/named/chroot/dev/logが作られます。
これでBINDからのログをsyslogが受け取れるようになります。



 - LPIC 30x