標準機能を使ってパケットフィルタリングし、通信を制限します。無料で確実に効果がありますが、万能ではありません。脆弱性を放置しないでください。
更新は毎月、最低でも半年に一度は行ってください。年に一度は、放置し過ぎです。
各ファイルは、xzで圧縮しています。
中国・韓国・香港・マカオ・北朝鮮・ロシアに割り当てられたIPアドレスを拒否します。
日本に割り当てられたIPアドレスのみ許可します。逆に言えば、日本以外は全て拒否します。
中国・韓国・香港・マカオ・北朝鮮・ロシアに割り当てられたIPアドレスをCIDR表記したリストです。
日本に割り当てられたIPアドレスをCIDR表記したリストです。
シェルスクリプトになっていますが、先にiptablesの設定を行う必要があります。iptablesの使い方は、習うより慣れろ! iptablesテンプレート集 改訂版(テンプレート12/テンプレート13)等で学んでください。
ip6tablesは、iptablesのIPv6版です。使い方は基本的にiptablesと同じですが、icmpはicmpv6になります。詳しくはip6tablesのmanページを御覧ください。
.htaccessファイルをWebサーバーにアップロードしてください。アップロード後に.htaccessへファイル名を変更すれば完了です。先頭を.(ピリオド)にするのを忘れないでください。
JP版は、Google・Bing・Appleのクローラーを許可しています。
Apacheは2.4から、アクセス制御の記述方法が変わりました。旧形式も暫く続けますが、新しい方を使うようにしてください。
実際に試して確認するのが確実ですが、HTTP/2に対応していれば2.4のはずです。
nginxの設定ファイルと同じディレクトリに置いてください。
更にnginxの設定ファイルを編集する必要があります。
CNKR版はhttp
にgeo $ipal {include geo_cnkr.conf;}を、server
かlocation
にif ($ipal = "CNKR") {return 444;}を書き加えてください。
JP版はhttp
にgeo $ipal {include geo_jp.conf;}を、server
かlocation
にif ($ipal != "JP") {return 444;}を書き加えてください。
nginx -s reloadで、設定ファイルを再読込します。
8.0以降に対応
ファイルの内容を<system.webServer>
要素の<security>
要素内に書き加えてください。
IPv4だけなのは、IISの仕様です。
この機能は初期設定ではインストールされないので、公式サイトの手順に従ってインストールしてください。
リファレンス、設定例、組み込みサブルーチン辺りを参考にしてください。
Windows Vista以降 / Windows Server 2008以降に対応
netshを使って、Windows ファイアウォールを設定するバッチファイルです。
右クリックして、コンテキストメニューから管理者として実行を選択してください。後は実行を許可して、開いたウインドウが閉じるのを待つだけです。
数年前にコマンドプロンプトから入力する旧版を使った事がある場合は、旧設定削除用バッチファイルを実行してから使用してください。
netsh版と同じ事をPowerShellでしています。
PowerShellの初期状態ではファイルから実行出来ないので、Powershellを楽に実行してもらうにはを参考に行ってください。