【.htaccess】海外からのアクセスを制限する

トップページ > 海外からのアクセスを制限する

日本のIPアドレス以外からのアクセスを制限

海外からのアクセスを制限するには、
日本に割り当てられたIPアドレスからのアクセスのみを許可するのが一番簡単です。

#検索ボットの設定
SetEnvIf User-Agent “Googlebot” okbot
SetEnvIf User-Agent “Slurp” okbot
SetEnvIf User-Agent “bingbot” okbot
SetEnvIf User-Agent “msnbot” okbot

#DenyとAllowの順序を指定
order Deny,Allow

#全てのアクセスを拒否
Deny from all

#検索ボットからのアクセスを許可
Allow from env=okbot
#日本国内のIPアドレスからのアクセスを許可
Allow from 1.0.16.0/20
Allow from 1.0.64.0/18


Allow from 223.252.64.0/19
Allow from 223.252.112.0/20

簡単に解説しておきます。

まず、検索エンジンのクローラーからのアクセスまで制限されるとまずいので、
Google(Googlebot)やYahoo(Slurp)、Bing(bingbot)、MSN(msnbot)などの特定の検索ボットを指定しておきます。
※他にもアクセスを許可したいクローラーがあれば、追加して下さい。

order Deny,Allow
で、Deny(拒否)とAllow(許可)の順番を指定

Deny from all
で、一旦全てのアクセスを拒否します。

Allow from env=okbot
で、上記で指定した検索ボット(検索エンジン)からのアクセスを許可します。

Allow from IPアドレス
で、アクセスを許可するIPアドレスを指定していきます。

日本のIPアドレスは以下のサイトでまとめてくれているので、
そちらからコピペさせて貰って下さい。
http://www.cgis.biz/tools/access/

 

もし、検索エンジンも気にせず、単純に海外からのアクセスを制限したい場合には、
以下の記述のみでOKです。

#DenyとAllowの順序を指定
order Deny,Allow

#全てのアクセスを拒否
Deny from all

#日本国内のIPアドレスのアクセスを許可
Allow from 1.0.16.0/20
Allow from 1.0.64.0/18


Allow from 223.252.64.0/19
Allow from 223.252.112.0/20

 

国別コードを指定してアクセスを制限

国別コード(CC)を指定してアクセス制限の設定を行うこともできます。

日本以外からのアクセスを制限

日本の国別コード「jp」以外からのアクセスを制限する方法です。

#DenyとAllowの順序を指定
order Deny,Allow

#全てのアクセスを拒否
Deny from all

#日本国内からのアクセスのみを許可
Allow from .jp

日本とアメリカ以外からのアクセスを制限

日本以外にもアクセスを許可したい国があれば、「Allow from .xx」を下に追記していきます。

#DenyとAllowの順序を指定
order Deny,Allow

#全てのアクセスを拒否
Deny from all

#日本国内からのアクセスのみを許可
Allow from .jp
Allow from .us

特定の国からのアクセスを制限

今回は、まず全てのアクセスを許可した後に、
アクセスを制限する国を「Deny from .xx」で指定していきます。

#AllowとDenyの順序を指定
order Allow,Deny

#全てのアクセスを許可
Allow from all

#特定の国からのアクセスのみを拒否
Deny from .us
Deny from .ru
Deny from .cn

取り合えず、アメリカ(.us)、ロシア(.ru)、中国(.cn)を例に指定していますが、
他にもアクセスを制限した国があれば、「Allow from 国別コード」を追加して下さい。

各国のコード(CC)は以下のページで確認することができます。
https://ipv4.fetus.jp/

“海外からのアクセスを制限する” への1件のコメント