AWSネットワークACLルール制限を回避する


12

VPCネットワークACLには、最大で40のルールを適用できます。

ポートおよびプロトコルを介して、システムへのアクセスを明示的にブロックする必要がある50を超えるIPアドレスのリストがあります。これはACLの理想的な目的ですが、この制限がこのタスクの完了を妨げています。

もちろん、各ホストのIPTablesでこれを行うことができますが、VPC内のすべてのコンポーネント(たとえばELBへ)へのすべてのトラフィックをブロックしたいと思います。さらに、これらのルールを各ホストではなく1か所で管理する方がはるかに理想的です。

システム/プラットフォームレベルでこれを行うことを理解していない何らかの方法があることを願っています。セキュリティグループは明示的な許可であり、拒否アクションはありません。そのため、トリックは行いません。


Ansibleのようなプロビジョニングソフトウェアをiptables管理に使用すれば完了です。明らかに、EC2インスタンスでのみ機能します。LBなどではない
-Kyslik

はい、iptablesを行うことはEC2には問題ありませんが、着信トラフィックの99%がELB構造にヒットします。私たちが対処しなければならないこれらの既知の詐欺師からの多くのヒットにお金を払うことになります。入力をありがとう
-emmdee

1
50個の個別IPをブロックするのは奇妙な要件のようです。
user253751

@immibisたぶんあなたのために奇数。多くの詐欺師が合法的な顧客を台無しにしようとしています。私たちは彼らのアカウントをブロックしますが、明らかなロシア/ナイジェリア/中国の詐欺師のような完全なIP禁止も行いました。私たちの製品には、多くのユーザーとの対話、チャットなどがあります-そのようなプラットフォームではまったく奇妙ではありません。
-emmdee

1
...そして、あなたの詐欺師は誰も動的IPを持っていませんか?
user253751

回答:


8

ここに左フィールドのアイデアがあります。各IPのVPCルートテーブルに「壊れた」ルートを追加することにより、50個のブロックされたIPを「ヌルルート」できます。

これにより、IPからのトラフィックがインフラストラクチャに到達するのを防ぐことはできません(NACLとSGのみがそれを防ぎます)が、すべてのリターントラフィックが「帰宅」するのを防ぎます。


トランジットゲートウェイを作成し、ルーティングを設定してからトランジットゲートウェイを削除することにより、誤ってルーティングされたトラフィックを一度無効にしました。しかし、もっと簡単な方法があるかもしれません。
ティム

悪くないアイデア。箱から出して非常に感謝しています。いくつかの実験を行います。WAFを支払わずに進む正しい方法かもしれません
-emmdee

0

NACLの制限を増やす方法はありません。また、多数のNACLルールがネットワークパフォーマンスに影響を与えます。

何よりもアーキテクチャ上の問題があるかもしれません。

  1. インスタンスはパブリックサブネットにある必要がありますか?
  2. 受信トラフィックを制限するためにNATゲートウェイを設定しましたか?
  3. パブリックサブネットに存在する必要があるインスタンスについて、最小限のインバウンドセキュリティグループルールがありますか?
  4. AWS WAF IP一致条件を使用して、CloudFrontとロードバランサーへの不要なトラフィックをブロックしていますか?

NACLルールの制限に達した場合は、AWSが推奨するVPCアーキテクチャへのアプローチや、WAF(およびShield for DDoS)などのサービスを使用して、不要なトラフィックや明白な攻撃をブロックしていないためです。

DDoS攻撃が懸念される場合:Amazon CloudFrontおよびAmazon Route 53を使用してDDoS攻撃から動的Webアプリケーションを保護する方法


NATゲートウェイは、インバウンドではなくアウトバウンドトラフィック用です。
ティム

@Timを修正して、インスタンスをNATゲートウェイの背後のプライベートサブネットに配置すると、インバウンド攻撃にさらされることなくアウトバウンド接続が可能になり、NACLのIPをブロックする必要がなくなります
Fo。

非常にトラフィックの多いWebサイトの場合、WAFはかなり高価です。その理由でそれを避けようとしています。セキュリティグループが明示的にブロックすることはできず、Web ACLにこの制限があるという事実は、大きな現金獲得のようです。
エムディー

説明されていないユースケースに依存すると思います。これらのIPをブロックする理由がWebサーバーを攻撃している場合でも、サーバーへのパブリックアクセスが必要です。これは、ロードバランサーまたはプロキシを意味します。その場合、プライベートサブネットは役に立ちません。
ティム

私のユースケースは、99%のELBが受信トラフィックを取得することです。EC2インスタンスはELBの背後にあるプライベートです。
emmdee

0

これはまさにあなたが求めたものではありませんが、十分に仕事をするかもしれません。

インフラストラクチャの前にCloudFrontをセットアップします。IPマッチ条件を使用して、トラフィックを効果的にブロックします。CloudFrontは静的コンテンツと動的コンテンツの両方で動作し、パブリックインターネットではなくAWSバックボーンを使用するため、動的コンテンツを高速化できます。ドキュメントの内容は次のとおりです

一部のWeb要求を許可し、要求の発信元のIPアドレスに基づいて他のWeb要求をブロックする場合は、許可するIPアドレスのIP一致条件と、ブロックするIPアドレスの別のIP一致条件を作成します。

CloudFrontを使用する場合、セキュリティグループを使用してパブリックリソースへの直接アクセスをブロックする必要があります。AWSアップデートセキュリティグループのラムダは中CloudFrontのトラフィックを許可するまでにセキュリティグループを維持するが、他のトラフィックを拒否します。CloudFrontを使用してhttpをhttpsにリダイレクトする場合は、スクリプトを少し調整して、httpがインフラストラクチャにヒットしないようにすることができます。直接管理アクセスが必要なIPをホワイトリストに登録することもできます。

または、CloudFlareなどのサードパーティCDNを使用することもできます。CloudFlareには効果的なファイアウォールがありますが、必要なルールの数は月額200ドルです。これはCloudFrontよりも安いかもしれませんが、AWSの帯域幅はかなり高価です。無料プランでは、5つのファイアウォールルールのみが提供されます。


静的コンテンツにはすでにクラウドフロントを使用していますが、多くのサイトは動的Webコンテンツです。
-emmdee

CloudFrontはまた、動的なコンテンツのために使用することができるaws.amazon.com/blogs/networking-and-content-delivery/...
Foを。

CloudFrontは動的コンテンツを高速化できるため、パブリックインターネットではなくAWSバックボーンを使用すると考えています。CloudFrontの帯域幅はEC2よりわずかに安いため、CloudFrontがEC2に戻る帯域幅は無料であることをしばらく前に発表したと思います。
ティム
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.