Articles of 限速

使用haproxy per url per ip来限制速度

我们的服务器不断遭到某人的袭击。 它不是DDOS。 只有一个IP每秒超过200次的url。 目前我正在通过ip表阻止用户。 我们正在使用HAproxy进行负载平衡。 有没有办法限制一个用户的基础上,他的IP和url被击中? 我不想阻止基于IP,因为NAT的用户可能会受到影响。 假设我想显示503错误页面,如果一个特定的IP在5分钟内击中了像www.example.com/somepage.php?some=option&other=option2超过3000次的相同的url? 这意味着相同的IP可以访问其他url,如www.example.com/somepage.php?another=someotheroption。

HAProxy限速 – 禁止滥用者30分钟

我有以下configuration,适用于速率限制连接。 如果滥用者被authentication并且他每分钟访问定义的正则expression式位置超过30次,则启动速率限制,并且将其转发到rate_limiting后端,在那里他收到错误消息: frontend http_in bind xx.xx.xx.xx:80 mode http default_backend backend_nodes tcp-request inspect-delay 5s acl location_request path_reg ^/(.*)/(.*)/ acl too_many_requests sc0_gpc0_rate(context) ge 30 acl mark_seen sc0_inc_gpc0 gt 0 stick-table type string size 100k store gpc0_rate(60s) tcp-request content track-sc0 cookie(authValidation) if location_request use_backend rate_limiting if mark_seen too_many_requests backend backend_nodes mode http balance roundrobin option http-server-close server srv1 […]

在Windows 2008上按照速率/string匹配阻止UDPstream量

我正在pipe理Windows 2008服务器(64位)。 它正在遭受一系列DOS攻击,其中UDP数据包被发送到特定的端口并包含特定的string。 我需要做的是限制UDPstream量到每个IP的基础上的端口,特别是如果我可以通过string筛选,那么它会完成我想要的一切。 例如,如果来自该IP的速率大于每秒5次,则阻止来自任何包含string“status”的单个IP的UDPstream量,并且允许所有其他IPstream量。 这可以在Linux上用iptables来完成,那么有没有办法在Windows上完成,或者至less得到一些东西?

DNS查询限制WinServer 2008R2

情况:目前,我正在看到一个巨大的来自一个IP地址的请求每2-3秒钟爆发大约85个查询。 然后另一个IP发送一个新的波,等等(目前我的DNS服务被closures,所以它不参与看起来像另一个放大攻击)。 问:是否有方法来设置每个IP的查询限制? 同一个客户端很难在一秒钟内解决超过2个或3个域名的问题,这听起来像是一个合理的步骤。

iptables和EC2的“安全组”之间的主要区别是什么?

如果我通过安全组阻止stream量,那么我认为我不必为此付费。 但是,如果我阻止通过安装在我的服务器上的iptables的stream量,那么我认为这将是我支付我阻止任何传入的stream量。 有没有什么iptables可以做一个安全组不能? 我在问,因为我正在寻求减轻我的Web服务器上的DDoS攻击。 谢谢。

Apache中基于URL的请求速率限制

有很多速率限制和QoS工具,但到目前为止,我还没有find一个满足我的具体需求,如下所示: 我有一个在Apache 2.2上运行的Web应用程序,我希望我的每个客户被限制为每天10000个请求。 该限制不应该基于客户的IP地址,而是基于客户的帐户,这可以从URL中提取; 例如: http : //mywebsite.com/customer1/page1 。 一旦超过限制,我希望他们的请求被“放慢”到某个预定义的值,比如每分钟15个请求,也许会引入一个延迟。 如果这是不可能的,那么返回503服务不可用的错误就没问题。 我怎样才能做到这一点与Apache? 如果没有办法与Apache做,那么我会对其他工具,反向代理等的build议感兴趣。 更新:速率限制需要发生在一些服务(mod_dav_svn,mod_passenger,mod_wsgi),并且必须是高性能的。

Nginx:如何限制基于用户代理的请求速率

试图获得在nginx中工作的以下行为 使用浏览器时,每个ip的默认速率限制为1r / s。 bing和google蜘蛛的速率限制为10r / s。 拒绝糟糕的机器人 不幸的是,谷歌不发布ip地址为googlebot,所以我只限于useragent。 到目前为止, http { # Rate limits map $http_user_agent $uatype { default 'user'; ~*(google|bing|msnbot) 'okbot'; ~*(slurp|nastybot) 'badbot'; } limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s; limit_req_zone $binary_remote_addr zone=two:10m rate=10r/s; … server { … location / { if ($uatype == 'badbot) { return 403; } limit_req zone=one burst=5 nodelay; if ($uatype […]

通过IP地址将请求数限制到特定的一组URL

我正在一个网站上工作,这将允许下载到用户,将有大约2,000,000个文件可以下载。 我们希望阻止用户抓取所有这些文档,以便限制我们在一定时间范围内包含URL模式的请求的数量。 我们很高兴该网站的其余部分被抓取,所以不想限制。 我们正在排除robots.txt阻止爬虫获取文件。 我们更担心恶意或不当行为。 我们希望使用apache来限制每个ip地址每分钟大约1次的文档下载次数。 有没有最好的做法呢? 我们使用apache2.2的Centos 有很多类似的问题,但大多数似乎集中在带宽限制,这不是我想要的。

有没有办法使用多个阈值对HAProxy的限制连接进行评级

我使用HaProxy实现了简单的速率限制,就像StackExchange与HaProxy一样。 我试图让它更高级,以便有多个速率限制阈值。 例如,限制请求的客户端: 15 /分钟 60 /小时 360 /天 看来我需要多个表格来存储不同采样率的相同数据。 该文件指出: 每个代理只有一个粘贴表。 在编写这个文档的时候,每个代理有多个表似乎不是很有用。 如果发生这种情况,只需在其中创build一个虚拟后端并将其引用即可。 不幸的是,我有一个魔鬼试图找出如何将数据存储到虚拟后端表。 我也开放其他方法,HaProxy只是看起来像一个有前途的道路,因为我们已经在环境中有它的意义。 任何build议表示赞赏。

有没有办法评估与firewalld连接尝试的限制?

在我们的CentOS 6服务器上,我使用了本文中的信息来减less我们的服务器上的蛮力ssh尝试,特别是速率限制/日志logging部分。 有没有办法在CentOS 7中使用firewalld来做同样的事情? 我宁愿避免切换回iptables,因为看起来firewalld是操作系统的发展方向。 作为参考,这里是我们使用的iptables的基本configuration(一些值是不同的) /sbin/iptables -N LOGDROP /sbin/iptables -A LOGDROP -j LOG /sbin/iptables -A LOGDROP -j DROP iptables -I INPUT -p tcp –dport 22 -i eth0 -m state –state NEW -m recent –set iptables -I INPUT -p tcp –dport 22 -i eth0 -m state –state NEW -m recent –update –seconds 60 –hitcount 4 […]