NginxでIPアドレスのアクセス制限を設定する方法
Webサーバーのエラーログを見たら、海外からのアタックがたくさんありました。
日本国内から見られるだけでOKのサイトに関しては、IPアドレスによるアクセス制限を設定して、海外からのアタックを阻止してみます。
- 国別IPアドレスによってアクセスの許可と拒否を分ける。
- Webサーバーソフトの「Nginx」で設定する。

(参考)
以下の記事を参考にしました。
programming-beginner-zeroichi.jp
これで、日本国内のみからWebサーバーにアクセスを許可する設定にできました。
例外の追加
海外からのアタックは遮断できたけど、アメリカにあるGoogleのサーバーからもアクセスできなくなりました。(汗)
利用しているGoogleのサービスだけはアクセスを許可したいので、GoogleのIPアドレスもアクセス許可リストに追加します。
手抜きをしないで、ホワイトリスト(許可)とブラックリスト(拒否)を用意すれば、アクセスを細かくコントロールできますね?
最初は面倒くさいので、
- 全部拒否
- 特定のIPアドレスだけは許可
という方法で運用してみます。
許可や拒否に使うIPアドレスのリストを自動的に生成できたら便利だなー。
AIとか機械学習でスパム判定させて、自動的にリストを作成するようにできそうな気がします。