2017-01-12 5 views
-1

私はAmazon Web Servicesにサインアップし、Amazon S3サービス経由で静的なWebサイトを作成しました(Bucketを作成し、そのBucketにドメインをマップしました)。Amazon S3(Amazon Simple Storage Service)の不正なボットをブロックする方法

このサービスは素晴らしい見えますが、私は一つの問題を持っている - 私は悪いボットをブロックする方法がわからないと

Amazon Webサービスのdoesn(あなたがすべての帯域幅のためにアマゾンの電荷があることを知っている)私の帯域幅を無駄にするためにそれらを防ぐために.htaccessをサポートしていないので、どうやってそれらをブロックするのか分かりません。あなたができる185.11.240.175

:例えば

  1. 経由ボット名、::BadBot1
  2. 経由ボットIP、例えば、私は必要なもの

    は、2つの方法を経由して不正なボットをブロックすることです私はそれをするのを助けてください?

+0

[[AWS WAFとAWSのラムダによるレートベースのブラックリストの設定方法](https://aws.amazon.com/blogs/security/how-to-configure-rate-based-blacklisting-with-aws -waf-and-aws-lambda /) – yaitloutou

+0

これを実行していないが、NotIpAddressを含む条件付きのS3バケットポリシーを見てください:http://docs.aws.amazon.com/AmazonS3/latest/dev/example- bucket-policies.html#example-bucket-policies-use-case-3。 「ボット名」がどのように表示され、検出されたかはわかりません。 – jarmod

答えて

1

S3バケットポリシーでは、指定されたIPアドレスをブロックすることは間違いありませんが、バケットポリシーサイズにはサイズ制限(〜20 KB)があり、不評のIPアドレスを制限できないポリシーを維持しようとします。

AWSのWAF & Shieldサービスは、AWSがIPをブロックするために提供する最も強力な方法であり、S3原点と簡単に統合できます。 Cloudfrontでは、Waf & Shield ACLをプラグインできます。このACLは、定義したIPのセットを許可または禁止するルールで構成されています。

AWSには、出発点として使用できるサンプルラムダ関数hereがあります。ラムダ関数をスケジュールで実行し、ブロックしたいIPのリストを取得し、そのリストを解析し、WAFのIPセットに見つかった新しいIPを追加する(またはリストにないIPを削除する)ことをお勧めします。上記のリンクのwaf-tor-blockingwaf-reputation-lists関数は、これを行う方法の良い例を提供します。

ボット名を検出することで正確にはわかりませんが、標準Waf & Shieldのアプローチでは現在、s3バケットに送信されたCloudfrontログを解析しています。 s3バケットは、新しいgzipログファイルを受信するたびに、SNSまたはラムダ機能を直接起動します。ラムダ関数はそのファイルをダウンロードし、悪意のある要求を解析し、関連するIPアドレスをブロックします。 waf-block-bad-behavingwaf-reactive-blacklistは、私があなたがこれにアプローチする方法の例を提供するためにリンクされています。場合によっては、リクエストのユーザーエージェント文字列に不正なボットの署名が表示されることがあります。 Cloudfrontのログにはユーザーエージェントの文字列が表示されるので、それを解析してそれに応じて関連するIPをブロックする可能性があります。