{"id":1394,"date":"2015-11-21T09:36:29","date_gmt":"2015-11-21T05:36:29","guid":{"rendered":"http:\/\/ratbag.vkomi.ru\/?p=1394"},"modified":"2015-11-20T01:37:27","modified_gmt":"2015-11-19T21:37:27","slug":"nginx-limit-requests","status":"publish","type":"post","link":"http:\/\/ratbag.vkomi.ru\/2015\/programming\/nginx-limit-requests\/","title":{"rendered":"\u0412\u0435\u0431-\u0441\u0435\u0440\u0432\u0435\u0440 Nginx — \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0447\u0430\u0441\u0442\u044b\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432"},"content":{"rendered":"

\u0414\u043b\u044f \u0437\u0430\u0449\u0438\u0442\u044b \u0432\u0430\u0448\u0435\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043e\u0442 DDos \u0430\u0442\u0430\u043a, \u0432\u0430\u043c \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u0430\u0434\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0441 \u043e\u0434\u043d\u043e\u0433\u043e IP. \u042d\u0442\u043e \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u043a \u043f\u0440\u043e\u0441\u0442\u044b\u043c \u0431\u0430\u0437\u043e\u0432\u044b\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u043c \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u0441\u0440\u0435\u0434\u043d\u0435\u043f\u043e\u0441\u0435\u0449\u0430\u0435\u043c\u044b\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432.<\/p>\n

\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043e\u0447\u0435\u043d\u044c \u043f\u0440\u043e\u0441\u0442\u0430\u044f:<\/p>\n

\u0421\u043e\u0437\u0434\u0430\u0451\u043c \u043d\u043e\u0432\u0443\u044e \u0437\u043e\u043d\u0443 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b, \u0432 nginx.conf<\/b> (\u0441\u0435\u043a\u0446\u0438\u044f http):<\/p>\n

limit_req_zone $binary_remote_addr zone=one:10m rate=1r\/s;<\/p><\/blockquote>\n

\u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u043d\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u2014 1 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443.<\/p>\n

\u041f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u043c \u044d\u0442\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e *.php<\/b> \u0444\u0430\u0439\u043b\u043e\u0432 \u0441\u0430\u0439\u0442\u0430:<\/p>\n

location ~* \\.php$ {
\nlimit_req zone=one burst=3;
\n…
\n}<\/p><\/blockquote>\n

Burst<\/b> \u2014 \u044d\u0442\u043e \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u043d\u044b\u0439 \u043a\u0440\u0430\u0442\u043a\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0439 \u0432\u0441\u043f\u043b\u0435\u0441\u043a \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432.<\/p>\n

\u0411\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u043f\u0440\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u043f\u043e IP \u0430\u0434\u0440\u0435\u0441\u0430\u043c, \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0437\u0434\u0435\u0441\u044c: modx.pro\/hosting\/570-nginx-protection-class-ip-restriction-frequent-requests\/<\/a><\/p>\n