<html><head><meta http-equiv="Content-Security-Policy" content="script-src 'self'; img-src * cid: data:;"></head><body style="background-color: rgb(255, 255, 255); background-image: initial; line-height: initial;"><div id="response_container_BBPPID" style="outline:none;font-size:initial;font-family:"Calibri","Slate Pro",sans-serif,"sans-serif"" dir="auto" contenteditable="false"> <div name="BB10" dir="auto" style="width: 100%; padding: initial; font-size: initial; text-align: initial; background-color: rgb(255, 255, 255);"> You should be running the rate limiter already. But note every legitimate request is also limited, not just jorgee. I find anything less than 10 requests a second visually (as in interpreted by a human) slows down how the page loads. </div><div name="BB10" id="BB10_response_div_BBPPID" dir="auto" style="width: 100%; padding: initial; font-size: initial; text-align: initial; background-color: rgb(255, 255, 255);"><br></div><div name="BB10" id="BB10_response_div_BBPPID" dir="auto" style="width: 100%; padding: initial; font-size: initial; text-align: initial; background-color: rgb(255, 255, 255);">Say you run htperf on your server. I don't recall my exact number, but I think I could handle say 1000 requests per second. When I ran htperf from the best pipe (internet connection) I could find, it was more like 150 requests per second. Take what you consider to be a large load on your server, say 15 simultaneous users for my dinky hobby websites. That suggests 10 requests per second to dole out the server resources across all the users. </div><div name="BB10" id="BB10_response_div_BBPPID" dir="auto" style="width: 100%; padding: initial; font-size: initial; text-align: initial; background-color: rgb(255, 255, 255);"><br></div><div name="BB10" id="BB10_response_div_BBPPID" dir="auto" style="width: 100%; padding: initial; font-size: initial; text-align: initial; background-color: rgb(255, 255, 255);">You can Google so-called ddos mitigation techniques for nginx that goes further into limiting. I doubt they would repel a real ddos attack, but might limit the effect of some pesky scraper on your server. </div>                                                                                                                                      <div name="BB10" dir="auto" style="width: 100%; padding: initial; font-size: initial; text-align: initial; background-color: rgb(255, 255, 255);"> <br style="display:initial"></div><div name="BB10" id="response_div_spacer_BBPPID" dir="auto" style="width: 100%; padding: initial; font-size: initial; text-align: initial; background-color: rgb(255, 255, 255);">There is a command line version of the ookla speed test. This will allow you to determine your best case bandwidth. I settled on 4mbps. My recollection is nginx uses bytes, so 500k bytes per second.</div>                            <div id="blackberry_signature_BBPPID" name="BB10" dir="auto">     <div name="BB10" dir="auto" style="padding: initial; font-size: initial; text-align: initial; background-color: rgb(255, 255, 255);"></div> </div></div><div id="_original_msg_header_BBPPID" dir="auto">                                                                                                                                             <table width="100%" style="background-color: white; border-spacing: 0px; display: table; outline: none;" contenteditable="false"> <tbody><tr><td colspan="2" style="padding: initial; font-size: initial; text-align: initial; background-color: rgb(255, 255, 255);">                           <div style="border-right: none; border-bottom: none; border-left: none; border-image: initial; border-top: 1pt solid rgb(181, 196, 223); padding: 3pt 0in 0in; font-family: Tahoma, "BB Alpha Sans", "Slate Pro"; font-size: 10pt;">  <div id="from"><b>From:</b> zchao1995@gmail.com</div><div id="sent"><b>Sent:</b> July 24, 2017 5:12 AM</div><div id="to"><b>To:</b> nginx@nginx.org</div><div id="reply_to"><b>Reply-to:</b> nginx@nginx.org</div><div id="subject"><b>Subject:</b> Re: How to rate-limit jorgee malware scanner?</div></div></td></tr></tbody></table><div style="border-right: none; border-bottom: none; border-left: none; border-image: initial; border-top: 1pt solid rgb(186, 188, 209); display: block; padding: initial; font-size: initial; text-align: initial; background-color: rgb(255, 255, 255);"></div> <br> </div><!--start of _originalContent --><div name="BB10" dir="auto" style="background-image: initial; line-height: initial; outline: none;" contenteditable="false"><div id="ssc2309732529858080269"><style>#ssc2309732529858080269{font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;padding: 1em;margin: auto;background: rgb(254, 254, 254);}#ssc2309732529858080269 h1,#ssc2309732529858080269 h2,#ssc2309732529858080269 h3,#ssc2309732529858080269 h4,#ssc2309732529858080269 h5,#ssc2309732529858080269 h6{font-weight: bold;}#ssc2309732529858080269 h1{color: rgb(0, 0, 0);font-size: 28pt;}#ssc2309732529858080269 h2{border-bottom: 1px solid rgb(204, 204, 204);color: rgb(0, 0, 0);font-size: 24px;}#ssc2309732529858080269 h3{font-size: 18px;}#ssc2309732529858080269 h4{font-size: 16px;}#ssc2309732529858080269 h5{font-size: 14px;}#ssc2309732529858080269 h6{color: rgb(119, 119, 119);background-color: inherit;font-size: 14px;}#ssc2309732529858080269 hr{height: 0.2em;border: 0;color: rgb(204, 204, 204);background-color: rgb(204, 204, 204);display: inherit;}#ssc2309732529858080269 p,#ssc2309732529858080269 blockquote,#ssc2309732529858080269 ul,#ssc2309732529858080269 ol,#ssc2309732529858080269 dl,#ssc2309732529858080269 li,#ssc2309732529858080269 table,#ssc2309732529858080269 pre{margin: 15px 0;}#ssc2309732529858080269 a,#ssc2309732529858080269 a:visited{color: rgb(65, 131, 196);background-color: inherit;text-decoration: none;}#ssc2309732529858080269 #message{border-radius: 6px;border: 1px solid rgb(204, 204, 204);display: block;width: 100%;height: 60px;margin: 6px 0px;}#ssc2309732529858080269 button,#ssc2309732529858080269 #ws{font-size: 12 pt;padding: 4px 6px;border-radius: 5px;border: 1px solid rgb(187, 187, 187);background-color: rgb(238, 238, 238);}#ssc2309732529858080269 code,#ssc2309732529858080269 pre,#ssc2309732529858080269 #ws,#ssc2309732529858080269 #message{font-family: Monaco;font-size: 10pt;border-radius: 3px;background-color: rgb(248, 248, 248);color: inherit;}#ssc2309732529858080269 code{border: 1px solid rgb(234, 234, 234);margin: 0 2px;padding: 0 5px;}#ssc2309732529858080269 pre{border: 1px solid rgb(204, 204, 204);overflow: auto;padding: 4px 8px;}#ssc2309732529858080269 pre > code{border: 0;margin: 0;padding: 0;}#ssc2309732529858080269 #ws{background-color: rgb(248, 248, 248);}#ssc2309732529858080269 .bloop_markdown table{border-collapse: collapse;font-family: Helvetica, arial, freesans, clean, sans-serif;color: rgb(51, 51, 51);font-size: 15px;line-height: 25px;padding: 0;}#ssc2309732529858080269 .bloop_markdown table tr{border-top: 1px solid rgb(204, 204, 204);background-color: white;margin: 0;padding: 0;}#ssc2309732529858080269 .bloop_markdown table tr:nth-child(2n){background-color: rgb(248, 248, 248);}#ssc2309732529858080269 .bloop_markdown table tr th{font-weight: bold;border: 1px solid rgb(204, 204, 204);margin: 0;padding: 6px 13px;}#ssc2309732529858080269 .bloop_markdown table tr td{border: 1px solid rgb(204, 204, 204);margin: 0;padding: 6px 13px;}#ssc2309732529858080269 .bloop_markdown table tr th :first-child,#ssc2309732529858080269 table tr td :first-child{margin-top: 0;}#ssc2309732529858080269 .bloop_markdown table tr th :last-child,#ssc2309732529858080269 table tr td :last-child{margin-bottom: 0;}#ssc2309732529858080269 .bloop_markdown blockquote{border-left: 4px solid rgb(221, 221, 221);padding: 0 15px;color: rgb(119, 119, 119);}#ssc2309732529858080269 blockquote > :first-child{margin-top: 0;}#ssc2309732529858080269 blockquote > :last-child{margin-bottom: 0;}#ssc2309732529858080269 code,#ssc2309732529858080269 pre,#ssc2309732529858080269 #ws,#ssc2309732529858080269 #message{word-wrap: normal;}#ssc2309732529858080269 hr{display: inherit;}#ssc2309732529858080269 .bloop_markdown :first-child{}#ssc2309732529858080269 code,#ssc2309732529858080269 pre,#ssc2309732529858080269 #ws,#ssc2309732529858080269 #message{font-family: Menlo, Consolas, Liberation Mono, Courier, monospace;}#ssc2309732529858080269 .send{color: rgb(119, 187, 119);}#ssc2309732529858080269 .server{color: rgb(119, 153, 187);}#ssc2309732529858080269 .error{color: rgb(170, 0, 0);}</style><style>#ssc2309732529858080269{font-family: Helvetica, Arial;font-size: 13px;}</style><div style="word-wrap:break-word"><div class="bloop_markdown"><p>Hi!</p>

