ホームページ  >  に質問  >  本文

centos - nginx如何防御slowloris攻击?

nginx被检测出slowloris攻击:针对任意HTTP Server,建立一个连接,以很低的速度发包,并保持住这个连接不断开。如果客户端持续建立这样的连接,那么服务器上可用的连接池将很快被占满,从而导致拒绝服务攻击。

给出的解决办法是:限制web服务器的HTTP头部传输的最大许可时间。

那么nginx该怎么设置呢?
我设置了
keepalive_timeout 65;
client_header_timeout 10;
client_body_timeout 10;
send_timeout 10;
可还是被检测出了有问题。后来想了想,client_header_timeout只是限制了两个包间的延时,只要保持着慢慢发就不会断,我需要让传输总时间超过了设定值就直接断掉。
该如何做呢?或者有应对slowloris的模块?

漂亮男人漂亮男人2733日前1013

全員に返信(1)返信します

  • 漂亮男人

    漂亮男人2017-04-25 09:05:29

    Slowloris は nginx では無効ですよね?
    各 IP のリンク数を設定します。
    攻撃に対処するには、リソース戦争を戦う必要があります。nginx は、この種のリンクをサポートするために多くのリソースを必要としません。また、IP ごとにリンク数を設定します。
    攻撃が投稿を通じて行われたかどうかを確認するには、Cookie を設定します。Cookie がない場合は、投稿を破棄してください。

    返事
    0
  • キャンセル返事