Linux サーバで、簡単なログ監視をしてみましょう。


ワールドカップが始まって寝不足気味の技術担当 105です。


■ 今日のお題

  • システム監視ツールの logwatch を使って、Linux サーバで簡単なログ監視をしてみましょう。
  • ログ監視をすることで、システムの利用状況や想定していないサーバへのアクセス状況が見えてきます。

■ 注意事項

  • CentOS6 で記事を作成しました。実際にお客様がご利用の環境とは異なる場合があります。
  • iptables の編集を間違えるとサーバにログインできなくなる可能性があります。その場合は、コンソール接続をご利用してサーバにログインしてください。
  • 拒否した通信のロギング量によっては、/var/log/messages が肥大化する可能性があります。

■ 概要

  1. 事前準備
  2. システム監視ツールのインストール&設定
  3. 通信拒否パケット記録の設定
  4. システム監視レポートの確認

1. 事前準備

  • コントロールパネルから Linux サーバを作成しましょう。

2. システム監視ツールのインストール&設定

  • 作成した Linux サーバにログインします。
  • logwatch を yum コマンドでインストールします。
    # yum install logwatch
  • インストールされる主なファイル
    コマンド本体 : /usr/sbin/logwatch
    標準の設定ファイル : /usr/share/logwatch/default.conf/logwatch.conf
    デイリーでの分析&レポート : /etc/cron.daily/0logwatch
  • 自分のメールアドレスに飛ばしたい場合は /etc/logwatch/conf/logwatch.conf に下記を追記します。
    MailTo = 管理者のメールアドレス
  • 動作確認
    # logwatch --print
    
    ################### Logwatch 7.3.6 (05/19/07) ####################
    :
    いろんな情報
    :
    ###################### Logwatch End #########################

3. 通信拒否パケットの記録

  • iptables, ip6tables の設定を変更し /var/log/messages に通信拒否したパケットを記録させます。
  • iptables 設定ファイル(/etc/sysconfig/iptables)を書き換えます。
    :
    -A RH-Firewall-1-INPUT -j LOG --log-prefix "iptables:drop " ←REJECT 行の直前に追記
    -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
  • ip6tables 設定ファイル(/etc/sysconfig/ip6tables)を書き換えます。
    :
    -A RH-Firewall-1-INPUT -j LOG --log-prefix "iptables:drop " ←REJECT 行の直前に追記
    -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp6-host-prohibited
  • 設定を反映させます。
    # service iptables restart
    # service ip6tables restart
  • しばらくログを眺めてみましょう。iptables によって拒否された通信が記録されます。
    # tail -f /var/log/messages
    :
    ~  kernel: iptables:drop ~ SRC=XXX.XXX.XXX.XXX DST=YYY.YYY.YYY.YYY ~
    :

4. logwatch レポートを確認しましょう。

  • 翌日以降、logwatch からシステム分析結果がレポートされてきます。
  • iptables で通信拒否したログをみると、いろんなサイトから iptables で許可していないパケットが来ていることが分かるかと思います。
    --------------------- iptables firewall Begin ------------------------
    
    Listed by source hosts:
    Dropped 81 packets on interface eth1
      From XXX.XXX.XXX.XXX - 1 packet to tcp(8080)
      :
      From YYY.YYY.YYY.YYY - 1 packet to udp(123)
    
    ---------------------- iptables firewall End -------------------------

■ 終わりに

  • インターネット上のサーバは、常に他者から攻撃されるリスクがあります。
  • 安全に利用していくために、”不要な通信は閉じる。” “不要なデーモンは落とす。” “セキュリティパッチは随時適用する。”などで、サーバのセキュリティを高めていきましょう。

お問い合わせ

BIGLOBEクラウドホスティングについて、もっと知りたい方、質問がある方、まずはBIGLOBE法人コンタクトセンターへお電話、または下記のお問い合わせフォームからお問い合わせください。phoneotoiawase

カテゴリー: 技術情報 タグ: , , パーマリンク