Linuxのアクセスログを確認するサンプルコマンド

wlan-2088659_1280
LINEで送る
Share on GREE
Share on LinkedIn

先日から公開しているサーバに対してのアクセスが気になって仕方がないので、確認する作業を自動化してしまおおうと考えた。
 

いっその事、アクセスが多い場合、メール送信するか、何らかのお知らせを送るようにすると、即時に対応出来るようになるしね。
 

とりあえず、Linuxは便利なAccess-logが存在するので、それを簡単に確認できるように、コマンドを備忘録として残しておくことにする。

ログインattack確認の「auth.log」

ログイン認証のログが書き込まれる「auth.log」はデフォルトで1週間に1回ログローテートされる。
 

海外からのアタックを受けると、この容量が半端なく肥大化してくるので、アクセスの多いIPアドレスなどを調査して、ブロックするようにすれば
ログの肥大化も、アクセスのボリュームに応じてかかるサーバー負荷を回避することができる。
 

まずは、auth.logのカラムフォーマットの確認
 

月 / 日 / 時分秒 / OS / type / message

 

さらにmessage内に”rhost=***”にIPアドレスが入るようなので、この値を一覧で取得します。
 

 

簡単に解説すると、awkコマンドで、auth.logファイル内の”rhost=”を含む行のみを処理します。
 

行全体を”rhost=”でsplitして、その後方の文字列を” “で分解して、アドレス部分だけを取得します。
 

結果は以下のようなアクセス履歴が取れました。(特に問題ないので掲載しておきます)
 

 

見てわかりますが、桁違いのアクセスがあります。
これらが問題のアドレスですね。
 

すぐにでも、ブロックしておきましょう。
 

とりあえず、auth.logだけの操作でしたが、他のログ・ファイルも同様に調査して、サーバーの健康状態を保つようにしましょう。

Leave a Reply

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


*