<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Rate limiting http traffic (mod_evasive and iptables)</title>
	<atom:link href="http://codepoets.co.uk/2010/rate-limiting-web-httptraffic/feed/" rel="self" type="application/rss+xml" />
	<link>http://codepoets.co.uk/2010/rate-limiting-web-httptraffic/</link>
	<description>PHP, running, family stuff, Bromsgrove and other bits</description>
	<lastBuildDate>Tue, 07 Feb 2012 22:50:21 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: Bob</title>
		<link>http://codepoets.co.uk/2010/rate-limiting-web-httptraffic/comment-page-1/#comment-5127</link>
		<dc:creator>Bob</dc:creator>
		<pubDate>Mon, 27 Jun 2011 17:45:54 +0000</pubDate>
		<guid isPermaLink="false">http://codepoets.co.uk/?p=104#comment-5127</guid>
		<description>hitcount can&#039;t be higher than 20 using the default iptables settings.  if you set it higher, the rule never gets triggered.

also, i think you want to reverse the order of the rules.  otherwise, the set gets triggered, but the update doesn&#039;t.</description>
		<content:encoded><![CDATA[<p>hitcount can&#8217;t be higher than 20 using the default iptables settings.  if you set it higher, the rule never gets triggered.</p>
<p>also, i think you want to reverse the order of the rules.  otherwise, the set gets triggered, but the update doesn&#8217;t.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mike</title>
		<link>http://codepoets.co.uk/2010/rate-limiting-web-httptraffic/comment-page-1/#comment-4557</link>
		<dc:creator>Mike</dc:creator>
		<pubDate>Sat, 05 Feb 2011 16:29:43 +0000</pubDate>
		<guid isPermaLink="false">http://codepoets.co.uk/?p=104#comment-4557</guid>
		<description>Did you ever do a write up on your PHP solution? I&#039;m having a similar issue with scrapers crawling my site too quickly. I&#039;m looking at mod_evasive, but have the same concerns that you do. Thanks!</description>
		<content:encoded><![CDATA[<p>Did you ever do a write up on your PHP solution? I&#8217;m having a similar issue with scrapers crawling my site too quickly. I&#8217;m looking at mod_evasive, but have the same concerns that you do. Thanks!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David Goodwin</title>
		<link>http://codepoets.co.uk/2010/rate-limiting-web-httptraffic/comment-page-1/#comment-1118</link>
		<dc:creator>David Goodwin</dc:creator>
		<pubDate>Thu, 04 Feb 2010 22:31:04 +0000</pubDate>
		<guid isPermaLink="false">http://codepoets.co.uk/?p=104#comment-1118</guid>
		<description>Obviously - but there&#039;s still the problem that some pages need rate limiting and others don&#039;t. I don&#039;t care if someone requests the home page a zillion times in one minute - it&#039;s effectively static (well, PHP, but no DB calls). I do care if someone starts going through each business one after the other leeching their details.

Yes - I could split images off onto another domain - unfortunately the code base is horrible, and it would have to be enforced via e.g. mod_rewrite. I don&#039;t think we&#039;re yet at the position of needing to do this.

I&#039;ve written a PHP solution, which i&#039;ll soon post here, which does at least allow for a friendly &#039;error&#039; page and a captcha to fill in which makes it more user friendly, and less likely to fsck up if there are a lot of users behind one proxy (for example).</description>
		<content:encoded><![CDATA[<p>Obviously &#8211; but there&#8217;s still the problem that some pages need rate limiting and others don&#8217;t. I don&#8217;t care if someone requests the home page a zillion times in one minute &#8211; it&#8217;s effectively static (well, PHP, but no DB calls). I do care if someone starts going through each business one after the other leeching their details.</p>
<p>Yes &#8211; I could split images off onto another domain &#8211; unfortunately the code base is horrible, and it would have to be enforced via e.g. mod_rewrite. I don&#8217;t think we&#8217;re yet at the position of needing to do this.</p>
<p>I&#8217;ve written a PHP solution, which i&#8217;ll soon post here, which does at least allow for a friendly &#8216;error&#8217; page and a captcha to fill in which makes it more user friendly, and less likely to fsck up if there are a lot of users behind one proxy (for example).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex Howells</title>
		<link>http://codepoets.co.uk/2010/rate-limiting-web-httptraffic/comment-page-1/#comment-1100</link>
		<dc:creator>Alex Howells</dc:creator>
		<pubDate>Thu, 04 Feb 2010 20:54:53 +0000</pubDate>
		<guid isPermaLink="false">http://codepoets.co.uk/?p=104#comment-1100</guid>
		<description>Dish up the images from another subdomain, for example images.client.com - they are static content and you should then be able to build mod_evasive settings so that they only kick in on requess to the main application.

This sort of architecture would help you anyway in future, when you look to putting relatively static assets like images and Javascript into a CDN or something?

Finally keeping them on a different VirtualHost (or subdomain) would allow a fairly simple load balancer to distinguish between them: thus you could build $solution to employ 5-6 beefy &#039;application&#039; servers and just a couple of other boxes for &#039;static&#039; content, and potentially deploy different caching, software (Apache vs. nginx) and tuning to make it all funky and fast.

Then you can apply mod_evasive settings</description>
		<content:encoded><![CDATA[<p>Dish up the images from another subdomain, for example images.client.com &#8211; they are static content and you should then be able to build mod_evasive settings so that they only kick in on requess to the main application.</p>
<p>This sort of architecture would help you anyway in future, when you look to putting relatively static assets like images and Javascript into a CDN or something?</p>
<p>Finally keeping them on a different VirtualHost (or subdomain) would allow a fairly simple load balancer to distinguish between them: thus you could build $solution to employ 5-6 beefy &#8216;application&#8217; servers and just a couple of other boxes for &#8216;static&#8217; content, and potentially deploy different caching, software (Apache vs. nginx) and tuning to make it all funky and fast.</p>
<p>Then you can apply mod_evasive settings</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jonkarra</title>
		<link>http://codepoets.co.uk/2010/rate-limiting-web-httptraffic/comment-page-1/#comment-1076</link>
		<dc:creator>Jonkarra</dc:creator>
		<pubDate>Tue, 02 Feb 2010 15:43:19 +0000</pubDate>
		<guid isPermaLink="false">http://codepoets.co.uk/?p=104#comment-1076</guid>
		<description>Well checkpoint has a lot of this functionality built in, although it can be a pain to get it working just the way you want, as some of the application security features are a little buggy(or plain just dont work). Although for what you want its pretty solid. Although it is proprietry and damn expensive so doubt its your sort of thing ;)</description>
		<content:encoded><![CDATA[<p>Well checkpoint has a lot of this functionality built in, although it can be a pain to get it working just the way you want, as some of the application security features are a little buggy(or plain just dont work). Although for what you want its pretty solid. Although it is proprietry and damn expensive so doubt its your sort of thing <img src='http://codepoets.co.uk/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
</channel>
</rss>