<p>Nginx carries with the <a href="http://nginx.org/en/docs/http/ngx_http_limit_req_module.html">limit_req_module</a>. I think it is a good helper.</p>

<p></p></div><div class="bloop_original_html"><div id="bloop_customfont" style="font-family:'helvetica' , 'arial';font-size:13px;color:rgba( 0 , 0 , 0 , 1 );margin:0px"><br></div> <div id="bloop_sign_1500898267655031040" class="bloop_sign"></div> <br><p class="airmail_on">On 24 July 2017 at 20:10:05, Gary Sellani (<a href="mailto:lists@lazygranch.com">lists@lazygranch.com</a>) wrote:</p> <blockquote type="cite" class="clean_bq"><div><div></div><div>I just detect the use agent and return 444, but every attempt to get a file will show up in your access.log. <br><br><a href="https://www.buildersociety.com/threads/block-unwanted-bots-on-apache-nginx-constantly-updated.1898/">https://www.buildersociety.com/threads/block-unwanted-bots-on-apache-nginx-constantly-updated.1898/</a><br><br>I get two or three jorgee "sessions" a day. They tend not to use the domain name but reference your server by IP, so there might be some better blocking scheme. <br><br>  Original Message  <br>From: <a href="mailto:tkadm30@yandex.com">tkadm30@yandex.com</a><br>Sent: July 24, 2017 3:14 AM<br>To: <a href="mailto:nginx@nginx.org">nginx@nginx.org</a><br>Reply-to: <a href="mailto:nginx@nginx.org">nginx@nginx.org</a><br>Subject: How to rate-limit jorgee malware scanner?<br><br>Hi,<br><br>The Jorgee malware scanner is creating a lot of activity on my site. I <br>would like to rate-limit its connections to nginx based on the <br>User-Agent, since blocking all IP addresses with iptables seems <br>impossible. Is their a quick way of doing this ?<br><br>Thank you in advance ,<br><br>E<br><br>-- <br>Etienne Robillard<br><a href="mailto:tkadm30@yandex.com">tkadm30@yandex.com</a><br><a href="http://www.isotopesoftware.ca/">http://www.isotopesoftware.ca/</a><br><br>_______________________________________________<br>nginx mailing list<br><a href="mailto:nginx@nginx.org">nginx@nginx.org</a><br><a href="http://mailman.nginx.org/mailman/listinfo/nginx">http://mailman.nginx.org/mailman/listinfo/nginx</a><br>_______________________________________________<br>nginx mailing list<br><a href="mailto:nginx@nginx.org">nginx@nginx.org</a><br><a href="http://mailman.nginx.org/mailman/listinfo/nginx">http://mailman.nginx.org/mailman/listinfo/nginx</a></div></div></blockquote></div><div class="bloop_markdown"><p></p></div></div>
</div><!--end of _originalContent --></div></body></html>