DDOS сервера самого себя?Или что это?

12
PK
На сайте с 01.03.2010
Offline
93
2198

Собственно есть сервер в hetzner.de, конфигурация ex4 вроде, это 8 гигов озу, проц I7, и программный рейд1 2х750.

Собственно стоит апач, проксирующий nginx, php, mysql.

C некоторых недавних пор появилась следующая пробема:сервер стал сам на себя слать запросы из серии

20-0	-	0/0/63	. 	0.20	13408	0	0.0	0.00	0.27 	::1	site.ru	OPTIONS * HTTP/1.0

Количество запросов может доходить до 200 (собственно по ограничению MaxClients). После чего помогает только перезапуск апача. Искал в сети, но всё, что нашел - убирают люди подобные записи в логах, а у меня это видно через mod_status.

Что это может быть и что делать?

Шлю смс-ки отсюда ( http://www.smspilot.ru/?r=3591 )
Andreyka
На сайте с 19.02.2005
Offline
822
#1

Например в кривом php может быть обращение к файлу через http :)

Не стоит плодить сущности без необходимости
LEOnidUKG
На сайте с 25.11.2006
Offline
1764
#2
Andreyka:
Например в кривом php может быть обращение к файлу через http :)

Аха.

Через file_get_contents(http://ваш сервер) или include(http://ваш сервер)

Что-то устанавливалось на сервер?

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
PK
На сайте с 01.03.2010
Offline
93
#3

Ну, последние инсталляции - MODx revolution, правда данный косяк был и до него вроде как, но в таких размерах. Далее был Magento, Битрикс. Но именно сам данный процесс был в тот момент, когда ничего не ставилось. Установку всех скриптов и прочего произвожу всегда сам, врядли кто мог что-то левое поставить.

На данный момент сделал так:

/etc/hosts

#::1 ip6-localhost ip6-loopback

Пока вроде больше не появлялялось.

Romka_Kharkov
На сайте с 08.04.2009
Offline
485
#4

А у вас cPanel не установлена там случайно?

Есть около 15.000 ipv4 !!! (http://onyx.net.ua/price.php#ipv4) Качественный хостинг с 2005 года - лучшее клиентам! (http://onyx.net.ua/)
M
На сайте с 16.09.2009
Offline
278
#5
Pahom-ka:
сервер стал сам на себя слать запросы из серии
20-0	-	0/0/63	. 	0.20	13408	0	0.0	0.00	0.27 	::1	site.ru	OPTIONS * HTTP/1.0

Обычное дело - апач ходит и прибивает своих лишних детей. Это не источник проблемы. Тем более, что конкретно этот запрос вообще отвечает пустому слоту.

Pahom-ka:

Количество запросов может доходить до 200 (собственно по ограничению MaxClients). После чего помогает только перезапуск апача.

Ищите проблему в других запросах, которые привели к тому, что у вас апачей столько наплодилось.

Pahom-ka:
Что это может быть и что делать?

Если администрируете сервер самостоятельно - читать http://httpd.apache.org/ до посинения. Чтобы хоть на минимальном уровне понять как работает вебсервер и что вам показывает mod_status.

Кстати, 200 - многовато, даже если у вас перед апачем nginx не стоит. 200 * 20Mb ~ 4Gb. У вас вообще есть столько памяти?

Абонементное сопровождение серверов (Debian) Отправить личное сообщение (), написать письмо ().
PK
На сайте с 01.03.2010
Offline
93
#6

Что показывает mod_status я понимаю, однако проблема в том, что нужно читать начало топика полностью, может тоже "до посинения", т.к. там написано, что памяти - 8 гигов, там стоит nginx, который во-первых обрабатывает всю статику, во-вторых на самых нагруженных и тяжёлых сайтах (magento, bitrix, prestashop) - не трогает апач вообще, обрабатывая данные через php-fpm.

Собственно мне интересно, почему апач создаёт столько дочерних процессов и не может их сразу убить, как только они освобождаются и доходят до лимита.

Cpanel нету, я уже искал в интернете, но ничего похожего не нашёл к сожалению.

[Удален]
#7

Обычное дело. Ничего страшного. Как правило рекомендуют увеличить MaxSpareServers

Но поскольку у вас до 200 доходит, то наверное не стоит, но попробовать 400 к примеру поставить.

M
На сайте с 16.09.2009
Offline
278
#8
Pahom-ka:
Что показывает mod_status я понимаю

Выше я подробно объяснил, почему это не так.

Pahom-ka:
нужно читать начало топика полностью, может тоже "до посинения", т.к. там написано, что памяти - 8 гигов

А про то, сколько занимает SQL-сервер в пике - там написано? Вот почему я написал про память и nginx. Надеюсь, вы поняли что мне не к чему извиняться за невнимательность?

Pahom-ka:
Собственно мне интересно, почему апач создаёт столько дочерних процессов и не может их сразу убить, как только они освобождаются и доходят до лимита.

Собственно, ниоткуда пока не видно что происходит именно так. Покажите настройки MPM-модуля апача. Может у вас Min/MaxSpareServers настроены так, что оставляют кучу процессов после всплеска нагрузки на продолжительное время.

Но вероятнее всего - "не может убить" потому, что процессы что-то делают, т.е. обрабатывают запросы. Покажите вывод mod_status в момент проблемы.

dyakoff:
Обычное дело. Ничего страшного. Как правило рекомендуют увеличить MaxSpareServers

Тогда будет буквально то, чего хочет избежать ТС. Апач будет дольше держать больше детей, после того как их однажды почему-то наплодит.

[Удален]
#9

Причем сдесь дети?

The OPTIONS method represents a request for information about the communication options available on the request/response chain identified by the Request-URI. This method allows the client to determine the options and/or requirements associated with a resource, or the capabilities of a server, without implying a resource action or initiating a resource retrieval.
Responses to this method are not cacheable.
If the OPTIONS request includes an entity-body (as indicated by the presence of Content-Length or Transfer-Encoding), then the media type MUST be indicated by a Content-Type field. Although this specification does not define any use for such a body, future extensions to HTTP might use the OPTIONS body to make more detailed queries on the server. A server that does not support such an extension MAY discard the request body.
If the Request-URI is an asterisk ("*"), the OPTIONS request is intended to apply to the server in general rather than to a specific resource. Since a server's communication options typically depend on the resource, the "*" request is only useful as a "ping" or "no-op" type of method; it does nothing beyond allowing the client to test the capabilities of the server. For example, this can be used to test a proxy for HTTP/1.1 compliance (or lack thereof).
If the Request-URI is not an asterisk, the OPTIONS request applies only to the options that are available when communicating with that resource.
A 200 response SHOULD include any header fields that indicate optional features implemented by the server and applicable to that resource (e.g., Allow), possibly including extensions not defined by this specification. The response body, if any, SHOULD also include information about the communication options. The format for such a
body is not defined by this specification, but might be defined by future extensions to HTTP. Content negotiation MAY be used to select the appropriate response format. If no response body is included, the response MUST include a Content-Length field with a field-value of "0".
The Max-Forwards request-header field MAY be used to target a specific proxy in the request chain. When a proxy receives an OPTIONS request on an absoluteURI for which request forwarding is permitted, the proxy MUST check for a Max-Forwards field. If the Max-Forwards field-value is zero ("0"), the proxy MUST NOT forward the message; instead, the proxy SHOULD respond with its own communication options. If the Max-Forwards field-value is an integer greater than zero, the proxy MUST decrement the field-value when it forwards the request. If no Max-Forwards field is present in the request, then the forwarded request MUST NOT include a Max-Forwards field.
M
На сайте с 16.09.2009
Offline
278
#10
dyakoff:
Причем сдесь дети?

При том, что так мастер-процесс общается со своими потомками. Это поясняли выше. До 2.0-какой-то версии использовался HEAD.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий