レンタルサーバーを利用してWebサイト運営されている方も多いと思いますが、不正なアクセスが大量に発生するとサーバーに負荷がかかり、場合によっては、レンタルサーバーからアカウントが停止される場合があることをご存知でしょうか?
不正なアクセスがある大量に発生すると、Webページの表示が遅くなったり、表示されなかったり、前兆は様々ですが、なかなか気が付きにくものです。
しかし、それが原因でアカウントが停止されてしまっては、迷惑極まりないですよね。
そこで、大抵のレンタルサーバーで利用できる「htaccess」を使って、アクセス制限をかける方法をご紹介します。
この方法を使えば、日本国内のアクセスのみを許可したり、特定の国からのアクセスを拒否したり、特定のIPアドレスからのアクセスだけを拒否したりを色々設定することができますので、覚えていて損はないのではないでしょうか。
日本国内からのみアクセスを許可する方法
- 日本国内で利用されているIPアドレスのリストを以下のサイトからhtaccssファイルとして取得します。
https://www.cgis.biz/tools/access/
※ 上記サイトは、リストの取得も可能ですし、htaccssファイルとしても取得できて便利です。 - 取得したhtaccessファイルをテキストエディタで開きます。
- Googleなどクロールアクセスを許可するため、下記コードを追加します。
SetEnvIf User-Agent "Googlebot" allowbot SetEnvIf User-Agent "msnbot" allowbot SetEnvIf User-Agent "bingbot" allowbot SetEnvIf User-Agent "Slurp" allowbot
- 出来上がったファイルのテキストを全てコピーし、既存のhtaccessファイルに追記し保存します。
※ htaccessファイルがない場合は、「.htaccess」のファイル名で、ファイルを作成して、コードを貼り付けてくだい。
特定の国からのみアクセスを拒否する方法
- 下記サイトから、拒否したい国のIPアドレスを確認します。
Create an Access Control List to Block Countries or Continents - 拒否したいIPアドレス所属国にチェックを入れます。
- 【 Apache .htaccess Deny 】にチェックを入れて【 Create ACL 】ボタンをクリックします。
- 出来上がったファイルのテキストを全てコピーし、既存のhtaccessファイルに追記し保存します。
※ htaccessファイルがない場合は、「.htaccess」のファイル名で、ファイルを作成して、コードを貼り付けてくだい。
特定のIPアドレスを指定してアクセスを許可・拒否する方法
特定のIPアドレスを許可したい場合には
order deny,allow
deny from all
allow from IPアドレス
特定のIPアドレスを拒否したい場合には
order deny,allow
allow from all
deny from IPアドレス
を「htaccess」に記述することで、個別のIPアドレスで許可・拒否の設定を行うことができます。
今回ご紹介した方法で、不正なアクセスをブロックして、サーバーに無駄な負荷をかけずに済みますので、不審なアクセスなどが見受けられる場合には、導入を検討することをおすすめいたします。
また、いつ不正アクセスが始まるかは、まったく検討ができませんので、常日頃から、サーバーの転送量やCPUの使用料などのリソース情報やアクセスログなどは、チェックしておいたほうが安心だと思います。
思いがけず、アカウントが停止されて、せっかくのWebサイトが観覧できなくならないように、事前の備えと対策を検討して置くと良いと思います。