tomcat慢速HTTP拒绝服务攻击安全问题解决办法

问题说明:HTTP协议的设计要求服务器在处理之前完全接收到请求。如果HTTP请求未完成,或者传输速率非常低,则服务器将保持其资源占用等待剩余的数据。如果服务器占用的资源太多,则会造成拒绝服务。

解决办法:
修改Tomcat 配置文件 server.xml 中的 <Connector ... /> 配置中,设置connectiontimeout值,默认为20000ms,修改为8000ms;

<Connector port="8080" protocol="HTTP/1.1"
                     maxHttpHeaderSize="8192"
                     maxThreads="100"
                     minSpareThreads="50"
                     maxSpareThreads="100"
                     minProcessors="50"
                     maxProcessors="100"
                     enableLookups="false"
                     connectionTimeout="8000"
                     acceptCount="100"
                     redirectPort="8443" URIEncoding="UTF-8"/>