海外からのアクセスを拒否する方法

玄関にスズメが住みはじめたYu-ichiです:neko:

もう3月ですね。
花粉大丈夫ですか?:cat_8:

さて、今回は海外からのアクセスを拒否する方法です。:wa-i:
不正アクセス被害が増えている昨今、自分のサイトは大したことないからといってセキュリティをおろそかにしていませんか?:cat_6:
個人情報も扱ってないし、機密情報も無いから関係ないや~なんて思っていても、サイトを改ざんされてしまい、閲覧者に不正なプログラムを配布してしまったり、フィッシングサイトへの誘導や他サイトへの攻撃に使われてしまったりと、気が付かないうちに加害者になってしまう可能性があります。

サーバ環境やCMSのバージョンアップ、セキュリティソフト・プラグインの導入で対策はしていても、いつ破られるかわかりません。:kaomoji3:
実際に一度狙われてしまい、何度も海外から不正なアクセスを受けているケースも確認しています。:kaomoji5:

そこで、海外からのアクセスは関係ない!国内だけで勝負してるんだ!というサイト向けに「.htaccess」で国内からしかアクセスできない環境を作ってみます。

まず、最新版の国内IPリストはJPNICが公表しています。
https://www.nic.ad.jp/ja/ip/list.html

ここから拾ってhtaccessに書いていけばよいのですが
非常にめんどくさい!
コピペでいけるフォーマットではないので、手間がかかります。

そこで、便利なサイトをご紹介します。
http://www.cgis.biz/tools/access/

まずサイトにアクセスして、ページ下にある「.htaccessダウンロード」ボタンを押すと、そのまま使えるファイルがダウンロードできます。
すごく簡単で便利です。(制作者さまさまです。:wa-i:

ただし、注意しなければならないのは海外IPを全てブロックしてしまうので、検索エンジンのクローラーまでブロックしてしまうことです。
これでは、検索結果に表示されなくなりますので、ホームページを持っていても意味がなくなってしまいます。

ですので、主要な検索エンジンクローラーだけは許可しておきましょう。
SetEnvIf User-Agent “Googlebot” okbot
SetEnvIf User-Agent “msnbot” okbot
SetEnvIf User-Agent “bingbot” okbot
SetEnvIf User-Agent “Slurp” okbot
でクローラーボットの定義をして
Allow from env=okbot
で許可します。

これで検索エンジン対応と海外IP拒否設定が完了です。
最後にGoogleのサーチコンソールを使ってブロックされていないか確認しておきましょう。:neko:

トラックバックURL