>>Все приведённые вами counter-measures, вроде port knock, помешают не только товарищам из
>>ботнетов, но и легальным админам.
>
>Ну так сделать опциональным. Кому не надо - пусть не юзают. И
>уж если всякие там недовпны можно пхать то уж мелкий антигемор
>наверное и подавно. А то как-то так в инете попадется уйма
>рецептов от геморроя с брутом, но рецептов юзежа тамошнего извратного впн
>- почти нет. Что как бы намекает на соотношение востребованностей фич. В инете ещё куча рецептов "как разблокировать винду". Только хотя трояны-блокировщики, они, конечно, зло, но первопричина всё же немножко в другом...
>>Это было неоднократно вам указано и вами проигнорировано.
>
>Сдуру можно и ... сломать. А зачем фичу делать дурно и интрузивно?
Какую фичу? accept(2) + fork(2) + setuid(2)? Претензии по этому поводу — к Bell Labs.
>Можно ведь отключаемо (хоть вообще не включив по дефолту!) и просто
>(в понимании юзерами процесса) сделать. Скажем, можно кодировать последовательность кнокинга "строкой
>конекта", так что это всего лишь будет относително простая к запоминанию
>фраза, например. Или пасс плайнтекстом "на попытку коннекта вообще". Просто получить
>десяток байтов и проверить совпадение, или проверить что постучали на десяток
>портов - проц почти не сожрет. В отличие от форков и
>крутой криптографии. Ессно криптографическая стойкость почти не возрастет, НО пропаливание этого
>пассворда/последовательности кнока (сниффером и прочая) позволит лишь ... дергать тяжелые сущности.
То есть реально защита нифига не повышается. Вспоминайте теорию защиты информации, если вы вообще с ней знакомы: защита строится исходя из максимальных возможностей атакующего. Протокол SSH построен - вы сами это знаете - из предположения, что атакующий может перехватывать и подменять траффик. А это куда более серьёзно, чем "атака на ресурсы".
Более того, если, по вашему совету, сделать так, что sshd не подстрахован фаерволом и будет выполнять его работу, то производительность упадёт, а потребление ресурсов возрастёт. Получается, из-за своей криворукости вы предлагаете добавить костыли в SSH (а также в остальные сетевые сервисы, ведь их тоже могут атаковать аналогичным образом). Ну бред же!
>Которые сейчас можно анлимно дергать и которые никак и ни чем
>не прикрыты so far. Это собственно не security countermeasure, а всего
>лишь повышение абузоустойчивости демона с поправкой на реальный мир, набитый брутерскими
>ботами. Коих может припереться и целая пачка, блин.
Во-первых, похоже, опцию MaxStartups вы тоже не видели, ну да ладно.
Во-вторых, даже если кому-то вроде вас так упёрся сей пример security by obscurity, это, опять же, глупо реализовывать в демоне. Это работа общего для всей системы слоя, то есть, по сути, того же фаервола.
В-третьих, вы до сих пор так по существу и не ответили, что делать в тех случаях, когда возможности послать произвольную строку нет. Корёжить протокол SSH? Ну, удачи...
>>У меня, к слову, ни разу не создавал проблем. ЧЯДНТ?
>
>А хз. Попробуйте поставить никак не прикрытую машину в какомнить более-менее известном
>датацентре и вывесите ее в инет. Видимо ботики целенаправленно шарпятся по
>айпи датацентров, потому как сраный пень-3 на непонятном канале - нафиг
>не впился, когда есть куча дебилушек, возможно с простым пассом, в
>вон том датацентрике, с заведомо толстым каналом, мощным серваком/вдс/чтотамунихеще и всеми
>делами, половина из коих посещается админами только по праздникам (дебилы тоже
>арендуют сервера, что ессно разжигает жажду халявы за их счет у
>ботнетчиков).
Кстати, да, фаервол я всегда включал. Так что поторопился с примером.
Хотя, повторюсь, выставлять сервисы (ЛЮБЫЕ) в сеть при выключенном фаерволе - мягко говоря, идиотизм. Счастье тех, кто поддерживал сеть в моей нынешней конторе до меня (там было несколько таких машин), что я их вживую не застал...
>>>При том судя по обилию статей как с нии бороться -
>>Видел всего пару раз, и то смеялся, ибо в основном всё тот
>>же бред про port knocking.
>
>Как по мне - порткнок один из наиболее эффективных вариантов. И сам
>не попадешь под свой фильтр, даже если облажаешься,
Очень даже попадёшься. Бывает MIDPSSH. Бывает ограничение исходящих коннектов. Бывают промежуточные фаерволы с хитрыми правилами. И т.д.
> и с своей
>целью как то послать ботов на - оно справляется. Т.е. проц
>не грузится, а боты остаются за бортом. А от серьезных целенаправленных
>атак под ручным руководством, с адресным юзанием сниффера который сгребет последовательность
>кнока и прочая - спасать будет уже как раз тяжелая артиллерия^W
>криптография SSH. А вот когда она палит по воробьям^W ботам со
>всей дури - не прикольно. Нафиг надо - здоровенные и дорогие
>снаряды^W тьфу, уйму времени CPU на обслуживание каких-то уродов тратить?!
Ещё раз: перечитайте теорию защиты информации, самые азы. Шнайер вам в помощь.
>>Не говоря о том, что статьи вида «добавляем простенькое правило в фаервол»
>>на пять страниц, это, ИМХО, даже и не смешно.
>
>Как по мне - не смешно когда разработчики привинчивают рюшечки и бантики,
>в то время как админам приходится городить костыли и писать какие-то
>левые статьи "как избавиться от геморроя". И да, рулесы фаера -
>немного не кроссплатформенны, если что.
Костыль - это то, что вы предлагаете. Потому что вместо единого решения для всех сервисов вы предлагаете огород городить в каждом персонально. Да ещё и в ущерб потреблению тех самых ресурсов, о которых вы печётесь.
>>Про это, к слову, применительно к OpenSSH речи не было. Было другое:
>>предложение озвучить «как правильно сделать, чтобы таких проблем не было».
>
>См. выше. Минимум 2 варианта. При том как минимум не ухучшающих секурити
>ниже того что есть и явно способных отбрить набредшее на хост
>стадо тупых но наглых автоматических ботов. Даже распределенное. С минимальной нагрузкой
>на проц (во многие разы ниже чем то что наблюдается сейчас).
У вас, стоически избегающего использования фаерволов на серверах, думаю, можно ожидать и не такие проблемы. В которых виноваты будут, разумеется, все остальные.
>>Хотя бы теоретически. Только чтоб секурность никуда не делась, и хотя бы
>>часто использумые полезные фичи остались
>
>Не вижу ни одной причины по которой секурность куда-то денется в результате
>этого довеска, равно как не вижу почему бы это привело к
>пропадению фич .
Она не денется. Она просто не улучшится. А вот пользоваться станет геморройнее. - profit, + problems.
>[оверквотинг удален]
>См. выше, надеюсь что это упущение теперь исправлено. Только до того как
>орать suxx - подумайте о том что целью довесков не было
>усиление криптографической стойкости, целью было решение вполне конкретной проблемы: припирается стадо
>непрошенных гостей и начинает брутить, вызывая некислую паразитную нагрузку. При том
>по мере появления fail2ban-ов и прочих мер, rate limit-ящих скорость брута
>с 1 айпи - их логика подстраивается чтобы под них не
>попадать, как то скорость брута с 1 бота стаивтся небольшая, зато
>сие компенсируется числом ботов. А глобальный rate limit на всех вообще
>- накроет и самого админа мля, и как-то не прикольно попасть
>на свой хост только потому что боты приперлись.
Ещё раз: pass in on $ext_if proto tcp to ($ext_if) port ssh keep state \
(max-src-conn-rate 10/60, overload <bruteforcers> flush global)
Подстраиваете 10/60 по своему вкусу, в соответствии с вашими потребностями и возможностями.
>>>куда отправится таким манером "качество", угу.
>>Допустим, проблема у кого-то такая возникает.
>
>Да вот почему-то весь инет завален советами такого плана. И только для
>sshd. Почему-то советов для других демонов - нет.
Если почитаете внимательно - почти всегда это вызвано страхом админов "а чего это они ко мне все ломятся", а отнюдь не повышенным потреблением ресурсов. Часть примеров представляет собой руководство по firewall, и SSH выбирается для примера банально из-за своей распространённости: что бы ни крутилось на сервере: Web-сервер, SMTP-релей, СУБД или набор контейнеров, вы почти наверняка установите там SSH.
Насчёт советов для других демонов: гугль по запросу "firewall connection limit mysql" выдал цитату с сайта MySQL: "All server machines should be protected by a firewall as the first". Дальше я даже искать не стал…
>[оверквотинг удален]
>их вини, хоть нет, а некоторым пора понять что интернет -
>не дружественная среда. И потому оттуда могут валиться потенциально враждебные воздействия.
>Сетевые демоны должны быть готовы к тому что им окажут не
>очень теплый прием в сети.
>
>>Это как винить машину за то, что в ней разбили стекло и вытащили магнитолу.
>
>Если машина претендовала на то чтобы называться инкассаторским фургоном, в частности, подразумевается
>и то что умыкнуть из нее магнитолу и нанести вред водителю
>тоже должно быть геморройно.
Вот не надо опять аналогии переделывать под себя.
>>Можно тыщу раз гордиться, что вы мыслите как человек безо всякой логики вообще. А толку?
>
>Логика простая: если проблема есть, запихнуть ее под ковер не удастся. И
>если стопицот админов ипутся с подстановкой костылей - значит проблема есть.
Стопицот админов не используют фаервол или не умеют им пользоваться? Да, проблема есть - у них в голове.
Из-за таких как вы и рождаются монстры вроде Oracle DB, которые тянут в себе миллион дублирующихся с окружением функций. OpenSSH проповедует другую идею: каждый занимается своим делом. Firewall защищает сетевые сервисы. SSH, сетевой сервис, защищает передаваемые по сети данные.