1 はじめに
Webサーバー・アクセスの定性定量的な測定は、Google Analyticsを使えばできるものの、
海外からの不正アクセスがないかのセキュリティ監視の面からは、
やはり生ログを見てみたいものです。
普段の作業はWindowsで行っているため、
できればWindowsでWebサーバーのログを簡単に見られたらいいなと思っているのですが、
そうなるとログファイルをダウンロードしなければなりません。
これが面倒で、結局Webサーバーのアクセスログはあまり見ていませんでした。
いろいろと探してみると、
visitorsというツールがログ解析結果をテキストで出力してくれることを見つけました。
これなら面倒なWebサーバーログをダウンロードすることなく、
毎日定時にメールで受け取ることができるようになるのでは ないかと!
それで、本記事では、
Webサーバーログ解析結果をメールで受け取る方法を示したいと思います。
Webサーバーログを見ていると、
WordPress関連の下に示すファイルへのアクセスが意外と多いことがわかります。
・ phpMyAdmin ⇒ サイト・データベースへ不正アクセスを試みている
・ wp-login.php
・ "/?author=1" ⇒ おそらくWP投稿者名から、
WPログイン・アカウントのヒントを得ようとしているのでは?
ヤツらは、不正侵入しようと、日々セキュリティ対策の甘いサイトを探し回っているのですね。
2 visitorsの機能と使い方
visitorsは、ApacheなどのWebサーバー・アクセスログを解析するツールです。
ソースファイルをダウンロードしてターゲットホストでmakeする、
LinuxなどのUNIX系CUIツールとなります。
なお、Windowsバイナリーは、有償となるようです
(多少の手直しが必要となりますが、自分でbuildすることも可能かと?)。
本章では、visitorsの使い方を見ていきます。
2.1 機能概要
visitorsのレポートには、下に示すよう多くの便利な情報と統計が出力されます。
・リクエストされたページ
・リクエストされた画像
・ヒットと期間によるリファラー
・日次のユニーク訪問者
・訪問に対するページビュー
・Googleクローラーによってアクセスされたページ
(および各ページのGoogleからの最終アクセス日時)
・毎日のGoogle検索からの訪問の割合
・ユーザーのナビゲーションパターン(ウェブ追跡)
・Google検索で使われたキーフレーズ
・ユーザーエージェント
・アクセスの週日および時間分布
・週日/時間組合せ2次元マップ
・月/年組合せ2次元マップ
・Graphvizによる視覚的パス分析
・OS、ブラウザおよびドメイン人口
・404 エラー
解析結果は、html形式、またはテキスト形式で出力されます。
テキスト形式で出力することにより、
ログ解析結果をメールするなんていうことができてしまいます。
図2.1-1に、 visitorsのWebログ解析結果出力例を示します。
2.2 コマンド構文
本節では、visitorsコマンド構文を示します。
2.2.2 visitorsの主要なオプション
表2.2-1によく使うと思われるオプションを示します。
使用可能な全てのオプションについては、下に示すページをご覧になるか、
manコマンド(”man visitors”)でご確認ください。
http://www.hping.org/visitors/doc.html
2.3 cronによる解析結果の定時メール
下に示すように、cronに登録しておけば、
Webログ解析結果を決められた日時にメールで受け取れるようになります。
下の例は、毎日午前4時にWebログ解析結果をメールで受け取る例となります。
1 |
00 04 * * * /usr/local/sbin/visitors -A -Y -o text /var/log/httpd/access_log --trail --prefix https://dotiga.blog | mailx -s "Httpd Report [`hostname`]" root |
2.4 GraphvizによるWebサイト・アクセスパターンの表示
"-V"、または"—graphviz"オプション付きvisitorsでWebログを解析すると、
WebサイトのアクセスパターンをDOTという言語で記述されたテキストが出力されます。
アクセスパターンは、グラフ構造で表せられます。
1 |
visitors access.log --prefix https://www.example.com --graphviz > graph.dot |
WindowsにGraphvizというツールがインストールされていれば、
図2.4-1に示すようにコマンドプロンプトで、
"dot"というコマンドでDOTのテキストを図2.4-2に
示すようにビジュアル化することができます。
Graphvizの入手、および使い方、またDOT言語の詳細については、
下に示すページをご覧いただければと思います。
3 visitorsのインストール
3.1 visitorsソースファイルのダウンロードとmake
visitorsのインストールは、ソースファイルをダンロードしてmakeするだけです。
試してはいませんが、Makefileを書き換えればWindows版のバイナリ-もbuildできそうです。
WindowsにCygwin環境を構築すれば、もっとも手直しが少なさそうですが。。。
IISログを解析する場合は、
IISフォーマットからApacheフォーマットへ変換するツールを実行するための
perlが別に必要になります。
3.1.1 ソースファイルの入手とmake
2022年06月28日現在、Ver. 0.7が最新です。
ソースファイルの入手とmakeは、以下に示すように行います。
1 2 3 4 |
$ wget http://www.hping.org/visitors/visitors-0.7.tar.gz $ tar zxvf visitors-0.7.tar.gz $ cd visitors_0.7 $ make |
3.1.2 バイナリ-ディレクトリへの移動
実行バイナリ-は、root権限でPATHの通ったディレクトリに移動します。
1 2 3 4 5 6 |
$ su # cp visitors /usr/local/sbin # gzip visitors.1 # cp visitors.1.gz /usr/share/man/man1 # exit $ |
以上
HTMLだと、
思うように編集することは難しく、やろうすればとっても時間が掛かります。
ですので、本記事の元となっているWordで作成したPDFを
ページ最後に貼り付けました。
役に立てていただければ、うれしく思います。
このPDFファイルは、自由に配布されてもかまいません。
ただし、再配布の際には、
入手元と著者名は明らかにしてください。
なお、上のPDFファイルの内容、また本文中の記述に、
誤字や脱字、誤った内容の記述など見つかりましたら、
下に示すフォームでご連絡いただければ幸いです。