ハマログ

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

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   2020年1月10日


関連記事

EFS自動マウント設定

EFS(Elastic File System) を触る機会があったので忘備録と…

ALBのターゲットが全部unhealthyなのにサイトが表示される件

ALB(AWSのロードバランサ)に紐付いているターゲットグループに登録されている…

AWSのマルチアカウントでクレジットが共有されないように設定する

AWSで自社/他社含めて複数のアカウントを運用しており、ログインはAWS SSO…


← 前の投稿

次の投稿 →