deltasystems / aws-fail2ban
与AWS资源兼容的fail2ban动作
Requires
- php: >=5.3.0
This package is auto-updated.
Last update: 2024-09-08 02:05:35 UTC
README
贡献:最初从https://github.com/anthonymartin/aws-acl-fail2ban分支而来
aws-fail2ban
此包为fail2ban添加了管理AWS(经典waf-regional和新的wafv2)IP集的功能。通过fail2ban管理的IP集可以轻松添加到WAF/ACL规则中,以阻止该IP集中的地址。这允许fail2ban与AWS负载均衡器和其他可以与AWS WAF关联的资源集成,以便在AWS环境边缘进行封禁。
依赖项
- 具有适用IAM策略的IAM账户和API访问密钥(请参阅示例文件夹)。
- 必须安装AWS CLI,并且您的访问凭证必须按照AWS CLI文档中所述设置(通过~/.aws/config或通过环境变量)。https://docs.aws.amazon.com/cli/latest/userguide/install-cliv1.html
- 对于waf-regional,您需要创建一个区域WAF、IP集并记录IP集ID。
- 对于wafv2,您需要一个区域WAFv2 ACL、IP集并记录IP集ID和名称。
- 对于任一WAF选项,您应该有一个ACL规则来阻止您配置的IP集中创建的IP地址。
- 如果您尚未配置Nginx/Apache使用X-Forwarded-For,您需要首先完成此操作,以便您捕获真实的客户端IP地址而不是负载均衡器的IP地址。
AWS文档 - https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/x-forwarded-headers.html NGINX访问日志 - https://ma.ttias.be/nginx-access-log-log-the-real-users-ip-instead-of-the-proxy/ NGINX代理 - https://www.nginx.com/resources/wiki/start/topics/examples/forwarded/ Apache访问日志 - https://aws.amazon.com/premiumsupport/knowledge-center/log-client-ip-load-balancer-apache/ Cloudflare - https://support.cloudflare.com/hc/en-us/articles/200170706-How-do-I-restore-original-visitor-IP-with-Nginx-
安装
- 推荐的安装方法是使用composer安装:
composer require deltasystems/aws-fail2ban
- 或者,您可以克隆或下载此存储库。 - 请确保您的apache配置和fail2ban配置正确。以下提供了一些帮助。
fail2ban配置
- 将
fail2ban/action.d/aws-acl.conf
复制到/etc/fail2ban/action.d/
目录。使用上面记录的IP集信息进行修改。 - (可选)创建一个过滤器来匹配您要记录的任何日志文件。
- 创建或更新您的jail配置。请参阅代码中的示例。