Maison  >  Questions et réponses  >  le corps du texte

ddos - J'ai trouvé un élément de configuration anti-attaque Nginx sur Internet. Quelqu'un peut-il donner une explication approximative ?

http{
     ...
     limit_req_zone $cookie_token zone=session_limit:3m rate=1r/s;
     limit_req_zone $binary_remote_addr $uri zone=auth_limit:3m rate=1r/m;
}
location /{
     limit_req zone=session_limit burst=5;
     rewrite_by_lua '
     local random = ngx.var.cookie_random
     if (random == nil) then
         return ngx.redirect("/auth?url=" .. ngx.var.request_uri)
     end
     local token = ngx.md5("opencdn" .. ngx.var.remote_addr .. random)
     if (ngx.var.cookie_token ~= token) then
         return ngx.redirect("/auth?url=".. ngx.var.request_uri)
     end
    ';
}
location /auth {
     limit_req zone=auth_limit burst=1;
     if ($arg_url = "") {
         return403;
     }
     access_by_lua '
         local random = math.random(9999)
         local token = ngx.md5("opencdn" .. ngx.var.remote_addr .. random)
         if (ngx.var.cookie_token ~= token) then
             ngx.header["Set-Cookie"] = {"token=" .. token, "random=" .. random}
             return ngx.redirect(ngx.var.arg_url)
         end
     ';
}

Le limit_req_zone $binary_remote_addr $uri zone=auth_limit:3m rate=1r/m; dans le code est correct. Êtes-vous sûr de vouloir ajouter $uri ? (La mise à jour limit_req_zone prend en charge plusieurs variables, donc $binary_remote_addr $uri est correct)
Que dois-je faire d'autre à part ce code si je souhaite l'appliquer à mon nginx ?
Ci-joint l'adresse du message d'origine, je ne sais pas si c'est le message d'origine : http://www.92csz.com/30/1255....

世界只因有你世界只因有你2714 Il y a quelques jours791

répondre à tous(1)je répondrai

  • PHP中文网

    PHP中文网2017-05-16 17:12:02

    Cette idée est très grossière et déraisonnable. En principe, cela revient à refuser l’accès sans saisir le mot de passe du compte.
    Mais est-ce réaliste ?
    Pour un nouvel utilisateur, comment connaître le mot de passe de son compte. A moins qu’elle ne soit pré-allouée, mais comment la pré-allocation peut-elle éviter d’être allouée à un attaquant ?
    Le problème est revenu à son point initial.
    Donc cette chose ne sert à rien, et elle n'empêche que le CC dans une certaine mesure, mais elle ne peut pas empêcher le DDOS. CC,但不能防止DDOS
    为什么说只是一定程度上呢?因为这个cookies总要是给用户的,cc攻击一样能拿到。

    如果你真的要尝试的话,需要在安装nginx_lua模块,或者使用openrestyPourquoi dites-vous que c’est seulement dans une certaine mesure ? Étant donné que ce cookie doit toujours être fourni à l'utilisateur, les attaques CC peuvent également l'obtenir.

    🎜Si vous voulez vraiment l'essayer, vous devez installer le module nginx_lua, ou utiliser openresty.🎜

    répondre
    0
  • Annulerrépondre