我正在使用 Jboss 4.2.3 作为应用服务器。有没有办法限制 JBoss 接受的 HTTP Post 请求的大小?我想限制大小以避免 DOS 攻击。
我已经在 server.xml 中设置了 maxHttpHeaderSize 和 maxPostSize,但它们似乎都没有任何区别。
最佳答案
maxPostSize
定义在 Tomcat 将“自动”解析之前 POST 可以达到多大,无论这意味着什么。
如果您出于安全原因这样做,则需要三思而后行。 DOS 攻击不会方便地宣布其大小作为 HTTP 请求 header ,它只会发送数据直到您的服务器崩溃。
您可以检查请求的Content-Length
header ,如果它不存在或太大,则立即拒绝它,但您冒着拒绝真正的风险不提供 header 的客户端,其中许多不会。
否则,您将不得不读取请求数据直到它超过阈值,然后拒绝它。
无论哪种方式,容器都帮不上什么忙。
关于java - 限制 JBoss 上 HTTP post 请求的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2418130/