netch80: (Default)
[personal profile] netch80
В связи с этим (как-то сия феерическая дискуссия прошла мимо меня) и рассказом про "тупые HOWTO с лиссяры" вспомнил разборки совсем недельной давности.
Есть один дружественный провайдер colocall.net, к которому я регулярно хожу в гости на рюмку чая, где работал K+1 год назад и где у меня есть шелл. В этот шелл регулярно попадают строки лога из ipfw, задалбывают.

Выжимка из диалога с сисадмином тазика.

Я: а это действительно надо чтобы на zeus сообщения о том, что его спрашивают по ntp, сыпались всем на экраны?
А: Там на таз идёт немерянный поток udp пакетов, в среднем 8000-10000 пакетов в секунду. Это не временно. Это давно и постоянно. Если ничего не делать, то на сервере невозможно работать - всё рывками. Поэтому у меня там сделано так: ipfw в лог пишет информацию обо всех udp пакетах на порт 123. И запущен скрипт, который добавляет в файрвол запрет для IP адресов, с которых пришло более 50 udp пакетов в минуту.
А: Вообще не понятно, откудя такая активность? Может это вирусня какая-то? Но что им нужно от ntp сервера?

О как. Стало интересно. Проверил по ntp.org. Такого нет. Тогда решил ввести hostname в поиск... и что я вижу? Сотни, нет, тысячи копипаст одной и той же хаутушки "как сделать время на сервере", в которую вбиты конкретные хосты без каких-то предупреждений типа "не пробуйте использовать это за пределами Киева".
Вбил его IP - то же самое. И таки где одна из первых копий? Ну конечно, на лиссяре.

(Адрес открыт в основном постинге, потому что он легко угадывался по смыслу и его таки обоснованно угадали в комментариях.)

Далее пошло обсуждение того, как надо это лечить. Я предлагал жёсткие меры разного уровня радикальности. Например, отдавать всем за пределами сети провайдера время 5-летней давности или, наоборот, 25 декабря 2012 года. Или чуть помягче, например, каждые сутки на секунду медленнее, чтобы постепенно накапливать эффект. Но тот админ, похоже, страдает чрезмерным гуманизмом, и эти меры не были приняты.

Вот вам и вред от таких хаутушек - 10K левых запросов в секунду совершенно непричастным.

Date: 2011-10-09 08:00 am (UTC)
From: [identity profile] netch80.livejournal.com
Как съездил?

> Я так и не понял, в чём смысл валить сообщения ipfw на консоли залогиненым юзерам, к тому же, на машине, где залогиненых обычно много, и это далеко не только админы (читают почту mutt-ом и т.п.).

Это не смысл, это побочный эффект dmesg race condition под сверхвысокой нагрузкой в условиях, когда идеальная защита (мьютексом или аналогом) слишком дорога. Если у сообщения теряется префикс вида <6> - оно попадает в LOG_EMERG.

Хотя я бы сделал опцию сборки для выбора метода защиты, для консольной машины - пожёстче.

> И чем плохо прописать этот ntp как cname на публичный (ntp.org.ua, time.in.ua и пр.)?

ntp? В половине инструкций написано zeus, а не ntp.
"Внезапно" (tm)

> Смысл именно в том, чтобы клиенты и не клиенты использовали разные ntp-сервера? А зачем?

А зачем обслуживать чужих при таком уровне нагрузки?

Date: 2011-10-09 10:22 am (UTC)
From: [identity profile] gul-kiev.livejournal.com
С Днём рожденья! :)

> Как съездил?

Замечательно, спасибо. :)
Отпишу у себя на днях.

> это побочный эффект dmesg race condition под сверхвысокой нагрузкой в условиях, когда идеальная защита (мьютексом или аналогом) слишком дорога. Если у сообщения теряется префикс вида <6> - оно попадает в LOG_EMERG.

Понятно. Хотя и как-то криво на первый взгляд. Разве доставку одного сообщения нельзя было сделать атомарной без мьютексов? Пусть бы это был один блок информации, обрабатываемый за один раз (как один IP-пакет). Похоже на изначально кривой дизайн API через /dev/log и /dev/klog. В send() ведь сообщения не смешиваются, хотя там трафик побольше бывает, и без всяких мьютексов.

Ну и это не снимает вопрос - зачем на консольной машине LOG_EMERG кидать всем юзерам? Особенно когда в большинстве случаев это по сути и не emerg вовсе.

> В половине инструкций написано zeus, а не ntp.

Такое не очень гуглится, ну и если оно перестанет работать у тех, кто явно прописал zeus или его IP - это одно, а ломать ответ от ntp.c.n - как по мне, странно. Я не думаю, что на zeus:123 останется много трафика, если ntp будет резолвиться не в него.

> А зачем обслуживать чужих при таком уровне нагрузки?

В смысле, зачем делать бесплатные публичные NTP-сервера?
Думается, что ты знаешь ответ на этот вопрос не хуже других. :)
Тем более, что публичный NTP-сервер у обсуждаемой фирмы уже и так есть.

Date: 2011-10-09 11:24 am (UTC)
From: [identity profile] netch80.livejournal.com
> С Днём рожденья! :)

спасибо :)
мы тут вирусов объелись, так что он вообще домашний без свечек. что-то внятное, может, через недельку.

> Понятно. Хотя и как-то криво на первый взгляд. Разве доставку одного сообщения нельзя было сделать атомарной без мьютексов?

не знаю, слышал только по отзывам коммиттеров. потребуется - уточню глубже.

> Ну и это не снимает вопрос - зачем на консольной машине LOG_EMERG кидать всем юзерам? Особенно когда в большинстве случаев это по сути и не emerg вовсе.

хм, да, это стоит подумать. там крайне редко когда это реально нужно.

>> А зачем обслуживать чужих при таком уровне нагрузки?

> В смысле, зачем делать бесплатные публичные NTP-сервера?
> Думается, что ты знаешь ответ на этот вопрос не хуже других. :)
> Тем более, что публичный NTP-сервер у обсуждаемой фирмы уже и так есть.

Угу. Но он, заметь, отдельно. И это правильно.

Profile

netch80: (Default)
netch80

September 2025

S M T W T F S
 123456
78910111213
1415 1617 181920
21222324252627
282930    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 1st, 2026 04:07 pm
Powered by Dreamwidth Studios