簡體   English   中英

如何阻止Amazon S3(Amazon Simple Storage Service)中的惡意程序?

[英]How To Block Bad Bots in Amazon S3 (Amazon Simple Storage Service)?

我已經注冊了Amazon Web Services,並通過Amazon S3服務創建了一個靜態網站(創建了存儲桶並將域映射到該存儲桶)。

這項服務看起來不錯,但是我有一個問題-我不知道如何阻止Bad Bot並防止它們浪費我的帶寬(你們都知道Amazon對帶寬收費)

Amazon Web Services不支持.htaccess,而且我不知道如何阻止它們。

我需要的是通過2種方式阻止不良機器人:

  1. 通過Bot名稱,例如:BadBot1
  2. 通過Bot IP,例如:185.11.240.175

你能幫我做嗎?

您的S3存儲桶策略肯定會允許您阻止指定的IP地址,但是存儲桶策略大小有一個大小限制(〜20 kb),這可能會使試圖維護限制不可信IP地址的策略變得不可行。

由Cloudfront提供支持的AWS WAF & Shield服務是AWS提供的最強大的IP阻止方式,您可以輕松地將其與S3來源集成。 Cloudfront允許您插入Waf & Shield ACL,該ACL由允許或禁止您定義的IP組的規則組成。

AWS 在此處提供了一些Lambda示例函數,您可以將其用作起點。 您可能希望Lambda函數按計划運行,獲取要阻止的IP列表,解析該列表,然后將找到的IP添加到WAF的IP集中(或刪除列表中不再存在的IP)。 上面鏈接中的waf-tor-blockingwaf-reputation-lists函數提供了很好的示例。

我不確定檢測Bot名稱是什么意思,但是標准的Waf & Shield方法目前正在解析發送到s3存儲桶的Cloudfront日志。 每當您的s3存儲桶收到新的壓縮日志文件時,它將直接觸發SNS或Lambda函數。 然后,Lambda函數將下載該文件,將其解析為惡意請求,並阻止關聯的IP地址。 我在回購中鏈接了waf-block-bad-behaving waf-reactive-blacklistwaf-reactive-blacklist功能,以提供有關如何實現此目的的示例。 有時,您會在請求的用戶代理字符串中看到不良機器人的簽名。 Cloudfront日志將顯示用戶代理字符串,因此您可以解析該字符串並相應地阻止關聯的IP。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM