追加コストなし、標準機能だけでファイルサーバーのアクセスログ取る方法 | やぎおインフォ  
   
               
   

追加コストなし、標準機能だけでファイルサーバーのアクセスログ取る方法

Windows Server 2003 R2+Active Directoryのお話。
ファイルサーバーを構築して、ADでアクセス制御をしていれば、自動的にアクセスログが取れている、と思い込んでいる管理者の方、いらっしゃいませんか?

実は僕がそうだった。ADで通したりはじいたり判断してるんだから、当然どっかに記録が残ってるだろうと、勝手に思い込んでいた。

そして、ファイルサーバーを運用していたある日、ユーザーから「○○に置いたはずの○○というファイルが消えてるんですけど……」と相談があった。
詳しく話を聞くと、バックアップを作成した日よりも後でファイルを置いたようで、バックアップからの復旧は期待できない。

では、ファイル名がわかっているのだし、ログを調べてみるか、とイベントビューアやら「サーバーの役割管理」→「ファイルサーバーの管理」やらを調べてみたが、どこにもログらしきものが見あたらない。
ちょっと焦ってきて、関連キーワードでいろいろググって調べてみると、2つのことがわかった。

1 標準機能でファイルサーバーのアクセスログを取る場合は、設定変更が必要
2 標準のログは膨大になりがちなので、別ソフトを導入したほうがいいかも

そして、どちらかというと、世間的論調は2の別ソフト導入、ということらしい。
ただ、せっかくなので、どちらのケースもやってみて、レポートすることにした。

今回のエントリは、1の標準機能のログ収集の方法についてのレポート。
イベントログ全般について、以下のすさまじく詳しいページ(株式会社エスディーケー運営)を参考にさせてもらった。
http://eventlog.whitefox.jp/

ファイルサーバーのアクセスログを取るためには、セキュリティポリシーを操作して、「監査」をオンにする必要がある。
ポリシーの場所は、「管理ツール」の中。
ファイルサーバーのログ1 管理ツール

ADサーバーを兼用していない場合は「ローカル セキュリティ ポリシー」を選ぶ。僕の会社はADサーバー兼用なので、「グループ ポリシーの管理」を選ぶ。もしかすると、前者のパターンの方は少し見た目が違うのかもしれないので、お含みおきを。
ファイルサーバーのログ2 グループポリシーの管理

「グループ ポリシーの管理」を叩いて、ドメインコントローラにリンクしてあるポリシーのファイルを開く。
続いて、「セキュリティの設定」→「ローカル ポリシー」→「監査ポリシー」を展開すると、ファイルサーバーのログに関連のあるポリシー「オブジェクト アクセスの監査」が出てくる。これの「成功」「失敗」にチェックを入れればOK。僕は、ログが膨大になるのを嫌って、とりあえず「成功」だけチェックを入れることにした。
ファイルサーバーのログ3 オブジェクトアクセスの監査のプロパティ

なお、ドメインコントローラの場合は、デフォルト設定は以下のようになっているはず。
○アカウント ログオン イベントの監査 → 成功
○アカウント管理の監査 → 成功
○オブジェクト アクセスの監査 → 監査しない
○システム イベントの監査 → 成功
○ディレクトリ サービスのアクセスの監査 → 成功
○プロセス追跡の監査 → 監査しない
○ポリシーの変更の監査 → 成功
○ログオン イベントの監査 → 成功
○特権使用の監査 → 監査しない

これがクライアントの場合、すべて「監査しない」だった。つまり、ドメインコントローラの場合デフォルトでログをガンガン出す設定にはなっているということ。実際、イベントログで一番動きが多いのが、この監査関係なので、利用しないと割り切るのであれば、いくつかを「監査しない」にしてしまうのもいいのかもしれない。

この「監査ポリシー」の中で設定された項目について、イベントビューアの「セキュリティ」の中にログとして出てくるようになっている。
ファイルサーバーのログ4 イベントビューア→セキュリティ

さて、設定はこれで終わりではない。今度は監査対象のフォルダに監査エントリを追加する、という作業が必要なんだそうだ。以下、5つの手順を実行する。

1
ファイルサーバーのルートとなるフォルダ(共有の手のマークが付いているフォルダ)を右クリックして「プロパティ」を出す。
ファイルサーバーのログ5 ファイルサーバーのルートを右クリック

2
「セキュリティ」タブを開き、右下の「詳細設定」をクリック。
ファイルサーバーのログ6 セキュリティ→詳細設定

3
「監査」タブを開き、「追加」ボタンを押す。
ファイルサーバーのログ7 監査→追加

4
「everyone」を入力して「名前の確認」で照合し、「OK」。
ファイルサーバーのログ8 Everyone追加

5
「フルコントロール」を選び、「OK」。
ファイルサーバーのログ9 Everyoneにフルコントロール付与

これで完了。すでに運用中のファイルサーバーの場合は、ここで設定適用に少し時間がかかる。いや、かなりかかるかも。僕の環境、RAID5、SAS、ファイル数約330,000、610GBの利用容量で、30分ほどかかった。

適用が終わると、イベントログへの記録が始まる。早速イベントビューアを見てみると、すごい勢いでログが増えていくのがわかる。「分類」が「オブジェクト アクセス」となっているのがファイル操作のログなのだが、一人のユーザーが一つのファイルを開いて閉じるだけで、なぜだか10や20のログが平気で作られるようだ。
ファイルサーバーのログ10 イベントビューア→セキュリティにオブジェクト アクセス出現

イベントビューアに記録されるログのイベントIDは、以下の4種類。

イベントID → 意味
○560 → ファイルを開いたログ
○562 → ファイルを閉じたログ
○564 → ファイルを削除したログ
○567 → ファイル内の操作を記録したログ

さて問題は、具体的な運用方法。

ログの中から条件に合うものを抽出するために使える機能は、「表示」→「フィルタ」または「検索」。一覧で見ることができるのは「フィルタ」のみで、「検索」は下または上にひとつずつログをハイライトするだけ。
そして、「ログを調査する」という行為は、僕が思うに、フォルダやファイルの行方調査、というケースがほとんどなはず。
すると、フォルダ名やファイル名で絞り込みができないといけない。
しかしここで問題が出てくる。ログに記録されたフォルダやファイル名は、「フィルタ」では指定できないのだ。
ファイルサーバーのログ11 フィルタ画面

つまり、「検索」の「説明」ボックスにフォルダ名やファイル名を入力して「次を検索」ボタンを押して、イベント内でハイライトされたログをダブルクリックして中を見る、という、すごく面倒な手順を踏まなくてはならないのだ。
ファイルサーバーのログ12 検索画面

なるほど、そりゃみんな別ソフトを使ってログ管理するわけだ、と合点がいった。

続きのエントリでは、フリーのログ管理ソフトを実際に導入してみて、その使い勝手をレポートすることにする。

↓続き
無償ログ管理ソフトでファイルサーバーのアクセスログ取る方法

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です