ハマログ

株式会社イーツー・インフォの社員ブログ

AWS環境で特定IPからのアクセスを拒否する

AWSのVPC内に構築されているウェブサーバーがあり、特定のIPアドレスを拒否する必要がありました。
セキュリティグループで余裕だと思っていたのですが、よく考えたらホワイトリスト方式なので、ブラックリストのような扱いができません。
今回、VPCのネットワークACL(アクセスコントロールリスト)で対応したので、方法をまとめておきます。

その前に

ネットワークACL以外でAWS環境でIPアドレスをブロックする方法を考えます。なお、可能な限りより上位の箇所でブロックしたほうがよいです。

ALBリスナールール
IPアドレスとURLとの組み合わせなど、柔軟にルールを設定できます。
AWS WAF
AWS WAFでIP拒否するパターンです。こちらもリスナールール同様に柔軟な条件を設定することができますが、ALBリスナーリスナールールよりは設定に時間がかかりそうです。
EC2インスタンス内で設定
Apacheやfirewalldなどで設定するパターンです。アクセスは拒否できますがサーバーまでアクセスは到達するので、できれば避けたいところです。

AWS VPCのネットワークACLの設定

AWSマネジメントコンソールから設定します。

VPCダッシュボード→セキュリティ→ネットワークACLと進んで、対象のACLを選択します。
デフォルトで、すべてのIPを許可する設定になっています。
「インバウンドルールの編集」で拒否するIPを追加します。ルール#の降順でルールが適用されていきます。標準で100が登録されているので、今回は99からいくつか作成しました。

参考URL
Amazon VPC>ユーザーガイド>ネットワークACL>ネットワーク ACL ルール
これで完了です。コメントが書けないのであとでなんで拒否したのか絶対に忘れる・・・その点はAWS WAFのほうが良さそうです。
AWSIP制限IP拒否IP許可NetworkNetwork ACLセキュリティネットワークネットワークACL拒否

kaneko tomo   kaneko tomo   2020年1月10日


関連記事

AmazonLinux2でClamAVを動かす

はじめに AmazonLinux2で動かしていたClamAVがエラーで動かなくな…

Amazon Linux 2にBitnami Redmine Stackを設置する

はじめに イーツー・インフォではタスク管理にBacklogを利用していますが、数…

AWSに設置したphpMyAdminにBasic認証を設定/特定のIPアドレスによる制限

AWSで、ELB→EC2の環境にphpMyAdminを設置しました。 yumコマ…


← 前の投稿

次の投稿 →