{"id":333074,"date":"2022-05-13T09:00:28","date_gmt":"2022-05-13T09:00:28","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=333074"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=333074","title":{"rendered":"<span>\u041a\u0430\u043a \u0437\u0430\u0449\u0438\u0442\u0438\u0442\u044c\u0441\u044f \u043e\u0442 dos\/ddos, \u0438\u043b\u0438 \u041a\u0430\u043a \u044f \u043d\u0430\u0447\u0430\u043b \u0432\u043d\u043e\u0432\u044c \u0432\u044b\u0441\u044b\u043f\u0430\u0442\u044c\u0441\u044f \u043f\u043e \u043d\u043e\u0447\u0430\u043c<\/span>"},"content":{"rendered":"<div><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/153\/fed\/46a\/153fed46a3c4c29d2587bee0b1404726.png\" width=\"1280\" height=\"762\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/153\/fed\/46a\/153fed46a3c4c29d2587bee0b1404726.png\"\/><figcaption><\/figcaption><\/figure>\n<h3>\u041f\u0440\u0435\u0434\u0438\u0441\u043b\u043e\u0432\u0438\u0435<\/h3>\n<p>\u041f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e \u0442\u0435\u0431\u044f, \u0434\u043e\u0440\u043e\u0433\u043e\u0439 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044c. \u0421\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0435\u0441\u043b\u0438 \u0442\u044b \u044d\u0442\u043e \u0447\u0438\u0442\u0430\u0435\u0448\u044c, \u0442\u043e \u0443\u0436\u0435 \u043e\u0447\u0435\u043d\u044c \u0443\u0441\u0442\u0430\u043b \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u043a\u0443\u0447\u0443 \u0430\u043b\u0435\u0440\u0442\u043e\u0432 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u0442\u0432\u043e\u044f \u043f\u043b\u043e\u0449\u0430\u0434\u043a\u0430 \u0437\u0430\u0433\u0438\u0431\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0445 \u043d\u0430\u0431\u0435\u0433\u043e\u0432 <s>\u043f\u0435\u0447\u0435\u043d\u0435\u0433\u043e\u0432<\/s> \u0431\u043e\u0442\u043e\u0432 \u0438\u043b\u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u043d\u0435\u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u043e\u0441\u0435\u0442\u0438\u0442\u0435\u043b\u0435\u0439 \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430. \u042f \u043d\u0430\u0434\u0435\u044e\u0441\u044c, \u0447\u0442\u043e \u044d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0442\u0435\u0431\u0435 \u0441\u043f\u0430\u0442\u044c \u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e \u0438 \u043e\u0433\u0440\u0430\u0434\u0438\u0442 \u0442\u0435\u0431\u044f \u043e\u0442 \u043d\u0435\u0434\u0443\u0433\u043e\u0432, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0432\u043d\u0435\u0441\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u044f\u0441\u043d\u043e\u0441\u0442\u0438 \u0432 \u0442\u0432\u043e\u0435 \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u0442\u0435\u043e\u0440\u0438\u0438 \u0438 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u0437\u0430\u0449\u0438\u0442\u044b \u043e\u0442 <strong>dos<\/strong> \u0438 <strong>ddos<\/strong>. \u041f\u0440\u0438\u044f\u0442\u043d\u043e\u0433\u043e \u0447\u0442\u0435\u043d\u0438\u044f!<\/p>\n<hr\/>\n<h3>\u0413\u043b\u0430\u0432\u0430 1: \u201c\u0417\u043d\u0430\u0439 \u0441\u0432\u043e\u0435\u0433\u043e \u0432\u0440\u0430\u0433\u0430.\u201d &#8212; \u0421\u0443\u043d\u044c \u0426\u0437\u044b<\/h3>\n<h4>\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 Dos \u0438 Ddos, \u0438 \u0432 \u0447\u0451\u043c \u0438\u0445 \u043e\u0442\u043b\u0438\u0447\u0438\u044f?<\/h4>\n<p><strong>Dos,<\/strong> \u0438\u043b\u0438 \u043f\u043e-\u0434\u0440\u0443\u0433\u043e\u043c\u0443 <strong>Denial of Service<\/strong> &#8212; \u00ab\u043e\u0442\u043a\u0430\u0437 \u0432 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0438\u00bb. \u042d\u0442\u043e \u0430\u0442\u0430\u043a\u0430 \u0441\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u043e\u0434\u0438\u043d\u043e\u0447\u043d\u043e\u0433\u043e <strong>IP<\/strong>-\u0430\u0434\u0440\u0435\u0441\u0430, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u0430\u044f \u0441 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u043e\u0439 \u043d\u0435\u043b\u0435\u0433\u0438\u0442\u0438\u043c\u043d\u043e\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u044f\u0449\u0430\u044f \u043a \u043d\u0435\u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u0447\u0442\u043e, \u0432 \u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u043f\u0440\u043e\u0441\u0442\u043e\u044e \u043f\u043b\u043e\u0449\u0430\u0434\u043a\u0438 \u0438\u043b\u0438 \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u0438 \u043f\u043e\u0442\u0435\u0440\u0435 \u0444\u0438\u043d\u0430\u043d\u0441\u043e\u0432\u043e\u0439 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0435\u0439.<\/p>\n<p><strong>Ddos,<\/strong> \u0438\u043b\u0438 <strong>Distributed Denial of Service<\/strong> &#8212; \u00ab\u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u043e\u0442\u043a\u0430\u0437 \u0432 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0438\u00bb.\u00a0 \u041e\u0442\u043b\u0438\u0447\u0438\u0435 \u0434\u0430\u043d\u043d\u043e\u0439 \u0430\u0442\u0430\u043a\u0438 \u043e\u0442 \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0439 \u0432\u044b\u0448\u0435 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0431\u0443\u0434\u0435\u0442 \u0438\u0434\u0442\u0438 \u0441 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 <strong>IP<\/strong>-\u0430\u0434\u0440\u0435\u0441\u043e\u0432. \u042d\u0442\u043e\u0442 \u0430\u0441\u043f\u0435\u043a\u0442 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/57c\/a3f\/34c\/57ca3f34cfc729bf02ae555cb5da97ea.png\" width=\"931\" height=\"649\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/57c\/a3f\/34c\/57ca3f34cfc729bf02ae555cb5da97ea.png\"\/><figcaption><\/figcaption><\/figure>\n<h4>\u041a\u0430\u043a \u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0442\u044c \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u0435 \u0430\u0442\u0430\u043a\u0438 \u043d\u0430 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443?<\/h4>\n<p>\u0412 \u0441\u043b\u0443\u0447\u0430\u0435, \u0435\u0441\u043b\u0438 \u043d\u0430 \u0432\u0430\u0448\u0435\u0439 \u043c\u0430\u0448\u0438\u043d\u0435, \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0438\u043b\u0438 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439, \u0440\u0435\u0437\u043a\u043e \u043f\u043e\u0432\u044b\u0441\u0438\u043b\u0430\u0441\u044c \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0430 <strong>CPU<\/strong> \u0438 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u043b\u043e\u0441\u044c \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 <strong>RAM<\/strong>, \u0442\u043e, \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0432\u044b \u0441\u0442\u0430\u043b\u0438 \u0436\u0435\u0440\u0442\u0432\u043e\u0439 \u043a\u0440\u0438\u0432\u043e \u0437\u0430\u043b\u0438\u0442\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0438\u043b\u0438 \u0436\u0435 <strong>ddos<\/strong>\/<strong>dos<\/strong>-\u0430\u0442\u0430\u043a\u0438. \u0420\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0442\u044c \u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u0441 \u043e\u043a\u043e\u043d\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u0432\u044b\u0431\u043e\u0440\u043e\u043c \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 \u043e\u0442\u0432\u0435\u0442\u0430 \u043d\u0430\u043c \u043f\u043e\u043c\u043e\u0433\u0443\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0448\u0430\u0433\u0438.<\/p>\n<p>\u0412\u043e-\u043f\u0435\u0440\u0432\u044b\u0445, \u043a\u0430\u043a \u0443\u0436\u0435 \u0431\u044b\u043b\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u0432\u044b\u0448\u0435, &#8212; \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433, \u0438 \u0432\u044b \u0432\u0438\u0434\u0438\u0442\u0435 \u0440\u0435\u0437\u043a\u0438\u0435 \u0441\u043a\u0430\u0447\u043a\u0438 \u043d\u0430 \u0433\u0440\u0430\u0444\u0438\u043a\u0430\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u044f, \u043a \u043f\u0440\u0438\u043c\u0435\u0440\u0443:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/eba\/7d9\/7f1\/eba7d97f17aed098094f604395835dd4.png\" width=\"1600\" height=\"318\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/eba\/7d9\/7f1\/eba7d97f17aed098094f604395835dd4.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u0422\u0430\u043a\u0436\u0435 \u0432\u044b \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u0435 \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u043a\u043e\u043d\u043d\u0435\u043a\u0442\u043e\u0432 \u043d\u0430 \u0432\u0430\u0448\u0435\u043c \u0441\u0435\u0440\u0432\u0438\u0441\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0435 \u0434\u0430\u043d\u043d\u044b\u0445. \u0414\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u043c \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439 LEMP-\u0441\u0442\u0435\u043a Nginx + Apache + Mysql,\u00a0 \u0430 \u0437\u043d\u0430\u0447\u0438\u0442 \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u043c\u044b \u0444\u0438\u043a\u0441\u0438\u0440\u0443\u0435\u043c \u0440\u0435\u0437\u043a\u0438\u0439 \u0441\u043a\u0430\u0447\u043e\u043a \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/a08\/1cc\/b0f\/a081ccb0ffd89880159bb4aca60e9f61.png\" alt=\"\" title=\"\" width=\"1600\" height=\"343\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a08\/1cc\/b0f\/a081ccb0ffd89880159bb4aca60e9f61.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u0412\u043e-\u0432\u0442\u043e\u0440\u044b\u0445 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u0430\u043d\u0430\u043b\u0438\u0437 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0437\u0430 \u0432\u0440\u0435\u043c\u044f \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b. \u0412 \u044d\u0442\u043e\u043c, \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u043c\u043e\u0447\u044c \u043e\u0434\u043d\u043e\u0441\u0442\u0440\u043e\u0447\u043d\u044b\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0438\u043c\u0435\u0442\u044c \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u043c\u0443 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0443 \u043f\u043e\u0434 \u0440\u0443\u043a\u043e\u0439, \u0434\u0430\u043d\u043d\u044b\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u044b \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e, \u0438\u0437\u0443\u0447\u0438\u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0447\u0443\u0442\u044c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u0438\u043b\u0438 \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0430\u0448\u0438\u043c \u0433\u043e\u0442\u043e\u0432\u044b\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c. \u041d\u0438\u0436\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0434\u043b\u044f \u043f\u0430\u0440\u0441\u0438\u043d\u0433\u0430 \u043b\u043e\u0433\u043e\u0432 \u0437\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 10000 \u0438 \u0432\u044b\u0432\u043e\u0434 \u0432 top <strong>IP <\/strong>\u0430\u0434\u0440\u0435\u0441\u043e\u0432, \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u044e\u0449\u0438\u0445\u0441\u044f \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0447\u0430\u0441\u0442\u043e: <\/p>\n<pre><code class=\"bash\">tail -10000 access.log | awk '{print $1}'| sort -nr | uniq -c | sort -nr | head<\/code><\/pre>\n<p>\u0422\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u0443\u0437\u043d\u0430\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0445 <strong>IP<\/strong>, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u044c \u0441 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043c\u0438 \u0437\u0430 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0435 \u0441\u0443\u0442\u043a\u0438 \u0438 \u0443\u0437\u043d\u0430\u0442\u044c \u0431\u044b\u043b\u043e \u043b\u0438 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435 \u0442\u0440\u0430\u0444\u0438\u043a\u0430:<\/p>\n<pre><code class=\"bash\">cat access.log | awk '{print $1}'| sort -nr | uniq -c | wc -l<\/code><\/pre>\n<p>\u0421\u043b\u0435\u0434\u043e\u043c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u043e\u0442\u043b\u0438\u0447\u043d\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u0434\u043b\u044f \u043f\u0430\u0440\u0441\u0438\u043d\u0433\u0430 <strong>IP<\/strong>-\u0430\u0434\u0440\u0435\u0441\u043e\u0432 \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e \u043f\u043e \u0434\u0430\u0442\u0435 \u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u043c\u0443 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043a\u0443:<\/p>\n<pre><code class=\"bash\">head access.log | grep 26\/Apr\/2021:1[1-2]: | awk '{print $1}'| sort -nr | uniq -c | sort -nr<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435 \u043d\u0435\u043b\u0435\u0433\u0438\u0442\u0438\u043c\u043d\u043e\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430:<\/p>\n<pre><code class=\"yaml\">head -20 access.log | grep \"25\/Jul\/2022:00:\" | awk '{print $1}' | sort | uniq -c | sort -nr    4150 45.155.53.76    3550 84.38.189.56    3184 5.45.207.189    233 5.255.253.188    233 45.10.217.121    233 92.119.203.156    229 5.45.207.112    223 84.38.189.54    200 109.194.11.25    147 5.255.253.160<\/code><\/pre>\n<p>\u0412 \u044d\u0442\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043f\u0435\u0440\u0432\u043e\u0435, \u0447\u0442\u043e \u0431\u0440\u043e\u0441\u0430\u0435\u0442\u0441\u044f \u0432 \u0433\u043b\u0430\u0437\u0430 &#8212; \u044d\u0442\u043e \u043e\u043a\u043e\u043b\u043e 4000 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0437\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0447\u0430\u0441 \u0441 00:00. \u0418\u0437 \u044d\u0442\u043e\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0432\u044b\u0432\u043e\u0434, \u0447\u0442\u043e \u044d\u0442\u043e \u044f\u0432\u043d\u043e \u043d\u0435 \u043e\u0431\u044b\u0447\u043d\u044b\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c, \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043d\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u0437\u0430\u0445\u043e\u0434\u0438\u0442\u044c \u043d\u0430 \u0441\u0430\u0439\u0442. \u0422\u0430\u043a\u0436\u0435 \u043e\u0434\u043d\u0438\u043c \u0438\u0437 \u043e\u0442\u043b\u0438\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u0438\u0437\u043d\u0430\u043a\u043e\u0432 <strong>ddos<\/strong>-\u0430\u0442\u0430\u043a\u0438 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0437\u0432\u0430\u0442\u044c \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 <strong>user agent<\/strong> \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u0435, \u0447\u0442\u043e \u043d\u0430\u0432\u043e\u0434\u0438\u0442 \u043d\u0430 \u043c\u044b\u0441\u043b\u044c \u043e \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u043c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430.<\/p>\n<h4>\u0427\u0442\u043e \u0436\u0435 \u0442\u0430\u043a\u043e\u0435 user agent?<\/h4>\n<p><strong>User agent<\/strong> \u2014 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f; \u043e\u0431\u044b\u0447\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u044e\u0449\u0438\u0445 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0432\u0435\u0431-\u0441\u0430\u0439\u0442\u0430\u043c \u2014 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u043e\u0432, \u043f\u043e\u0438\u0441\u043a\u043e\u0432\u044b\u0445 \u0440\u043e\u0431\u043e\u0442\u043e\u0432 \u0438 \u00ab\u043f\u0430\u0443\u043a\u043e\u0432\u00bb, \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 \u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u0441\u043e \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u043e\u043c \u043a \u0432\u0435\u0431-\u0440\u0435\u0441\u0443\u0440\u0441\u0430\u043c.<\/p>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:<\/p>\n<pre><code class=\"yaml\">tail -10 access.log | grep 185.250.45.31 185.250.45.31 [Via:NGENIX; X-Proxy-Name:-] (RU) \"www.testsite.ru\" [24\/Jul\/2021:21:27:24 +0300]    200     \"GET \/ajax\/rq_list.php?product_id=10692404 HTTP\/1.1\"    0.049 (0.048)   Upstream:10.250.0.5:443 1963    \"https:\/\/www.testsite.ru\/ajax\/rq_list.php?product_id=10692404\" \"Mozilla\/5.5 (Windows; I; Windows NT 6.1; en-us) Chrome\/36.6.59.965\"    \"blocked=0\"     \"whitelistCOUNTRY=1\"    \"whitelistIP=0\" \"whitelistORG=0\"  185.250.45.31 [Via:NGENIX; X-Proxy-Name:-] (RU) \"www.testsite.ru\" [24\/Jul\/2021:21:27:24 +0300]    200     \"GET \/ajax\/rq_list.php?product_id=10692404 HTTP\/1.1\"    0.056 (0.056)   Upstream:10.250.0.5:443 1963    \"https:\/\/www.testsite.ru\/ajax\/rq_list.php?product_id=10692404\" \"Mozilla\/5.3 (compatible; Windows NT 6.6; WOW64; en-us) Chrome\/35.1.309.843 Safari\/551.56\"      \"blocked=0\"     \"whitelistCOUNTRY=1\"    \"whitelistIP=0\" \"whitelistORG=0\"  185.250.45.31 [Via:NGENIX; X-Proxy-Name:-] (RU) \"www.testsite.ru\" [24\/Jul\/2021:21:27:27 +0300]    200     \"GET \/ajax\/rq_list.php?product_id=10692404 HTTP\/1.1\"    0.063 (0.064)   Upstream:10.250.0.5:443 1963    \"https:\/\/www.testsite.ru\/ajax\/rq_list.php?product_id=10692404\" \"Mozilla\/5.9 (Linux (Wine); Windows NT 7.2; ru-ru) like Gecko Chrome\/34.8.208.96 Safari\/639.27\" \"blocked=0\"     \"whitelistCOUNTRY=1\"    \"whitelistIP=0\" \"whitelistORG=0\"  185.250.45.31 [Via:NGENIX; X-Proxy-Name:-] (RU) \"www.testsite.ru\" [24\/Jul\/2021:21:27:27 +0300]    200     \"GET \/ajax\/rq_list.php?product_id=10692404 HTTP\/1.1\"    0.071 (0.072)   Upstream:10.250.0.5:443 1963    \"https:\/\/www.testsite.ru\/ajax\/rq_list.php?product_id=10692404\" \"Mozilla\/5.0 (compatible; U; Windows NT 6.3; en-us) Chrome\/35.1.226.692\"        \"blocked=0\"     \"whitelistCOUNTRY=1\"    \"whitelistIP=0\" \"whitelistORG=0\"  185.250.45.31 [Via:NGENIX; X-Proxy-Name:-] (RU) \"www.testsite.ru\" [24\/Jul\/2021:21:27:28 +0300]    200     \"GET \/ajax\/rq_list.php?product_id=10692404 HTTP\/1.1\"    0.073 (0.072)   Upstream:10.250.0.5:443 1963    \"https:\/\/www.testsite.ru\/ajax\/rq_list.php?product_id=10692404\" \"Mozilla\/5.0 (Windows; Windows NT 6.9; x64; en-us) KHTML\/4.3.5 (like Gecko) Chrome\/39.3.54.483\" \"blocked=0\"     \"whitelistCOUNTRY=1\"    \"whitelistIP=0\" \"whitelistORG=0\" <\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u043f\u0440\u0435\u043a\u0440\u0430\u0441\u043d\u043e \u0432\u0438\u0434\u043d\u043e, \u043a\u0430\u043a \u043d\u0430 \u043f\u0440\u043e\u0442\u044f\u0436\u0435\u043d\u0438\u0438 1 \u043c\u0438\u043d\u0443\u0442\u044b <strong>useragent<\/strong> \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u0435 \u043c\u0435\u043d\u044f\u0435\u0442 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u043d\u0430 <strong>Chrome<\/strong>, <strong>Mozilla<\/strong>, <strong>Safari<\/strong>. \u041a\u0430\u043a \u0438 \u0441\u0430\u043c\u0443 \u041e\u0421, \u0441 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 <strong>Windows<\/strong>, <strong>Linux<\/strong>.<\/p>\n<p>\u0418\u0442\u0430\u043a, \u043a\u043e\u0433\u0434\u0430 \u043c\u044b \u0447\u0443\u0442\u044c-\u0447\u0443\u0442\u044c \u043f\u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u043b\u0438\u0441\u044c \u0441 \u0442\u0435\u043e\u0440\u0438\u0435\u0439, \u043d\u0430\u0441\u0442\u0430\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438. \u0412 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438, \u043c\u044b \u043f\u043e\u0434\u043d\u0438\u043c\u0435\u043c \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439 <strong>Nginx<\/strong> \u043d\u0430 OC <strong>Debian<\/strong> 10 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430 \u0438\u00a0<strong>Apache<\/strong> \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 <strong>backend<\/strong> \u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043c \u0441\u0442\u0440\u0435\u0441\u0441 \u0442\u0435\u0441\u0442 \u043d\u0430\u0448\u0435\u0439 \u043f\u043b\u043e\u0449\u0430\u0434\u043a\u0438.<\/p>\n<h3>\u0413\u043b\u0430\u0432\u0430 2: \u201c\u041b\u0443\u0447\u0448\u0430\u044f \u0437\u0430\u0449\u0438\u0442\u0430 &#8212; \u043d\u0430\u043f\u0430\u0434\u0435\u043d\u0438\u0435\u201d &#8212; \u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440 \u041c\u0430\u043a\u0435\u0434\u043e\u043d\u0441\u043a\u0438\u0439.<\/h3>\n<p>\u041d\u0430\u0447\u043d\u0451\u043c\u2026 \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u043c \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 <strong>Nginx<\/strong> \u0438\u0437 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0435\u0432 \u0434\u043b\u044f \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b.<\/p>\n<p> 1.1. \u0421\u0442\u0430\u0432\u0438\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438:<\/p>\n<pre><code class=\"yaml\">apt install curl gnupg2 ca-certificates lsb-release debian-archive-keyring<\/code><\/pre>\n<p> 1.2. \u0418\u043c\u043f\u043e\u0440\u0442\u0438\u0440\u0443\u0435\u043c \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043f\u043e\u0434\u043f\u0438\u0441\u0438:<\/p>\n<pre><code class=\"yaml\">curl https:\/\/nginx.org\/keys\/nginx_signing.key | gpg --dearmor \\     | tee \/usr\/share\/keyrings\/nginx-archive-keyring.gpg >\/dev\/null<\/code><\/pre>\n<p> 1.3. \u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u0435\u0433\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c:<\/p>\n<pre><code class=\"yaml\">gpg --dry-run --quiet --import --import-options import-show \/usr\/share\/keyrings\/nginx-archive-keyring.gpg<\/code><\/pre>\n<p> 1.4. \u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438:<\/p>\n<pre><code class=\"yaml\">echo \"deb [signed-by=\/usr\/share\/keyrings\/nginx-archive-keyring.gpg] \\ http:\/\/nginx.org\/packages\/debian `lsb_release -cs` nginx\" \\     | tee \/etc\/apt\/sources.list.d\/nginx.list<\/code><\/pre>\n<p> 1.5. \u041d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442 \u043d\u0430\u0448\u0438\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u043d\u0430\u0434 \u043f\u0430\u043a\u0435\u0442\u0430\u043c\u0438 \u0438\u0437 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u0430:<\/p>\n<pre><code class=\"yaml\">echo -e \"Package: *\\nPin: origin nginx.org\\nPin: release o=nginx\\nPin-Priority: 900\\n\" \\     | tee \/etc\/apt\/preferences.d\/99nginx<\/code><\/pre>\n<p> 1.6. \u041f\u0435\u0440\u0435\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u043c \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 \u0438 \u0441\u0442\u0430\u0432\u0438\u043c \u043d\u0430\u0448 <strong>Nginx<\/strong><\/p>\n<pre><code class=\"yaml\">apt update apt install -y nginx<\/code><\/pre>\n<p> 2. \u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c, \u0447\u0442\u043e <strong>Nginx<\/strong> \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e \u0438 \u0443\u0436\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0441\u044f.<\/p>\n<pre><code class=\"yaml\">systemctl status nginx \u25cf nginx.service - A high performance web server and a reverse proxy server   Loaded: loaded (\/lib\/systemd\/system\/nginx.service; enabled; vendor preset: enabled)   Active: active (running) since Mon 2022-01-31 18:19:12 +07; 7s ago     Docs: man:nginx(8) Main PID: 9381 (nginx)    Tasks: 5 (limit: 4915)   Memory: 5.8M   CGroup: \/system.slice\/nginx.service           \u251c\u25009381 nginx: master process \/usr\/sbin\/nginx -g daemon on; master_process on;           \u251c\u25009382 nginx: worker process           \u251c\u25009383 nginx: worker process           \u251c\u25009384 nginx: worker process           \u2514\u25009385 nginx: worker process  \u044f\u043d\u0432 31 18:19:12 user systemd[1]: Starting A high performance web server and a reverse proxy server... \u044f\u043d\u0432 31 18:19:12 user systemd[1]: Started A high performance web server and a reverse proxy server.<\/code><\/pre>\n<p> 3. \u0422\u0435\u043f\u0435\u0440\u044c \u043d\u0430\u043f\u0438\u0448\u0435\u043c \u043f\u0440\u043e\u0441\u0442\u0443\u044e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u0434\u043b\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0445\u043e\u0441\u0442\u0430 \u0438 \u043f\u0440\u043e\u0432\u0435\u0434\u0451\u043c \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435.<\/p>\n<pre><code class=\"yaml\">nano \/etc\/nginx\/conf.d\/default<\/code><\/pre>\n<p>\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f:<\/p>\n<pre><code class=\"nginx\">server {        listen 80 ;         root \/var\/www\/html;         server_name www.zashitimsa_ot_ddos.ru;         location \/ {                try_files $uri $uri\/ =404;        }  }<\/code><\/pre>\n<p> 4. \u041f\u0440\u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c \u043a \u0441\u0435\u0431\u0435 \u0432 <strong>hosts<\/strong>, \u0447\u0442\u043e\u0431\u044b \u0438\u043c\u0435\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u043d\u0430\u0448 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u0441\u0430\u0439\u0442.<\/p>\n<pre><code class=\"yaml\">nano \/etc\/hosts<\/code><\/pre>\n<p>\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f:<\/p>\n<pre><code class=\"yaml\">$\u043d\u0430\u0448_ip_\u0430\u0434\u0440\u0435\u0441 www.zashitimsa_ot_ddos.ru<\/code><\/pre>\n<p> 5. \u0414\u0435\u043b\u0430\u0435\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442.<\/p>\n<details class=\"spoiler\">\n<summary>p.s. \u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430<\/summary>\n<div class=\"spoiler__content\">\n<p>\u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 \u0431\u044b\u043b\u0430 \u0437\u0430\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d\u0430 \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u0438 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0430 \u0432 \u0444\u0430\u0439\u043b\u044b \u043f\u043b\u043e\u0449\u0430\u0434\u043a\u0438.<\/p>\n<\/div>\n<\/details>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/9b6\/b4e\/0ee\/9b6b4e0ee7f08966f2e34a4d5aceb203.png\" width=\"1600\" height=\"816\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/9b6\/b4e\/0ee\/9b6b4e0ee7f08966f2e34a4d5aceb203.png\"\/><figcaption><\/figcaption><\/figure>\n<p> 6. \u0422\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c, \u043a\u0430\u043a \u043d\u0430\u0448 <strong>Nginx <\/strong>\u0432\u044b\u0434\u0435\u0440\u0436\u0438\u0442 \u0441\u0442\u0440\u0435\u0441\u0441-\u0442\u0435\u0441\u0442. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043b\u044e\u0431\u0443\u044e \u0442\u0435\u0441\u0442\u043e\u0432\u0443\u044e \u0443\u0442\u0438\u043b\u0438\u0442\u0443 \u0434\u043b\u044f <strong>Dos<\/strong>. \u042f \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e <strong>GoldenEye<\/strong>. \u0421\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a <a href=\"https:\/\/github.com\/jseidl\/GoldenEye\">\u043f\u0440\u0438\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f<\/a>.<\/p>\n<p>\u0415\u0451 \u0437\u0430\u043f\u0443\u0441\u043a \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u043a\u0430\u043a \u0441\u043e \u0441\u0432\u043e\u0435\u0439 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b, \u0442\u0430\u043a \u0438 \u0441 \u0434\u0440\u0443\u0433\u043e\u0439\u00a0 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b \u0434\u043b\u044f \u043d\u0430\u0433\u043b\u044f\u0434\u043d\u043e\u0441\u0442\u0438.<\/p>\n<p>\u041f\u0435\u0440\u0435\u043c\u0435\u0449\u0430\u0435\u043c\u0441\u044f \u0432 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u043a\u0430\u0442\u0430\u043b\u043e\u0433:<\/p>\n<pre><code class=\"yaml\">cd \/opt<\/code><\/pre>\n<p>\u0418 \u043a\u043b\u043e\u043d\u0438\u0440\u0443\u0435\u043c \u0441\u0435\u0431\u0435 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439:<\/p>\n<pre><code class=\"yaml\">git clone https:\/\/github.com\/jseidl\/GoldenEye.git cd .\/GoldenEye<\/code><\/pre>\n<p>\u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043d\u0435\u0442\u0443 <strong>git <\/strong>\u0438 <strong>python<\/strong>, \u0442\u043e \u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u0442\u0430\u043a\u0436\u0435 \u043b\u0435\u0433\u043a\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0441\u0435\u0431\u0435 \u043d\u0430 \u043c\u0430\u0448\u0438\u043d\u0443 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u043c\u0438:<\/p>\n<pre><code class=\"yaml\">apt install git python3.9<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0434\u0435\u043b\u0430\u0435\u043c \u0442\u0435\u0441\u0442\u043e\u0432\u044b\u0439 \u0437\u0430\u043f\u0443\u0441\u043a \u0438 \u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u043b\u043e\u0433\u0438 \u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<\/p>\n<pre><code class=\"yaml\">python3 goldeneye.py http:\/\/www.zashitimsa_ot_ddos.ru\/test.png -w 50 -s 1500 -m random -d GoldenEye v2.1 by Jan Seidl &lt;jseidl@wroot.org>  Hitting webserver in mode 'get' with 2500 workers running 500 connections each. Hit CTRL+C to cancel.  Starting 50 concurrent workers<\/code><\/pre>\n<p> 7.  \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442.<\/p>\n<p>\u041f\u043b\u043e\u0449\u0430\u0434\u043a\u0430 \u043d\u0435 \u043e\u0442\u0434\u0430\u0435\u0442 \u043a\u043e\u043d\u0442\u0435\u043d\u0442:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/48b\/d14\/67c\/48bd1467cefbd507cebbe370d16855e2.png\" width=\"1600\" height=\"835\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/48b\/d14\/67c\/48bd1467cefbd507cebbe370d16855e2.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u0412 \u043b\u043e\u0433\u0430\u0445 \u0432\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u043d\u0430 \u043f\u043b\u043e\u0449\u0430\u0434\u043a\u0443 \u0431\u044b\u043b\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e 3000 \u0431\u0435\u0441\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u043d\u044b\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 <strong>Nginx<\/strong>.<\/p>\n<pre><code class=\"yaml\">head \/var\/log\/nginx\/access.log | grep 07\/Feb\/2022:05: | awk '{print $1}'| sort -nr | uniq -c | sort -nr    3002 62.109.28.95<\/code><\/pre>\n<p>\u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u0432\u0441\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0438\u043c\u0435\u044e\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435:<\/p>\n<pre><code class=\"yaml\">tail -5 access.log  62.109.28.95 - - [07\/Feb\/2022:05:50:40 +0000] \"GET \/test.png?6jjxGJ2K=Uhxd6KFNi&amp;7oa21rph7H=X8cAGDwwK&amp;spbX0u6=KmPWlPx5hd&amp;pN7N7A2e=KUXAwBpVk6QYR8oKnh0W&amp;pE2RN=3kvsQjH HTTP\/1.1\" 200 92429 \"http:\/\/www.baidu.com\/xKeRa2sn?syA=ClwjEihYHt787o3TKbMp&amp;FTBSwEv13=wA7LYeB2&amp;obD81R=hDehC3sdNlrx3A3cugcq&amp;GGNYc=SF2oV&amp;WM0xYJq3iB=FNN48wyV&amp;uyLdocc7=ym2isuyIonv4&amp;k3nps=obBhttps:\/\/example.domain.ru\/issues\/122563dIx1iRk7eAt&amp;REsj=xl3YiW7wwBpDTgxOj\" \"Mozilla\/5.0 (Linux i386; X11) Gecko\/20021112 Firefox\/10.0\" 62.109.28.95 - - [07\/Feb\/2022:05:50:40 +0000] \"GET \/test.png?C5fpRAtsX=mDtamkj&amp;fvHhGpqK5E=wFsRJifnxpAr8yXYA8Ip HTTP\/1.1\" 200 119941 \"http:\/\/www.zashitimsa_ot_ddos.ru\/mCiN2DNf7Y?N1tw=c7aqmB&amp;0lFIpn=pUYexNiiySDc2&amp;fw1h=3KiPFpk30NerKd6&amp;2F1bOYVUhl=JoFsDn2&amp;fg7ljW=b7KNWm&amp;qE2=QtSctM2c53dVRUlx&amp;eaQ=aTP18q14oKF\" \"Mozilla\/5.0 (compatible; MSIE 7.0b; Windows NT.6.2; .NET CLR 2.5.24981; WOW64)\" 62.109.28.95 - - [07\/Feb\/2022:05:50:40 +0000] \"GET \/test.png?lTbPcEcrHp=24ohNGEqR0 HTTP\/1.1\" 200 138765 \"-\" \"Mozilla\/5.0 (compatible; MSIE 7.0; Macintosh; .NET CLR 3.0.6224; Intel Mac OS X 10_2_5)\" 62.109.28.95 - - [07\/Feb\/2022:05:50:40 +0000] \"GET \/test.png?jUqMn0gKkI=w2EUD4Ycvt&amp;dSYvge=x0W&amp;vXBaoy7=pvpl21LV&amp;1tssU73vTd=eoqNCWqcv60&amp;BG1FRwnEV2=8qnklbsrP HTTP\/1.1\" 200 121389 \"-\" \"Mozilla\/5.0 (Windows NT 5.1; WOW64) AppleWebKit\/537.35 (KHTML, like Gecko) Chrome\/27.0.229.36 Safari\/536.2\"<\/code><\/pre>\n<p>\u042d\u0442\u043e \u043f\u0440\u0438\u0432\u0435\u043b\u043e \u043a \u0438\u0441\u0447\u0435\u0440\u043f\u0430\u043d\u0438\u044e \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0445 <strong>workers <\/strong>\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u0441\u0435\u0440\u0432\u0438\u0441\u0430:<\/p>\n<pre><code class=\"yaml\">tail -5 \/var\/log\/nginx\/error.log 2022\/02\/07 05:50:30 [alert] 29231#29231: 768 worker_connections are not enough 2022\/02\/07 05:50:30 [alert] 29231#29231: 768 worker_connections are not enough 2022\/02\/07 05:50:30 [alert] 29231#29231: 768 worker_connections are not enough 2022\/02\/07 05:50:30 [alert] 29231#29231: 768 worker_connections are not enough 2022\/02\/07 05:50:30 [alert] 29231#29231: 768 worker_connections are not enough<\/code><\/pre>\n<details class=\"spoiler\">\n<summary>p.s. \u041f\u0440\u0435\u0434\u043e\u0441\u0442\u043e\u0440\u043e\u0436\u043d\u043e\u0441\u0442\u044c!<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0411\u0443\u0434\u044c\u0442\u0435 \u0430\u043a\u043a\u0443\u0440\u0430\u0442\u043d\u044b \u0441 <strong>GoldenEye, <\/strong>\u0442\u0430\u043a \u043a\u0430\u043a \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u043d \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u044f\u0435\u0442 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0438, \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u043f\u0440\u0438 \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u043c \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0438\u0437 \u0441\u0435\u0440\u0438\u0438:<\/p>\n<pre><code class=\"yaml\">python3 goldeneye.py http:\/\/www.zashitimsa_ot_ddos.ru\/test.png -w 5000000 -s 15000000 -m random -d<\/code><\/pre>\n<p>\u041c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u0438\u0441\u0447\u0435\u0440\u043f\u0430\u043d\u0438\u044e \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0438 \u043a \u0435\u0433\u043e \u0437\u0430\u0432\u0438\u0441\u0430\u043d\u0438\u044e.<\/p>\n<\/div>\n<\/details>\n<h3>\u0413\u043b\u0430\u0432\u0430 3: \u201c\u0412 \u0441\u0440\u0430\u0436\u0435\u043d\u0438\u0438 \u0441\u0430\u043c\u043e \u043f\u043e \u0441\u0435\u0431\u0435 \u0447\u0438\u0441\u043b\u0435\u043d\u043d\u043e\u0435 \u043f\u0440\u0435\u0432\u043e\u0441\u0445\u043e\u0434\u0441\u0442\u0432\u043e \u043d\u0435 \u0434\u0430\u0435\u0442 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430.  \u041d\u0435 \u043d\u0430\u0434\u043e \u0438\u0434\u0442\u0438 \u0432 \u0430\u0442\u0430\u043a\u0443, \u043e\u043f\u0438\u0440\u0430\u044f\u0441\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 \u0433\u043e\u043b\u0443\u044e \u0432\u043e\u0435\u043d\u043d\u0443\u044e \u043c\u043e\u0449\u044c.\u201d &#8212; \u0421\u0443\u043d\u044c \u0426\u0437\u044b<\/h3>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u043d\u0430\u0448\u0430 \u043f\u043b\u043e\u0449\u0430\u0434\u043a\u0430 \u0441\u043f\u0443\u0441\u0442\u044f \u043d\u0435\u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0443\u043f\u0430\u043b\u0430 \u043f\u043e\u0434 \u043d\u0430\u0442\u0438\u0441\u043a\u043e\u043c \u0430\u0442\u0430\u043a\u0438, \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0432\u044b\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c \u0437\u0430\u0449\u0438\u0442\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043c\u043e\u0447\u044c \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u043d\u0435\u043b\u0435\u0433\u0438\u0442\u0438\u043c\u043d\u043e\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u0438 \u0434\u0430\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u0447\u0443\u0432\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0441\u0435\u0431\u044f \u043a\u0440\u0443\u0442\u044b\u043c IT-\u0448\u043d\u0438\u043a\u043e\u043c.<\/p>\n<p>\u041f\u0435\u0440\u0435\u0434 \u044d\u0442\u0438\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u0441\u0435\u0431\u0435 \u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u044b:<\/p>\n<ol>\n<li>\n<p>\u041e\u0442 \u043a\u0430\u043a\u0438\u0445 \u0430\u0442\u0430\u043a \u044f \u0445\u043e\u0447\u0443 \u0437\u0430\u0449\u0438\u0442\u0438\u0442\u044c\u0441\u044f?<\/p>\n<\/li>\n<li>\n<p>\u0425\u043e\u0447\u0443 \u043b\u0438 \u044f \u043e\u0442\u0441\u0435\u044f\u0442\u044c \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0431\u043e\u0442\u043e\u0432?<\/p>\n<\/li>\n<li>\n<p>\u041a\u0430\u043a \u043d\u0435 \u043f\u043e\u0442\u0435\u0440\u044f\u0442\u044c \u0442\u0440\u0430\u0444\u0438\u043a \u043e\u0442 \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439?<\/p>\n<\/li>\n<\/ol>\n<p>\u041f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u043c&#8230;<br \/>\u0420\u0430\u0437\u0443\u043c\u0435\u0435\u0442\u0441\u044f, \u0434\u043b\u044f \u0442\u0435\u0445, \u043a\u0442\u043e \u0443\u0436\u0435 \u0438\u043c\u0435\u043b \u043e\u043f\u044b\u0442 \u0440\u0430\u0431\u043e\u0442\u044b \u0441 <strong>Nginx<\/strong>, \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u044e\u0440\u043f\u0440\u0438\u0437\u043e\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u044f <strong>\u2018rate\u2019<\/strong>. \u0414\u043b\u044f \u0442\u0435\u0445, \u043a\u0442\u043e \u043d\u0435 \u0438\u043c\u0435\u043b \u0442\u0430\u043a\u043e\u0433\u043e \u043e\u043f\u044b\u0442\u0430, \u043d\u0438\u0436\u0435 \u043c\u044b \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u044d\u0442\u0443 \u0444\u0443\u043d\u043a\u0446\u0438\u044e: \u0447\u0442\u043e \u044d\u0442\u043e \u0438 \u0441 \u0447\u0435\u043c \u044d\u0442\u043e \u0435\u0434\u044f\u0442.<\/p>\n<p><u>\u0428\u0430\u0433 \u043f\u0435\u0440\u0432\u044b\u0439<\/u> \u2018rate\u2019:<\/p>\n<p><strong>rate <\/strong>&#8212; \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0432\u0430\u043c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e HTTP-\u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043c\u043e\u0436\u0435\u0442 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0437\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u043f\u0435\u0440\u0438\u043e\u0434 \u0432\u0440\u0435\u043c\u0435\u043d\u0438.<\/p>\n<p> 1. \u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043c \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0437\u043e\u043d\u044b \u0432 \u0431\u043b\u043e\u043a <strong>server<\/strong> \u043d\u0430\u0448\u0435\u0433\u043e \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0445\u043e\u0441\u0442\u0430 \u0432 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 <strong>location<\/strong>:<\/p>\n<p>\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f:<\/p>\n<pre><code class=\"nginx\">limit_req_zone $binary_remote_addr zone=shield:10m rate=10r\/s;  server {        listen 80 ;         root \/var\/www\/html;         server_name www.zashitimsa_ot_ddos.ru;         location \/ {               limit_req zone=shield;                try_files $uri $uri\/ =404;        }  }<\/code><\/pre>\n<p>\u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c, \u0447\u0442\u043e \u043c\u044b \u043f\u0438\u0448\u0435\u043c, \u0440\u0430\u0437\u0431\u0435\u0440\u0451\u043c \u0441\u0440\u0430\u0437\u0443 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u2018\u043b\u0435\u043c\u043c\u2019 \u0434\u0430\u043d\u043d\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438:<\/p>\n<pre><code class=\"yaml\">zone \u00a0 \/\/\/ \u041d\u0438 \u0434\u043b\u044f \u043a\u043e\u0433\u043e \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u0435\u043a\u0440\u0435\u0442\u043e\u043c, \u0447\u0442\u043e \u0437\u043e\u043d\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0438\u0437 \u0441\u0435\u0431\u044f \u0437\u043e\u043d\u0443 \u043e\u0431\u0449\u0435\u0439 \u043f\u0430\u043c\u044f\u0442\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0443\u044e \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 IP \u0430\u0434\u0440\u0435\u0441\u043e\u0432 zone=shield\u00a0 \/\/\/ \u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0437\u043e\u043d\u044b, \u043e\u043d\u043e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043b\u044e\u0431\u044b\u043c $binary_remote_addr\u00a0 \/\/\/ \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0430\u044f \u0432 \u0441\u0435\u0431\u0435 \u0434\u0432\u043e\u0438\u0447\u043d\u044b\u0439 IP \u0430\u0434\u0440\u0435\u0441 10m\u00a0 \/\/\/ \u0440\u0430\u0437\u043c\u0435\u0440 \u0437\u043e\u043d\u044b \u043f\u0430\u043c\u044f\u0442\u0438 \u0432 \u043c\u0435\u0433\u0430\u0431\u0430\u0439\u0442\u0430\u0445                                                                                 rate=10r\/s \/\/\/ \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e requests \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443, \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 10 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443<\/code><\/pre>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b:<\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u0442\u0435\u0441\u0442\u0430 \u043c\u044b \u0441\u0440\u0430\u0437\u0443 \u0443\u0432\u0438\u0434\u0438\u043c \u0432 \u043b\u043e\u0433\u0430\u0445 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u043a\u0430\u0440\u0442\u0438\u043d\u0443 \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0448\u0435\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438:<\/p>\n<pre><code class=\"yaml\">head access.log 62.109.28.95 - - [07\/Feb\/2022:06:08:08 +0000] \"GET \/test.png?gtv0SN=QwAgT&amp;6SAGxK3h=AFw0opHJed3XpCtwHb HTTP\/1.1\" 200 189721 \"-\" \"Mozilla\/5.0 (Windows NT 5.1; WOW64) AppleWebKit\/535.20 (KHTML, like Gecko) Version\/5.0.4 Safari\/536.21\" 62.109.28.95 - - [07\/Feb\/2022:06:08:08 +0000] \"GET \/test.png?c6aJYc=lwveJ5aI76xw&amp;ogFuK8R4W=CUqFlTXSrhT1S&amp;F3v=R7EhYI7gpucmbq4&amp;xqN=cq3coSVvPT6&amp;HHq=vjnt7FFyKLx HTTP\/1.1\" 503 213 \"-\" \"Mozilla\/5.0 (Windows NT 6.3; WOW64) Gecko\/20042612 Firefox\/19.0\" 62.109.28.95 - - [07\/Feb\/2022:06:08:08 +0000] \"GET \/test.png?2L6Ymgh=mvoXScoSmiaM&amp;mjjkt3o=Lkwyw&amp;5I1ym=7VKefXOma HTTP\/1.1\" 503 615 \"http:\/\/www.google.com\/xNlsQ3?1nvky0BRyy=JmTICugXrcPMXx0DC\" \"Mozilla\/5.0 (compatible; MSIE 9.0; Macintosh; .NET CLR 2.2.26969; Intel Mac OS X 11_1_1)\" 62.109.28.95 - - [07\/Feb\/2022:06:08:08 +0000] \"GET \/test.png?Xk4y=xsyeB7FObY3J&amp;TQoJ5=VLTnHP HTTP\/1.1\" 503 615 \"http:\/\/www.zashitimsa_ot_ddos.ru\/TRvKqc\" \"Mozilla\/5.0 (Windows; U; MSIE 7.0; Macintosh; .NET CLR 3.5.13570; Intel Mac OS X 11_0_5)\" 62.109.28.95 - - [07\/Feb\/2022:06:08:08 +0000] \"GET \/test.png?A0wPrP=xcKcOdMTSFEGqaUw1&amp;C4lwH=YcQgUkhR1QOI&amp;NCeuc2=LDW5odrQN2bNcWhn2 HTTP\/1.1\" 503 213 \"http:\/\/www.zashitimsa_ot_ddos.ru\/IdMNN4?CKf7Ux=Jv1CuJ&amp;kah4l8EofJ=o0BPFDqnOE5XWR&amp;iJvEuVR=LEUud0hfi2m&amp;0fRWX0=Fx6SkHP5VRIuJKt&amp;xNQKBnLm=GqquF1C7PEWiKiHD8jG&amp;thesU=HG80V0N&amp;bWtoxEG=CpK8ju5E6lmYm7rOwsyC&amp;wPt=uVQSsyk7XrW7Eq1h\" \"Mozilla\/5.0 (Macintosh; Intel Mac OS X 11_1_0) Gecko\/20103004 Firefox\/15.0\" 62.109.28.95 - - [07\/Feb\/2022:06:08:08 +0000] \"GET \/test.png?5O0=3DmuAKsJUVPpdU&amp;TkKL=wJJpKSqOo HTTP\/1.1\" 503 615 \"http:\/\/www.yandex.com\/ehfnY5\" \"Mozilla\/5.0 (Windows NT.6.2; WOW64) AppleWebKit\/537.19 (KHTML, like Gecko) Chrome\/17.0.1671.100 Safari\/536.22\" 62.109.28.95 - - [07\/Feb\/2022:06:08:08 +0000] \"GET \/test.png?5ra=7qBQLV&amp;h3YaO=JNUwUUpq HTTP\/1.1\" 503 213 \"-\" \"Mozilla\/5.0 (Windows NT 5.1; Win64; x64) Gecko\/20072512 Firefox\/11.0\" 62.109.28.95 - - [07\/Feb\/2022:06:08:08 +0000] \"GET \/test.png?NiU=O3lRfkyh4cDRKo&amp;KWEgQScD0=A4uYEw5rCUI55yt1&amp;C5qjWevh=BJp&amp;qY7q77=XlkE0 HTTP\/1.1\" 503 615 \"http:\/\/www.google.com\/gwqPjY?SnC=QjCvRl6WkihbOXx3VD&amp;YBbXQ=kfK&amp;u8y6r=qBMhgA67RbfqNOG&amp;CH1jrHn=nJEpNgIdhXq6eP6AL6Y&amp;6u2CM=mjry&amp;KMge75d=4VjNynX&amp;PVU=vWLeLCMRQ1O&amp;ayQVLV=ynE0qdxKmwyQUR6X&amp;uTwvDJU=gB86jE1bJh6PTp&amp;31xQy=NYqINsYwjx8gx8\" \"Mozilla\/5.0 (Windows; U; MSIE 6.0; Windows NT 6.1; Trident\/4.0; WOW64)\" 62.109.28.95 - - [07\/Feb\/2022:06:08:08 +0000] \"GET \/test.png?wCoex=PrlSPlMIAkWGd3J&amp;e7xBA6=ltFAGNQlQHCeGyh24&amp;EWMvYuRt5=57lPG26Mq HTTP\/1.1\" 503 213 \"http:\/\/www.yandex.com\/loiWFn8?EcOgc=N44Hh1NgNpsTAF&amp;H3dkdP5sps=MW6wACSn&amp;YU4xDEL22u=3QnCuKkybO&amp;MvpI4=RSHViVAvsScoE&amp;d7bQuVeMms=FcGUbmWv&amp;bR4P63j=TolMsDcX0GmrXHUQB&amp;E8A8jR2wf=jl2BA4ipBva&amp;xKgBJB=xnqJAic1ePkX81UfI\" \"Mozilla\/5.0 (Linux i386; X11) Gecko\/20100505 Firefox\/25.0\" 62.109.28.95 - - [07\/Feb\/2022:06:08:08 +0000] \"GET \/test.png?GBSOIJ=IVlXF&amp;F7EoI30=bcRHF6ej2vX4i2vj&amp;TE7=mWfJ2E47oe37cgjegjL&amp;x4QKBtRDW=USvUq HTTP\/1.1\" 503 213 \"http:\/\/www.baidu.com\/GLbGL6q\" \"Mozilla\/5.0 (Linux x86_64; X11) Gecko\/20072512 Firefox\/11.0\"<\/code><\/pre>\n<p>\u041e\u0442\u0441\u044e\u0434\u0430 \u043c\u044b \u0432\u0438\u0434\u0438\u043c, 1 \u0437\u0430\u043f\u0440\u043e\u0441 \u043f\u043e\u043b\u0443\u0447\u0438\u043b 200-\u0439 \u043a\u043e\u0434 \u043e\u0442\u0432\u0435\u0442\u0430, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0432\u0441\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u043b\u0438 503-\u0439 \u043a\u043e\u0434, \u0433\u043e\u0432\u043e\u0440\u044f\u0449\u0438\u0439 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u0441\u0435\u0440\u0432\u0435\u0440 \u043d\u0435 \u0433\u043e\u0442\u043e\u0432 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0439 \u0437\u0430\u043f\u0440\u043e\u0441. \u041f\u0440\u0435\u043a\u0440\u0430\u0441\u043d\u043e &#8212; \u043c\u044b \u043d\u0430 \u0432\u0435\u0440\u043d\u043e\u043c \u043f\u0443\u0442\u0438.<\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e \u043a\u0430\u043a \u043c\u044b \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u043b\u0438 \u0434\u0430\u043d\u043d\u0443\u044e \u0437\u0430\u0449\u0438\u0442\u0443, \u043c\u044b \u0437\u0430\u0449\u0438\u0442\u0438\u043b\u0438\u0441\u044c \u043e\u0442 \u0432\u0440\u0435\u0434\u043e\u043d\u043e\u0441\u043d\u044b\u0445 <strong>IP<\/strong>-\u0430\u0434\u0440\u0435\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u043e\u0437\u0434\u0430\u044e\u0442 \u043d\u0435\u043d\u0443\u0436\u043d\u044b\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u044b, \u043d\u043e \u0447\u0442\u043e, \u0435\u0441\u043b\u0438 \u043c\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043c \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044e, \u043a\u043e\u0433\u0434\u0430 \u043a \u043d\u0430\u043c \u0437\u0430\u0433\u043b\u044f\u043d\u0443\u0442 \u0442\u043e\u043b\u043f\u044b \u043f\u043e\u0438\u0441\u043a\u043e\u0432\u044b\u0445 \u0431\u043e\u0442\u043e\u0432 \u043d\u0435 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0430\u0449\u0438\u0435 <strong>Yandex<\/strong>, <strong>Google<\/strong>, <strong>Mail<\/strong>, \u0438\u0441\u0445\u043e\u0434\u044f \u0438\u0437 \u043d\u0430\u0448\u0435\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 1 \u0437\u0430\u043f\u0440\u043e\u0441 \u0431\u0443\u0434\u0435\u0442 \u0432\u0441\u0435\u0433\u0434\u0430 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e, \u043d\u043e \u043d\u0443\u0436\u0435\u043d \u043b\u0438 \u043e\u043d \u043d\u0430\u043c?<\/p>\n<p><u>\u0428\u0430\u0433 \u0432\u0442\u043e\u0440\u043e\u0439<\/u> \u2018\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430 \u043f\u043e user_agent\u2019<\/p>\n<p>\u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438 \u043f\u043e user_agent, \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0432 \u043d\u0430\u0448 \u0431\u043b\u043e\u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u0435 \u0434\u043b\u044f \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 \u043f\u043e\u0438\u0441\u043a\u043e\u0432\u044b\u0445 \u0431\u043e\u0442\u043e\u0432 \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u043c \u0444\u0438\u043d\u0430\u043b\u044c\u043d\u0443\u044e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e:<\/p>\n<pre><code class=\"nginx\">limit_req_zone $binary_remote_addr zone=shield:10m rate=10r\/s  server {        listen 80 ;         root \/var\/www\/html;         server_name www.zashitimsa_ot_ddos.ru;                if ( $http_user_agent ~* (bingbot|AhrefsBot|Ruby|PetalBot|SemrushBot|MJ12bot) ){                return 403;        }         location \/ {               limit_req zone=shield;                try_files $uri $uri\/ =404;        }  }<\/code><\/pre>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b:<\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0431\u043e\u0442\u044b, \u043e\u0431\u0440\u0430\u0449\u0430\u044e\u0449\u0438\u0435\u0441\u044f \u0441 \u0434\u0430\u043d\u043d\u044b\u043c user agent \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u044e\u0442 403 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043e\u0442\u0434\u044b\u0445\u0430\u0442\u044c, \u043d\u0435 \u0437\u0430\u0442\u0440\u0430\u0433\u0438\u0432\u0430\u044f \u043d\u0430\u0448\u0443 \u043f\u043b\u043e\u0449\u0430\u0434\u043a\u0443.<\/p>\n<pre><code class=\"yaml\">62.109.28.95 - - [07\/Feb\/2022:06:27:41 +0000] \"GET \/test.png?OBDmsO6=foc&amp;kbCf=xy6VgK4QYN HTTP\/1.1\" 403 571 \"-\" \"Mozilla\/5.0 (MJ12bot; Intel Mac OS X 10_0_1) AppleWebKit\/537.18 (KHTML, like Gecko) Chrome\/30.0.1475.18 Safari\/535.5\" 62.109.28.95 - - [07\/Feb\/2022:06:27:41 +0000] \"GET \/test.png?TteMB=tmrbqmDJabtTAT&amp;cGr4=p2Yxpkdku&amp;Afk20eI=wTibBYkQRqCwOxgh1HD&amp;cULj3rci=POV2pj&amp;rWtHK0=UwnWlr3el HTTP\/1.1\" 403 571 \"-\" \"Mozilla\/5.0 (Windows; U; MSIE 7.0; MJ12bot; .NET CLR 2.0.4936; Intel Mac OS X 11_1_1)\" 62.109.28.95 - - [07\/Feb\/2022:06:27:41 +0000] \"GET \/test.png?iAHhFb6HF=W8YtpeInTbX774IOHWM&amp;VFU2BXL=Kgfe0n5d631 HTTP\/1.1\" 403 140 \"-\" \"Mozilla\/5.0 (MJ12bot; Intel Mac OS X 11_1_1) Gecko\/20053010 Firefox\/16.0\" 62.109.28.95 - - [07\/Feb\/2022:06:27:41 +0000] \"GET \/test.png?SH41W=bSxf8dkWfwK&amp;W7yR=lqY0s0 HTTP\/1.1\" 403 169 \"-\" \"Mozilla\/5.0 (MJ12bot; Intel Mac OS X 11_3_3) Gecko\/20091604 Firefox\/10.0\" 62.109.28.95 - - [07\/Feb\/2022:06:27:41 +0000] \"GET \/test.png?P52AAb=gDsyT4foW&amp;nwGCdNH=oMV HTTP\/1.1\" 403 571 \"http:\/\/www.zashitimsa_ot_ddos.ru\/hmcHaC?S7yLL=6S5wMd0gLqeU7pDVJhju&amp;AIkWBRq7s=NRXF2LkivYBU85dCGa&amp;Q3VhbAts=36R3Ybw&amp;WagrK7x=eE4CAB5AbALM&amp;3yY=GI8vgaCLa2BapE2&amp;bkSLGi=2jVjFgDSdwtxj&amp;EWWCesCSDc=P2qu&amp;5djUfS=Yfin7q3t2UsPN8rbx\" \"Mozilla\/5.0 (compatible; MSIE 7.0; MJ12bot; .NET CLR 3.0.27172; Intel Mac OS X 11_1_0)\" 62.109.28.95 - - [07\/Feb\/2022:06:27:41 +0000] \"GET \/test.png?grw=txjgo&amp;XSrbd=mbcJAf2diPBOxh&amp;mLl=OGunDrcoWkhP HTTP\/1.1\" 403 571 \"-\" \"Mozilla\/5.0 (MJ12bot; Intel Mac OS X 11_3_3) AppleWebKit\/535.35 (KHTML, like Gecko) Chrome\/29.0.1227.45 Safari\/537.7\" 62.109.28.95 - - [07\/Feb\/2022:06:27:41 +0000] \"GET \/test.png?XmqsKdXD4p=JXm&amp;Ehm=DofRoOaWIHukWIYHWbbo HTTP\/1.1\" 403 169 \"-\" \"Mozilla\/5.0 (MJ12bot; Intel Mac OS X 10_0_1) Gecko\/20082911 Firefox\/23.0\" 62.109.28.95 - - [07\/Feb\/2022:06:27:41 +0000] \"GET \/test.png?hcFy=3jiNPtYiL&amp;G0ctkasjSP=qHebQoiF&amp;FkPPo=0lrX0QyRq05tqmqBO2P5&amp;iH1YlUT=1KkpEb4on0Ef HTTP\/1.1\" 403 140 \"http:\/\/www.bing.com\/7kLfQh\" \"Mozilla\/5.0 (MJ12bot; Intel Mac OS X 11_3_3) Gecko\/20091607 Firefox\/16.0\" 62.109.28.95 - - [07\/Feb\/2022:06:27:41 +0000] \"GET \/test.png?hfiKSAITuR=qMl5GqfT6dim&amp;AAdUx2=GKs HTTP\/1.1\" 403 199 \"http:\/\/www.bing.com\/FN2DCyTle\" \"Mozilla\/5.0 (MJ12bot; Intel Mac OS X 11_7_5) AppleWebKit\/535.27 (KHTML, like Gecko) Chrome\/28.0.633.27 Safari\/536.36\" 62.109.28.95 - - [07\/Feb\/2022:06:27:41 +0000] \"GET \/test.png?EoJFcrq=DX53dVcC7U&amp;7fx=Pwimtil50F5gYyR1d7 HTTP\/1.1\" 403 571 \"http:\/\/www.bing.com\/yPulwdB8S\" \"Mozilla\/5.0 (compatible; MSIE 7.0b; MJ12bot; .NET CLR 3.0.27172; Intel Mac OS X 11_3_3)\"<\/code><\/pre>\n<p><u>\u0428\u0430\u0433 \u0442\u0440\u0435\u0442\u0438\u0439<\/u> \u2018fail2ban\u2019<\/p>\n<p>\u041f\u0440\u0438\u0448\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u0434\u043b\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043e\u0442\u043b\u0438\u0447\u043d\u043e\u0433\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430 \u0434\u043b\u044f \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0438 \u0432\u0430\u0448\u0435\u0433\u043e \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430 \u043e\u0442 \u0432\u0440\u0435\u0434\u043e\u043d\u043e\u0441\u043d\u043e\u0433\u043e \u043f\u043e\u043c\u0435\u0448\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430 &#8212; <strong>fail2ban<\/strong>. \u0421\u0443\u0442\u044c \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u044b \u0442\u0430\u043a\u043e\u0432\u0430, \u0447\u0442\u043e \u043e\u043d \u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u0442 logs \u0444\u0430\u0439\u043b\u044b \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u0438 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0443 <strong>IP<\/strong>-\u0430\u0434\u0440\u0435\u0441\u0430 \u043d\u0430 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0439 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u043a \u0432\u0440\u0435\u043c\u0435\u043d\u0438.<\/p>\n<p> 1. \u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043c \u0435\u0433\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440<\/p>\n<pre><code class=\"yaml\">apt install fail2ban<\/code><\/pre>\n<p> 2. \u0412\u0440\u0435\u043c\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438!<\/p>\n<p>\u041a\u043e\u043f\u0438\u0440\u0443\u0435\u043c \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439 <strong>jail.conf<\/strong> \u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u0435\u0433\u043e \u0432 <strong>jail.local<\/strong>:<\/p>\n<pre><code class=\"yaml\">cp \/etc\/fail2ban\/jail.conf \/etc\/fail2ban\/jail.local<\/code><\/pre>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u0443\u0435\u043c <strong>jail.local<\/strong>:<\/p>\n<pre><code class=\"yaml\">nano \/etc\/fail2ban\/jail.local<\/code><\/pre>\n<p>\u0418 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0432 \u043a\u043e\u043d\u0446\u0435 <strong>jail.local<\/strong>. \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f:<\/p>\n<pre><code class=\"nginx\">[nginx-limit-req] enabled = true filter  = nginx-limit-req port    = http,https logpath = \/var\/log\/nginx\/*error.log findetime = 600 bantime = 600 maxretry = 5<\/code><\/pre>\n<p>\u0413\u0434\u0435:<\/p>\n<pre><code class=\"yaml\">enabled = true \u00a0 \/\/\/ \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0444\u0438\u043b\u044c\u0442\u0440 filter\u00a0 = nginx-limit-req \u00a0 \/\/\/ \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0444\u0438\u043b\u044c\u0442\u0440\u0430 \u2018nginx-limit-req\u2019 port\u00a0 \u00a0 = http,https \u00a0 \/\/ \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043f\u043e\u0440\u0442\u043e\u0432 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 80 \u0438 443 logpath = \/var\/log\/nginx\/*error.log \u00a0 \/\/\/ \u043e\u0442\u043a\u0443\u0434\u0430 \u043f\u0430\u0440\u0441\u0438\u0442\u044c \u043b\u043e\u0433\u0438 findetime = 600 \u00a0 \/\/\/ \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0430\u0445, \u0437\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u0435 \u0434\u043e\u043b\u0436\u043d\u043e \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c\u0441\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0437 bantime = 600 \u00a0 \/\/\/ \u0432\u0440\u0435\u043c\u044f \u0431\u0430\u043d\u0430 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0430\u0445 maxretry = 5 \u00a0 \/\/\/ \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u0432\u0442\u043e\u0440\u0435\u043d\u0438\u0439 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043e\u0431 \u043e\u0448\u0438\u0431\u043a\u0430\u0445<\/code><\/pre>\n<details class=\"spoiler\">\n<summary>p.s. \u041d\u0435 \u0437\u0430\u0431\u044b\u0432\u0430\u0435\u043c!<\/summary>\n<div class=\"spoiler__content\">\n<p>\u041d\u0435 \u0437\u0430\u0431\u044b\u0432\u0430\u0435\u043c \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u044e\u0449\u0438\u0435\u0441\u044f \u0443\u0436\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0444\u0438\u043b\u044c\u0442\u0440\u0430 \u0432 \u0441\u0430\u043c\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0438\u043d\u0430\u0447\u0435 <strong>fail2ban <\/strong>\u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442 \u043f\u0435\u0440\u0435\u0447\u0438\u0442\u0430\u0442\u044c \u043a\u043e\u043d\u0444\u0438\u0433 \u0438 \u0431\u0443\u0434\u0435\u0442 \u0440\u0443\u0433\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u043e\u0448\u0438\u0431\u043a\u0438.<\/p>\n<\/div>\n<\/details>\n<p> 3. \u041f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c <strong>fail2ban <\/strong>\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442<\/p>\n<pre><code class=\"yaml\">fail2ban-client reload<\/code><\/pre>\n<p>\u041b\u0438\u0431\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c <strong>restart <\/strong>\u0441\u0435\u0440\u0432\u0438\u0441\u0430:<\/p>\n<pre><code class=\"yaml\">systemctl restart fail2ban<\/code><\/pre>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c, \u0447\u0442\u043e \u043d\u0430\u0448 \u0444\u0438\u043b\u044c\u0442\u0440 \u0437\u0430\u043f\u0443\u0449\u0435\u043d:<\/p>\n<pre><code class=\"bash\">fail2ban-client status nginx-limit-req Status for the jail: nginx-limit-req |- Filter |  |- Currently failed: 0 |  |- Total failed:     0 |  `- File list:        \/var\/log\/nginx\/error.log `- Actions    |- Currently banned: 0    |- Total banned:     0    `- Banned IP list:<\/code><\/pre>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<\/p>\n<p>\u0412 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c, \u043a\u043e\u0433\u0434\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0431\u0443\u0434\u0443\u0442 \u0438\u0434\u0442\u0438 \u0432 <strong>Nginx<\/strong>, \u043d\u0430\u0448 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 \u0432\u044b\u0448\u0435 \u2018rate\u2019 \u0431\u0443\u0434\u0435\u0442 \u043f\u0438\u0441\u0430\u0442\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043e\u0431 \u043e\u0448\u0438\u0431\u043a\u0430\u0445 \u0432 <em>\/var\/log\/nginx\/error.log<\/em>.<\/p>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440 \u043e\u0442\u0432\u0435\u0442\u0430 \u0438\u0437 <strong>logs<\/strong> \u0444\u0430\u0439\u043b\u043e\u0432:<\/p>\n<pre><code class=\"yaml\">2022\/02\/07 07:12:23 [error] 981#981: *203984 limiting requests, excess: 0.600 by zone \"shield\", client: 62.109.28.95, server: www.zashitimsa_ot_ddos.ru, request: \"GET \/test.png?ahcBAmSMG6=82a5yFHKiohqnB&amp;AX4tIBX=msA50EPwJD7dB0eTabXe&amp;RHxTyKgc=JBej4S5EGgeJDDA&amp;TRGxNTpkq=AjtnEu&amp;7rhhe=k6BW4UpFcmmNH8bC7N5 HTTP\/1.1\", host: \"www.zashitimsa_ot_ddos.ru\", referrer: \"http:\/\/www.baidu.com\/cxikKmt0?yonyA=TixYYDnOAG3XlORl&amp;JdL4yV0iQ=7ep5APklt\"<\/code><\/pre>\n<p>\u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0432 <em>\/var\/log\/fail2ban.log<\/em> \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0432\u0435\u0434\u0435\u043d\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043e \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0435 \u043d\u0430\u0448\u0435\u0433\u043e \u043f\u043e\u0434\u043e\u0437\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e <strong>IP<\/strong>:<\/p>\n<pre><code class=\"yaml\">2022-02-07 07:14:22,208 fail2ban.actions        [3066]: NOTICE  [nginx-limit-req] Ban 62.109.28.95<\/code><\/pre>\n<p>\u0438 \u0434\u0430\u043d\u043d\u044b\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0432 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0438 10 \u043c\u0438\u043d\u0443\u0442, \u0442\u0430\u043a \u043a\u0430\u043a \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u043c\u0438 <strong>iptables<\/strong>.<\/p>\n<p><u>\u0428\u0430\u0433 \u0447\u0435\u0442\u0432\u0435\u0440\u0442\u044b\u0439<\/u> \u2018geoip\u2019<\/p>\n<p>\u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u0440\u0435\u043a\u0440\u0430\u0441\u043d\u043e \u0437\u043d\u0430\u043a\u043e\u043c\u044b \u0441\u043e \u0441\u0432\u043e\u0435\u0439 \u0430\u0443\u0434\u0438\u0442\u043e\u0440\u0438\u0435\u0439 \u0438 \u0437\u043d\u0430\u0435\u0442\u0435 \u0438\u0437 \u043a\u0430\u043a\u0438\u0445 \u0441\u0442\u0440\u0430\u043d \u0432\u044b \u0436\u0435\u043b\u0430\u0435\u0442\u0435 \u0432\u0438\u0434\u0435\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439, \u0442\u043e \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u044d\u0442\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u043e\u0442\u043b\u0438\u0447\u043d\u043e \u043f\u043e\u0434\u043e\u0439\u0434\u0435\u0442 \u043c\u043e\u0434\u0443\u043b\u044c, \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u044c \u043e\u0442\u0441\u0435\u0438\u0432\u0430\u043d\u0438\u0435 \u0438 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0443 \u043d\u0435\u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u043f\u043e \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u0438 <strong>IP<\/strong> \u0430\u0434\u0440\u0435\u0441\u0430.<\/p>\n<p>\u0415\u0441\u043b\u0438 \u0440\u0430\u043d\u0435\u0435 \u0443 \u043d\u0430\u0441 \u0443\u0436\u0435 \u0431\u044b\u043b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d <strong>Nginx<\/strong>, \u0442\u043e \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 <strong>geiop<\/strong> \u043d\u0430\u043c \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043c\u043e\u0434\u0443\u043b\u044c \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432 \u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0435\u0433\u043e.<\/p>\n<p> 1. \u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a.<\/p>\n<pre><code class=\"yaml\">add-apt-repository ppa:maxmind\/ppa apt update apt install libmaxminddb0 libmaxminddb-dev mmdb-bin<\/code><\/pre>\n<p> 2. \u041a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c \u043c\u043e\u0434\u0443\u043b\u044c \u043f\u043e\u0434 \u043d\u0443\u0436\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e <strong>Nginx<\/strong>, \u0443 \u043d\u0430\u0441 \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 1.18.0<\/p>\n<pre><code class=\"yaml\">cd \/root wget http:\/\/nginx.org\/download\/nginx-1.18.0.tar.gz git clone https:\/\/github.com\/leev\/ngx_http_geoip2_module.git tar zxvf nginx-1.18.0.tar.gz cd nginx-1.18.0 .\/configure --with-compat --add-dynamic-module=..\/ngx_http_geoip2_module make modules<\/code><\/pre>\n<p> 3.  \u041a\u043b\u0430\u0434\u0451\u043c \u0435\u0433\u043e \u0432 \u043d\u0430\u0448 \u043a\u0430\u0442\u0430\u043b\u043e\u0433<\/p>\n<pre><code class=\"yaml\">mkdir -p \/etc\/nginx\/modules cp -vi objs\/ngx_http_geoip2_module.so \/etc\/nginx\/modules\/<\/code><\/pre>\n<p> 4. \u0421\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u043c \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u0411\u0414 \u0441 <strong>IP<\/strong> \u0430\u0434\u0440\u0435\u0441\u0430\u043c\u0438:<\/p>\n<pre><code class=\"yaml\">mkdir \/etc\/nginx\/geoip ; cd \/etc\/nginx\/geoip ; wget https:\/\/git.io\/GeoLite2-Country.mmdb<\/code><\/pre>\n<p> 5. \u041f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u0443\u0435\u043c <strong>nginx.conf<\/strong>:<\/p>\n<pre><code class=\"yaml\">nano \/etc\/nginx\/nginx.conf<\/code><\/pre>\n<p>\u0418 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0432 \u0431\u043b\u043e\u043a <strong>http<\/strong> \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u043c\u0430\u043f\u0443. \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f:<\/p>\n<pre><code class=\"nginx\">load_module modules\/ngx_http_geoip2_module.so;  ...  http {           geoip2 \/etc\/nginx\/geoip\/GeoLite2-Country.mmdb {                                                                                                                                                                                                                                    $geoip2_data_country_iso_code country iso_code;                                                                                                                                                                                                                              }          map $geoip2_data_country_iso_code $is_deny {                                                                                                                                                                                                                                                                                                                                                                                                                                                                           default no; # \u0417\u0430\u043f\u0440\u0435\u0449\u0430\u0435\u043c \u0432\u0441\u0435\u043c            RU yes; # \u0420\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u043c \u0420\u043e\u0441\u0441\u0438\u0438     UK yes; # \u0420\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u043c \u0412\u0435\u043b\u0438\u043a\u043e\u0431\u0440\u0438\u0442\u0430\u043d\u0438\u0438        }   }<\/code><\/pre>\n<p> 6. \u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u043a\u043e\u0434 <strong>location<\/strong> \u0432 \u043d\u0430\u0448 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0445\u043e\u0441\u0442, \u043a\u0430\u043a \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u043b\u043e\u0441\u044c \u0440\u0430\u043d\u0435\u0435. \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f:<\/p>\n<pre><code class=\"nginx\">limit_req_zone $binary_remote_addr zone=shield:10m rate=10r\/s  server {        listen 80 ;         root \/var\/www\/html;         server_name www.zashitimsa_ot_ddos.ru;                if ( $http_user_agent ~* (bingbot|AhrefsBot|Ruby|PetalBot|SemrushBot|MJ12bot) ){                return 403;        }        if ($allowed_country = no) {           return 403;       }         location \/ {               limit_req zone=shield;                try_files $uri $uri\/ =404;        }  }<\/code><\/pre>\n<p> 7. \u041f\u043e\u0441\u044b\u043b\u0430\u0435\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u043d\u0430\u0448\u0435\u043c\u0443 \u043b\u044e\u0431\u0438\u043c\u043e\u043c\u0443 <strong>Nginx <\/strong>\u043d\u0430 \u043f\u0435\u0440\u0435\u0447\u0438\u0442\u043a\u0443 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439 \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442.<\/p>\n<pre><code class=\"yaml\">nginx -s reload<\/code><\/pre>\n<p>\u0415\u0441\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0437\u043d\u0430\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043f\u0440\u043e \u0441\u0431\u043e\u0440\u043a\u0443 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043c\u043e\u0434\u0443\u043b\u0435\u0439, \u0442\u043e \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441\u043e <a href=\"https:\/\/habr.com\/ru\/company\/nixys\/blog\/473578\/\">\u0441\u0442\u0430\u0442\u044c\u0451\u0439<\/a> \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0439 \u0440\u0430\u043d\u0435\u0435 \u043d\u0430\u0448\u0438\u043c <strong>DevOps Engineer<\/strong>.<\/p>\n<hr\/>\n<h3>\u0418\u0442\u043e\u0433: \u201c\u0423 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u043e\u043a\u043e\u043b\u0435\u043d\u0438\u044f \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u0441\u0432\u043e\u044f \u0432\u043e\u0439\u043d\u0430.\u201d &#8212; \u041c\u0430\u043e \u0426\u0437\u044d\u0434\u0443\u043d<\/h3>\n<p>\u041d\u0435\u043b\u044c\u0437\u044f \u043d\u0435 \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u0434\u0430\u043d\u043d\u0430\u044f \u0441\u0442\u0430\u0442\u044c\u044f \u043f\u043e\u0432\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u043e \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u0445 \u0437\u0430\u0449\u0438\u0442\u044b \u043e\u0442 <strong>dos<\/strong>, \u043d\u043e \u043e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0432\u043e\u043f\u0440\u043e\u0441, \u043a\u043e\u0442\u043e\u0440\u044b\u0439, \u044f \u0443\u0432\u0435\u0440\u0435\u043d, \u0437\u0430 \u0432\u0440\u0435\u043c\u044f \u0447\u0442\u0435\u043d\u0438\u044f \u0443\u0436\u0435 \u0431\u044b\u043b \u0437\u0430\u0434\u0430\u043d \u043d\u0435 \u043e\u0434\u043d\u043e\u043a\u0440\u0430\u0442\u043d\u043e: \u201c\u041a\u0430\u043a \u0437\u0430\u0449\u0438\u0442\u0438\u0442\u044c\u0441\u044f \u043e\u0442 <strong>ddos<\/strong>?\u201d. \u0412\u0435\u0434\u044c \u0432\u044b\u0441\u043e\u043a\u043e\u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u0430\u044f \u0430\u0442\u0430\u043a\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0430\u044f \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e <strong>IP<\/strong>-\u0430\u0434\u0440\u0435\u0441\u043e\u0432 \u043c\u043e\u0436\u0435\u0442 \u0441 \u043b\u0451\u0433\u043a\u043e\u0441\u0442\u044c\u044e \u043e\u0431\u043e\u0439\u0442\u0438 \u0432\u0441\u0435 \u0443\u0440\u043e\u0432\u043d\u0438 \u0437\u0430\u0449\u0438\u0442\u044b, \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u043d\u0430\u043c\u0438 \u0440\u0430\u043d\u0435\u0435. \u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043b\u0443\u0447\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u043f\u043e\u043c\u043e\u0433\u0430\u044e\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u043f\u043e \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044e \u0443\u0441\u043b\u0443\u0433 \u0437\u0430\u0449\u0438\u0442\u044b \u0438 \u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e\u0433\u043e \u0441\u043d\u0430: <em>Cloudflare, Incapsula, Servicepipe,\u00a0 DDoS-Guard<\/em> \u0438 <em>etc<\/em>\u2026<\/p>\n<p>\u0418 \u0445\u043e\u0442\u044f \u0433\u043e\u0442\u043e\u0432\u044b\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0431\u0435\u0441\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u043e\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0436\u0435 \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e, \u043d\u0430 \u0440\u0430\u043d\u043d\u0435\u043c \u044d\u0442\u0430\u043f\u0435 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0433\u0440\u0430\u043c\u043e\u0442\u043d\u0443\u044e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u0430 \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430. \u0412\u0435\u0434\u044c \u044d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0441 \u0441\u0430\u043c\u043e\u0433\u043e \u043d\u0430\u0447\u0430\u043b\u0430 \u0434\u0430\u0442\u044c \u043e\u0442\u043f\u043e\u0440 \u0431\u043e\u0442\u0430\u043c \u0438 \u043d\u0435\u0434\u043e\u0431\u0440\u043e\u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u043a\u043e\u043d\u043a\u0443\u0440\u0435\u043d\u0442\u0430\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0445\u043e\u0442\u044f\u0442 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0432 \u0440\u0430\u0431\u043e\u0442\u0435 \u0432\u0430\u0448\u0435\u0439 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b.<\/p>\n<p>\u0411\u0435\u0440\u0435\u0433\u0438\u0442\u0435 \u0441\u0432\u043e\u0438 \u043f\u043b\u043e\u0449\u0430\u0434\u043a\u0438 \u0438 \u043d\u0435 \u0434\u043e\u043f\u0443\u0441\u043a\u0430\u0439\u0442\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u044f!\u00a0<\/p>\n<p>P.S.: \u041a\u0441\u0442\u0430\u0442\u0438, DevOps-\u0438\u043d\u0436\u0435\u043d\u0435\u0440\u0430\u043c \u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u043c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430\u043c \u0431\u0443\u0434\u0435\u0442 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e \u0437\u0430\u0433\u043b\u044f\u043d\u0443\u0442\u044c \u0432 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c-\u043a\u0430\u043d\u0430\u043b <a href=\"https:\/\/t.me\/devops_fm\"><u>DevOps FM<\/u><\/a>, \u043f\u0440\u0438\u0441\u043e\u0435\u0434\u0438\u043d\u044f\u0439\u0442\u0435\u0441\u044c) <\/p>\n<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"v-portal\" style=\"display:none;\"><\/div>\n<\/div>\n<p> <!----> <!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/company\/nixys\/blog\/665126\/\"> https:\/\/habr.com\/ru\/company\/nixys\/blog\/665126\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<h3>\u041f\u0440\u0435\u0434\u0438\u0441\u043b\u043e\u0432\u0438\u0435<\/h3>\n<p>\u041f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e \u0442\u0435\u0431\u044f, \u0434\u043e\u0440\u043e\u0433\u043e\u0439 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044c. \u0421\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0435\u0441\u043b\u0438 \u0442\u044b \u044d\u0442\u043e \u0447\u0438\u0442\u0430\u0435\u0448\u044c, \u0442\u043e \u0443\u0436\u0435 \u043e\u0447\u0435\u043d\u044c \u0443\u0441\u0442\u0430\u043b \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u043a\u0443\u0447\u0443 \u0430\u043b\u0435\u0440\u0442\u043e\u0432 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u0442\u0432\u043e\u044f \u043f\u043b\u043e\u0449\u0430\u0434\u043a\u0430 \u0437\u0430\u0433\u0438\u0431\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0445 \u043d\u0430\u0431\u0435\u0433\u043e\u0432 <s>\u043f\u0435\u0447\u0435\u043d\u0435\u0433\u043e\u0432<\/s> \u0431\u043e\u0442\u043e\u0432 \u0438\u043b\u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u043d\u0435\u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u043e\u0441\u0435\u0442\u0438\u0442\u0435\u043b\u0435\u0439 \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430. \u042f \u043d\u0430\u0434\u0435\u044e\u0441\u044c, \u0447\u0442\u043e \u044d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0442\u0435\u0431\u0435 \u0441\u043f\u0430\u0442\u044c \u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e \u0438 \u043e\u0433\u0440\u0430\u0434\u0438\u0442 \u0442\u0435\u0431\u044f \u043e\u0442 \u043d\u0435\u0434\u0443\u0433\u043e\u0432, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0432\u043d\u0435\u0441\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u044f\u0441\u043d\u043e\u0441\u0442\u0438 \u0432 \u0442\u0432\u043e\u0435 \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u0442\u0435\u043e\u0440\u0438\u0438 \u0438 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u0437\u0430\u0449\u0438\u0442\u044b \u043e\u0442 <strong>dos<\/strong> \u0438 <strong>ddos<\/strong>. \u041f\u0440\u0438\u044f\u0442\u043d\u043e\u0433\u043e \u0447\u0442\u0435\u043d\u0438\u044f!<\/p>\n<hr\/>\n<h3>\u0413\u043b\u0430\u0432\u0430 1: \u201c\u0417\u043d\u0430\u0439 \u0441\u0432\u043e\u0435\u0433\u043e \u0432\u0440\u0430\u0433\u0430.\u201d &#8212; \u0421\u0443\u043d\u044c \u0426\u0437\u044b<\/h3>\n<h4>\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 Dos \u0438 Ddos, \u0438 \u0432 \u0447\u0451\u043c \u0438\u0445 \u043e\u0442\u043b\u0438\u0447\u0438\u044f?<\/h4>\n<p><strong>Dos,<\/strong> \u0438\u043b\u0438 \u043f\u043e-\u0434\u0440\u0443\u0433\u043e\u043c\u0443 <strong>Denial of Service<\/strong> &#8212; \u00ab\u043e\u0442\u043a\u0430\u0437 \u0432 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0438\u00bb. \u042d\u0442\u043e \u0430\u0442\u0430\u043a\u0430 \u0441\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u043e\u0434\u0438\u043d\u043e\u0447\u043d\u043e\u0433\u043e <strong>IP<\/strong>-\u0430\u0434\u0440\u0435\u0441\u0430, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u0430\u044f \u0441 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u043e\u0439 \u043d\u0435\u043b\u0435\u0433\u0438\u0442\u0438\u043c\u043d\u043e\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u044f\u0449\u0430\u044f \u043a \u043d\u0435\u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u0447\u0442\u043e, \u0432 \u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u043f\u0440\u043e\u0441\u0442\u043e\u044e \u043f\u043b\u043e\u0449\u0430\u0434\u043a\u0438 \u0438\u043b\u0438 \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u0438 \u043f\u043e\u0442\u0435\u0440\u0435 \u0444\u0438\u043d\u0430\u043d\u0441\u043e\u0432\u043e\u0439 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0435\u0439.<\/p>\n<p><strong>Ddos,<\/strong> \u0438\u043b\u0438 <strong>Distributed Denial of Service<\/strong> &#8212; \u00ab\u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u043e\u0442\u043a\u0430\u0437 \u0432 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0438\u00bb.\u00a0 \u041e\u0442\u043b\u0438\u0447\u0438\u0435 \u0434\u0430\u043d\u043d\u043e\u0439 \u0430\u0442\u0430\u043a\u0438 \u043e\u0442 \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0439 \u0432\u044b\u0448\u0435 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0431\u0443\u0434\u0435\u0442 \u0438\u0434\u0442\u0438 \u0441 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 <strong>IP<\/strong>-\u0430\u0434\u0440\u0435\u0441\u043e\u0432. \u042d\u0442\u043e\u0442 \u0430\u0441\u043f\u0435\u043a\u0442 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0437\u0430\u0449\u0438\u0442\u044b \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<h4>\u041a\u0430\u043a \u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0442\u044c \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u0435 \u0430\u0442\u0430\u043a\u0438 \u043d\u0430 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443?<\/h4>\n<p>\u0412 \u0441\u043b\u0443\u0447\u0430\u0435, \u0435\u0441\u043b\u0438 \u043d\u0430 \u0432\u0430\u0448\u0435\u0439 \u043c\u0430\u0448\u0438\u043d\u0435, \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0438\u043b\u0438 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439, \u0440\u0435\u0437\u043a\u043e \u043f\u043e\u0432\u044b\u0441\u0438\u043b\u0430\u0441\u044c \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0430 <strong>CPU<\/strong> \u0438 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u043b\u043e\u0441\u044c \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 <strong>RAM<\/strong>, \u0442\u043e, \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0432\u044b \u0441\u0442\u0430\u043b\u0438 \u0436\u0435\u0440\u0442\u0432\u043e\u0439 \u043a\u0440\u0438\u0432\u043e \u0437\u0430\u043b\u0438\u0442\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0438\u043b\u0438 \u0436\u0435 <strong>ddos<\/strong>\/<strong>dos<\/strong>-\u0430\u0442\u0430\u043a\u0438. \u0420\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0442\u044c \u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u0441 \u043e\u043a\u043e\u043d\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u0432\u044b\u0431\u043e\u0440\u043e\u043c \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 \u043e\u0442\u0432\u0435\u0442\u0430 \u043d\u0430\u043c \u043f\u043e\u043c\u043e\u0433\u0443\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0448\u0430\u0433\u0438.<\/p>\n<p>\u0412\u043e-\u043f\u0435\u0440\u0432\u044b\u0445, \u043a\u0430\u043a \u0443\u0436\u0435 \u0431\u044b\u043b\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u0432\u044b\u0448\u0435, &#8212; \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433, \u0438 \u0432\u044b \u0432\u0438\u0434\u0438\u0442\u0435 \u0440\u0435\u0437\u043a\u0438\u0435 \u0441\u043a\u0430\u0447\u043a\u0438 \u043d\u0430 \u0433\u0440\u0430\u0444\u0438\u043a\u0430\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u044f, \u043a \u043f\u0440\u0438\u043c\u0435\u0440\u0443:<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0422\u0430\u043a\u0436\u0435 \u0432\u044b \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u0435 \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u043a\u043e\u043d\u043d\u0435\u043a\u0442\u043e\u0432 \u043d\u0430 \u0432\u0430\u0448\u0435\u043c \u0441\u0435\u0440\u0432\u0438\u0441\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0435 \u0434\u0430\u043d\u043d\u044b\u0445. \u0414\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u043c \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439 LEMP-\u0441\u0442\u0435\u043a Nginx + Apache + Mysql,\u00a0 \u0430 \u0437\u043d\u0430\u0447\u0438\u0442 \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u043c\u044b \u0444\u0438\u043a\u0441\u0438\u0440\u0443\u0435\u043c \u0440\u0435\u0437\u043a\u0438\u0439 \u0441\u043a\u0430\u0447\u043e\u043a \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439:<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0412\u043e-\u0432\u0442\u043e\u0440\u044b\u0445 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u0430\u043d\u0430\u043b\u0438\u0437 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0437\u0430 \u0432\u0440\u0435\u043c\u044f \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b. \u0412 \u044d\u0442\u043e\u043c, \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u043c\u043e\u0447\u044c \u043e\u0434\u043d\u043e\u0441\u0442\u0440\u043e\u0447\u043d\u044b\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0438\u043c\u0435\u0442\u044c \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u043c\u0443 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0443 \u043f\u043e\u0434 \u0440\u0443\u043a\u043e\u0439, \u0434\u0430\u043d\u043d\u044b\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u044b \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e, \u0438\u0437\u0443\u0447\u0438\u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0447\u0443\u0442\u044c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u0438\u043b\u0438 \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0430\u0448\u0438\u043c \u0433\u043e\u0442\u043e\u0432\u044b\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c. \u041d\u0438\u0436\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0434\u043b\u044f \u043f\u0430\u0440\u0441\u0438\u043d\u0433\u0430 \u043b\u043e\u0433\u043e\u0432 \u0437\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 10000 \u0438 \u0432\u044b\u0432\u043e\u0434 \u0432 top <strong>IP <\/strong>\u0430\u0434\u0440\u0435\u0441\u043e\u0432, \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u044e\u0449\u0438\u0445\u0441\u044f \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0447\u0430\u0441\u0442\u043e: <\/p>\n<pre><code class=\"bash\">tail -10000 access.log | awk '{print $1}'| sort -nr | uniq -c | sort -nr | head<\/code><\/pre>\n<p>\u0422\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u0443\u0437\u043d\u0430\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0445 <strong>IP<\/strong>, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u044c \u0441 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043c\u0438 \u0437\u0430 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0435 \u0441\u0443\u0442\u043a\u0438 \u0438 \u0443\u0437\u043d\u0430\u0442\u044c \u0431\u044b\u043b\u043e \u043b\u0438 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u0435 \u0442\u0440\u0430\u0444\u0438\u043a\u0430:<\/p>\n<pre><code class=\"bash\">cat access.log | awk '{print $1}'| sort -nr | uniq -c | wc -l<\/code><\/pre>\n<p>\u0421\u043b\u0435\u0434\u043e\u043c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u043e\u0442\u043b\u0438\u0447\u043d\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u0434\u043b\u044f \u043f\u0430\u0440\u0441\u0438\u043d\u0433\u0430 <strong>IP<\/strong>-\u0430\u0434\u0440\u0435\u0441\u043e\u0432 \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e \u043f\u043e \u0434\u0430\u0442\u0435 \u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u043c\u0443 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043a\u0443:<\/p>\n<pre><code class=\"bash\">head access.log | grep 26\/Apr\/2021:1[1-2]: | awk '{print $1}'| sort -nr | uniq -c | sort -nr<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435 \u043d\u0435\u043b\u0435\u0433\u0438\u0442\u0438\u043c\u043d\u043e\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430:<\/p>\n<pre><code class=\"yaml\">head -20 access.log | grep \"25\/Jul\/2022:00:\" | awk '{print $1}' | sort | uniq -c | sort -nr    4150 45.155.53.76    3550 84.38.189.56    3184 5.45.207.189    233 5.255.253.188    233 45.10.217.121    233 92.119.203.156    229 5.45.207.112    223 84.38.189.54    200 109.194.11.25    147 5.255.253.160<\/code><\/pre>\n<p>\u0412 \u044d\u0442\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043f\u0435\u0440\u0432\u043e\u0435, \u0447\u0442\u043e \u0431\u0440\u043e\u0441\u0430\u0435\u0442\u0441\u044f \u0432 \u0433\u043b\u0430\u0437\u0430 &#8212; \u044d\u0442\u043e \u043e\u043a\u043e\u043b\u043e 4000 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0437\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0447\u0430\u0441 \u0441 00:00. \u0418\u0437 \u044d\u0442\u043e\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0432\u044b\u0432\u043e\u0434, \u0447\u0442\u043e \u044d\u0442\u043e \u044f\u0432\u043d\u043e \u043d\u0435 \u043e\u0431\u044b\u0447\u043d\u044b\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c, \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043d\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u0437\u0430\u0445\u043e\u0434\u0438\u0442\u044c \u043d\u0430 \u0441\u0430\u0439\u0442. \u0422\u0430\u043a\u0436\u0435 \u043e\u0434\u043d\u0438\u043c \u0438\u0437 \u043e\u0442\u043b\u0438\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u0438\u0437\u043d\u0430\u043a\u043e\u0432 <strong>ddos<\/strong>-\u0430\u0442\u0430\u043a\u0438 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0437\u0432\u0430\u0442\u044c \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 <strong>user agent<\/strong> \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u0435, \u0447\u0442\u043e \u043d\u0430\u0432\u043e\u0434\u0438\u0442 \u043d\u0430 \u043c\u044b\u0441\u043b\u044c \u043e \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u043c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430.<\/p>\n<h4>\u0427\u0442\u043e \u0436\u0435 \u0442\u0430\u043a\u043e\u0435 user agent?<\/h4>\n<p><strong>User agent<\/strong> \u2014 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f; \u043e\u0431\u044b\u0447\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u044e\u0449\u0438\u0445 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0432\u0435\u0431-\u0441\u0430\u0439\u0442\u0430\u043c \u2014 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u043e\u0432, \u043f\u043e\u0438\u0441\u043a\u043e\u0432\u044b\u0445 \u0440\u043e\u0431\u043e\u0442\u043e\u0432 \u0438 \u00ab\u043f\u0430\u0443\u043a\u043e\u0432\u00bb, \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 \u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u0441\u043e \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u043e\u043c \u043a \u0432\u0435\u0431-\u0440\u0435\u0441\u0443\u0440\u0441\u0430\u043c.<\/p>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:<\/p>\n<pre><code class=\"yaml\">tail -10 access.log | grep 185.250.45.31 185.250.45.31 [Via:NGENIX; X-Proxy-Name:-] (RU) \"www.testsite.ru\" [24\/Jul\/2021:21:27:24 +0300]    200     \"GET \/ajax\/rq_list.php?product_id=10692404 HTTP\/1.1\"    0.049 (0.048)   Upstream:10.250.0.5:443 1963    \"https:\/\/www.testsite.ru\/ajax\/rq_list.php?product_id=10692404\" \"Mozilla\/5.5 (Windows; I; Windows NT 6.1; en-us) Chrome\/36.6.59.965\"    \"blocked=0\"     \"whitelistCOUNTRY=1\"    \"whitelistIP=0\" \"whitelistORG=0\"  185.250.45.31 [Via:NGENIX; X-Proxy-Name:-] (RU) \"www.testsite.ru\" [24\/Jul\/2021:21:27:24 +0300]    200     \"GET \/ajax\/rq_list.php?product_id=10692404 HTTP\/1.1\"    0.056 (0.056)   Upstream:10.250.0.5:443 1963    \"https:\/\/www.testsite.ru\/ajax\/rq_list.php?product_id=10692404\" \"Mozilla\/5.3 (compatible; Windows NT 6.6; WOW64; en-us) Chrome\/35.1.309.843 Safari\/551.56\"      \"blocked=0\"     \"whitelistCOUNTRY=1\"    \"whitelistIP=0\" \"whitelistORG=0\"  185.250.45.31 [Via:NGENIX; X-Proxy-Name:-] (RU) \"www.testsite.ru\" [24\/Jul\/2021:21:27:27 +0300]    200     \"GET \/ajax\/rq_list.php?product_id=10692404 HTTP\/1.1\"    0.063 (0.064)   Upstream:10.250.0.5:443 1963    \"https:\/\/www.testsite.ru\/ajax\/rq_list.php?product_id=10692404\" \"Mozilla\/5.9 (Linux (Wine); Windows NT 7.2; ru-ru) like Gecko Chrome\/34.8.208.96 Safari\/639.27\" \"blocked=0\"     \"whitelistCOUNTRY=1\"    \"whitelistIP=0\" \"whitelistORG=0\"  185.250.45.31 [Via:NGENIX; X-Proxy-Name:-] (RU) \"www.testsite.ru\" [24\/Jul\/2021:21:27:27 +0300]    200     \"GET \/ajax\/rq_list.php?product_id=10692404 HTTP\/1.1\"    0.071 (0.072)   Upstream:10.250.0.5:443 1963    \"https:\/\/www.testsite.ru\/ajax\/rq_list.php?product_id=10692404\" \"Mozilla\/5.0 (compatible; U; Windows NT 6.3; en-us) Chrome\/35.1.226.692\"        \"blocked=0\"     \"whitelistCOUNTRY=1\"    \"whitelistIP=0\" \"whitelistORG=0\"  185.250.45.31 [Via:NGENIX; X-Proxy-Name:-] (RU) \"www.testsite.ru\" [24\/Jul\/2021:21:27:28 +0300]    200     \"GET \/ajax\/rq_list.php?product_id=10692404 HTTP\/1.1\"    0.073 (0.072)   Upstream:10.250.0.5:443 1963    \"https:\/\/www.testsite.ru\/ajax\/rq_list.php?product_id=10692404\" \"Mozilla\/5.0 (Windows; Windows NT 6.9; x64; en-us) KHTML\/4.3.5 (like Gecko) Chrome\/39.3.54.483\" \"blocked=0\"     \"whitelistCOUNTRY=1\"    \"whitelistIP=0\" \"whitelistORG=0\" <\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u043f\u0440\u0435\u043a\u0440\u0430\u0441\u043d\u043e \u0432\u0438\u0434\u043d\u043e, \u043a\u0430\u043a \u043d\u0430 \u043f\u0440\u043e\u0442\u044f\u0436\u0435\u043d\u0438\u0438 1 \u043c\u0438\u043d\u0443\u0442\u044b <strong>useragent<\/strong> \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u0435 \u043c\u0435\u043d\u044f\u0435\u0442 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u043d\u0430 <strong>Chrome<\/strong>, <strong>Mozilla<\/strong>, <strong>Safari<\/strong>. \u041a\u0430\u043a \u0438 \u0441\u0430\u043c\u0443 \u041e\u0421, \u0441 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 <strong>Windows<\/strong>, <strong>Linux<\/strong>.<\/p>\n<p>\u0418\u0442\u0430\u043a, \u043a\u043e\u0433\u0434\u0430 \u043c\u044b \u0447\u0443\u0442\u044c-\u0447\u0443\u0442\u044c \u043f\u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u043b\u0438\u0441\u044c \u0441 \u0442\u0435\u043e\u0440\u0438\u0435\u0439, \u043d\u0430\u0441\u0442\u0430\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438. \u0412 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438, \u043c\u044b \u043f\u043e\u0434\u043d\u0438\u043c\u0435\u043c \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439 <strong>Nginx<\/strong> \u043d\u0430 OC <strong>Debian<\/strong> 10 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430 \u0438\u00a0<strong>Apache<\/strong> \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 <strong>backend<\/strong> \u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043c \u0441\u0442\u0440\u0435\u0441\u0441 \u0442\u0435\u0441\u0442 \u043d\u0430\u0448\u0435\u0439 \u043f\u043b\u043e\u0449\u0430\u0434\u043a\u0438.<\/p>\n<h3>\u0413\u043b\u0430\u0432\u0430 2: \u201c\u041b\u0443\u0447\u0448\u0430\u044f \u0437\u0430\u0449\u0438\u0442\u0430 &#8212; \u043d\u0430\u043f\u0430\u0434\u0435\u043d\u0438\u0435\u201d &#8212; \u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440 \u041c\u0430\u043a\u0435\u0434\u043e\u043d\u0441\u043a\u0438\u0439.<\/h3>\n<p>\u041d\u0430\u0447\u043d\u0451\u043c\u2026 \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u043c \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 <strong>Nginx<\/strong> \u0438\u0437 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0435\u0432 \u0434\u043b\u044f \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b.<\/p>\n<p> 1.1. \u0421\u0442\u0430\u0432\u0438\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438:<\/p>\n<pre><code class=\"yaml\">apt install curl gnupg2 ca-certificates lsb-release debian-archive-keyring<\/code><\/pre>\n<p> 1.2. \u0418\u043c\u043f\u043e\u0440\u0442\u0438\u0440\u0443\u0435\u043c \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u043f\u043e\u0434\u043f\u0438\u0441\u0438:<\/p>\n<pre><code class=\"yaml\">curl https:\/\/nginx.org\/keys\/nginx_signing.key | gpg --dearmor \\     | tee \/usr\/share\/keyrings\/nginx-archive-keyring.gpg >\/dev\/null<\/code><\/pre>\n<p> 1.3. \u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u0435\u0433\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c:<\/p>\n<pre><code class=\"yaml\">gpg --dry-run --quiet --import --import-options import-show \/usr\/share\/keyrings\/nginx-archive-keyring.gpg<\/code><\/pre>\n<p> 1.4. \u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438:<\/p>\n<pre><code class=\"yaml\">echo \"deb [signed-by=\/usr\/share\/keyrings\/nginx-archive-keyring.gpg] \\ http:\/\/nginx.org\/packages\/debian `lsb_release -cs` nginx\" \\     | tee \/etc\/apt\/sources.list.d\/nginx.list<\/code><\/pre>\n<p> 1.5. \u041d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442 \u043d\u0430\u0448\u0438\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u043d\u0430\u0434 \u043f\u0430\u043a\u0435\u0442\u0430\u043c\u0438 \u0438\u0437 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u0430:<\/p>\n<pre><code class=\"yaml\">echo -e \"Package: *\\nPin: origin nginx.org\\nPin: release o=nginx\\nPin-Priority: 900\\n\" \\     | tee \/etc\/apt\/preferences.d\/99nginx<\/code><\/pre>\n<p> 1.6. \u041f\u0435\u0440\u0435\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u043c \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 \u0438 \u0441\u0442\u0430\u0432\u0438\u043c \u043d\u0430\u0448 <strong>Nginx<\/strong><\/p>\n<pre><code class=\"yaml\">apt update apt install -y nginx<\/code><\/pre>\n<p> 2. \u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c, \u0447\u0442\u043e <strong>Nginx<\/strong> \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e \u0438 \u0443\u0436\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0441\u044f.<\/p>\n<pre><code class=\"yaml\">systemctl status nginx \u25cf nginx.service - A high performance web server and a reverse proxy server   Loaded: loaded (\/lib\/systemd\/system\/nginx.service; enabled; vendor preset: enabled)   Active: active (running) since Mon 2022-01-31 18:19:12 +07; 7s ago     Docs: man:nginx(8) Main PID: 9381 (nginx)    Tasks: 5 (limit: 4915)   Memory: 5.8M   CGroup: \/system.slice\/nginx.service           \u251c\u25009381 nginx: master process \/usr\/sbin\/nginx -g daemon on; master_process on;           \u251c\u25009382 nginx: worker process           \u251c\u25009383 nginx: worker process           \u251c\u25009384 nginx: worker process           \u2514\u25009385 nginx: worker process  \u044f\u043d\u0432 31 18:19:12 user systemd[1]: Starting A high performance web server and a reverse proxy server... \u044f\u043d\u0432 31 18:19:12 user systemd[1]: Started A high performance web server and a reverse proxy server.<\/code><\/pre>\n<p> 3. \u0422\u0435\u043f\u0435\u0440\u044c \u043d\u0430\u043f\u0438\u0448\u0435\u043c \u043f\u0440\u043e\u0441\u0442\u0443\u044e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u0434\u043b\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0445\u043e\u0441\u0442\u0430 \u0438 \u043f\u0440\u043e\u0432\u0435\u0434\u0451\u043c \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435.<\/p>\n<pre><code class=\"yaml\">nano \/etc\/nginx\/conf.d\/default<\/code><\/pre>\n<p>\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f:<\/p>\n<pre><code class=\"nginx\">server {        listen 80 ;         root \/var\/www\/html;         server_name www.zashitimsa_ot_ddos.ru;         location \/ {                try_files $uri $uri\/ =404;        }  }<\/code><\/pre>\n<p> 4. \u041f\u0440\u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c \u043a \u0441\u0435\u0431\u0435 \u0432 <strong>hosts<\/strong>, \u0447\u0442\u043e\u0431\u044b \u0438\u043c\u0435\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u043d\u0430\u0448 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u0441\u0430\u0439\u0442.<\/p>\n<pre><code class=\"yaml\">nano \/etc\/hosts<\/code><\/pre>\n<p>\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f:<\/p>\n<pre><code class=\"yaml\">$\u043d\u0430\u0448_ip_\u0430\u0434\u0440\u0435\u0441 www.zashitimsa_ot_ddos.ru<\/code><\/pre>\n<p> 5. \u0414\u0435\u043b\u0430\u0435\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442.<\/p>\n<details class=\"spoiler\">\n<summary>p.s. \u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430<\/summary>\n<div class=\"spoiler__content\">\n<p>\u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 \u0431\u044b\u043b\u0430 \u0437\u0430\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d\u0430 \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u0438 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0430 \u0432 \u0444\u0430\u0439\u043b\u044b \u043f\u043b\u043e\u0449\u0430\u0434\u043a\u0438.<\/p>\n<\/div>\n<\/details>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p> 6. \u0422\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c, \u043a\u0430\u043a \u043d\u0430\u0448 <strong>Nginx <\/strong>\u0432\u044b\u0434\u0435\u0440\u0436\u0438\u0442 \u0441\u0442\u0440\u0435\u0441\u0441-\u0442\u0435\u0441\u0442. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043b\u044e\u0431\u0443\u044e \u0442\u0435\u0441\u0442\u043e\u0432\u0443\u044e \u0443\u0442\u0438\u043b\u0438\u0442\u0443 \u0434\u043b\u044f <strong>Dos<\/strong>. \u042f \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e <strong>GoldenEye<\/strong>. \u0421\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a <a href=\"https:\/\/github.com\/jseidl\/GoldenEye\">\u043f\u0440\u0438\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f<\/a>.<\/p>\n<p>\u0415\u0451 \u0437\u0430\u043f\u0443\u0441\u043a \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u043a\u0430\u043a \u0441\u043e \u0441\u0432\u043e\u0435\u0439 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b, \u0442\u0430\u043a \u0438 \u0441 \u0434\u0440\u0443\u0433\u043e\u0439\u00a0 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b \u0434\u043b\u044f \u043d\u0430\u0433\u043b\u044f\u0434\u043d\u043e\u0441\u0442\u0438.<\/p>\n<p>\u041f\u0435\u0440\u0435\u043c\u0435\u0449\u0430\u0435\u043c\u0441\u044f \u0432 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u043a\u0430\u0442\u0430\u043b\u043e\u0433:<\/p>\n<pre><code class=\"yaml\">cd \/opt<\/code><\/pre>\n<p>\u0418 \u043a\u043b\u043e\u043d\u0438\u0440\u0443\u0435\u043c \u0441\u0435\u0431\u0435 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439:<\/p>\n<pre><code class=\"yaml\">git clone https:\/\/github.com\/jseidl\/GoldenEye.git cd .\/GoldenEye<\/code><\/pre>\n<p>\u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043d\u0435\u0442\u0443 <strong>git <\/strong>\u0438 <strong>python<\/strong>, \u0442\u043e \u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u0442\u0430\u043a\u0436\u0435 \u043b\u0435\u0433\u043a\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0441\u0435\u0431\u0435 \u043d\u0430 \u043c\u0430\u0448\u0438\u043d\u0443 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u043c\u0438:<\/p>\n<pre><code class=\"yaml\">apt install git python3.9<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0434\u0435\u043b\u0430\u0435\u043c \u0442\u0435\u0441\u0442\u043e\u0432\u044b\u0439 \u0437\u0430\u043f\u0443\u0441\u043a \u0438 \u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u043b\u043e\u0433\u0438 \u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<\/p>\n<pre><code class=\"yaml\">python3 goldeneye.py http:\/\/www.zashitimsa_ot_ddos.ru\/test.png -w 50 -s 1500 -m random -d GoldenEye v2.1 by Jan Seidl &lt;jseidl@wroot.org>  Hitting webserver in mode 'get' with 2500 workers running 500 connections each. Hit CTRL+C to cancel.  Starting 50 concurrent workers<\/code><\/pre>\n<p> 7.  \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442.<\/p>\n<p>\u041f\u043b\u043e\u0449\u0430\u0434\u043a\u0430 \u043d\u0435 \u043e\u0442\u0434\u0430\u0435\u0442 \u043a\u043e\u043d\u0442\u0435\u043d\u0442:<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0412 \u043b\u043e\u0433\u0430\u0445 \u0432\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u043d\u0430 \u043f\u043b\u043e\u0449\u0430\u0434\u043a\u0443 \u0431\u044b\u043b\u043e<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-333074","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/333074","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=333074"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/333074\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=333074"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=333074"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=333074"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}