コピペで使える!!アクセスログをIPアドレス単位でカウントする方法

目次

202308-01

🎬初めに

お久しぶりです!!フューチャースピリッツ、エンジニアブログの中の人、「通行人 R」でございます。

今回はサーバーエンジニアである「通行人 R」が独断と偏見で選んだサーバーのアレコレについてご紹介する新コーナー!!

ゼロから始めるサーバー入門講座」をお届けいたします!!

シリーズ第三回目は「アクセスログをIPアドレス単位でカウントする方法」について皆様にお届け致します!!

誰でも簡単にコピペで使用できますので是非ご利用頂ければと思います!!

📘アクセスログとは?

202308-02

初めにアクセスログとは?について簡単に説明させていただきます!!

アクセスログとはズバリ「ウェブサーバー」での活動履歴やトランザクションに関する情報を記録するログファイルとなっております。

主にwebサイトへのアクセスを記録しているログファイルとなっております。

アクセスログを確認する事でアクセス元のIPアドレスを確認したり、「GET」や「POST」等のHTTPメソッドを確認する事ができます。

その外にもリファラやレスポンスステータス、リクエストされたURL等の詳細情報を確認する事ができます。

どのような時に確認するのか?

実際、サーバーエンジニアとして業務を行っていると、様々な場面でアクセスログの確認が必要となる事がございます。

では実際にどのような場面でアクセスログの確認が必要となるのかについて解説致します!

不正アクセス調査

近年、件数の増えてきているweb改竄等の手法の一つとして管理画面への不正アクセス等がございます。

そういった場合、アクセスログを確認する事で管理画面への不正アクセスの調査を行う事ができます。

体感としまして不正アクセス等は海外からのアクセスが多いような印象でございます。

Apacheにて高負荷が発生している時

弊社では24時間、サーバー監視を行っております。

そういった中でApache(webサーバー)にて高負荷が発生した場合、様々な原因が考えられますが「アクセス集中」や「攻撃的アクセス」等が発生している場合などがございます。

そういった場合、アクセスログを確認する事で原因判断の材料として活用する事ができます。

📘IPアドレス単位でカウントする方法

202308-03

大変長らくお待たせいたしました!

では実際にアクセスログをIPアドレス単位でカウントする方法を解説したいと思います!!

まず初めにターミナルにてサーバーへログインしアクセスログのあるパスまで移動します。

ログの位置につきましては使用しているOSや設定環境によって異なりますが「RHEL🎩」系OSでデフォルト設定であれば下記のパスにログがございます。

cd /var/log/httpd/

次に開きたいログを指定し下記コマンドを使用してIPアドレス単位でカウントを行います。

cat access_log | cut -d " " -f 1 | sort | uniq -c

上記を実行すると下記のような結果が表示されます。

   2 192.168.1.100
   2 192.168.1.101
   1 192.168.1.102

左側にアクセス数が表示され右側に対象するIPアドレスが表示されます。

以上でIPアドレス単位でカウントする方法は完了となります。

その他にも「grep」等を使用しURL単位やステータスコード単位で絞り込む事も可能となっております。

お好みに合わせてカスタムを行いご利用いただければと思います!!

🎯まとめ

202308-04

いかがだったでしょうか?

今回は「アクセスログをIPアドレス単位でカウントする方法」について解説致しました。

アクセスログには様々な情報が格納されておりログを解析する事で不正アクセスやアクセス集中等の調査を行う事ができます!!

今回紹介しましたコマンドはエンジニアの方は覚えておいて損はないかと思います!!

ぜひ活用してみてください!!

それでは次回の記事でお会いしましょう!!さよなら!!