jeka_coder
Участники
- Сообщения
- 34
- Реакции
- 5
- Баллы
- 15
6.3. Помещайте темы в соответствующий раздел.
На днях админ мне прислал скриншот из cloudflare

Частенько проскакивают дудос по L7. Мы после этого решил поставить crowdsec.
Есть такая штука как "crowdsec". Это IPS/IDS opensource беспллатный. Там есть модули для nginx, cloudflare, wordpress и т.д. Подключаешь логи и он детектит и выполняет действие (блок, капча и т.д). Поскольку у нас CLOUDFLARE, он блочил айпишники клауда =) Пришлось настраивать nginx, чтобы получать реальные ip клиента с помощью специального хедерса. Казалось бы дело сделано. Да, он находит злоумышленника, да он банит. Обрывается ssh соединение, так как мой айпи в бане из-за брутфорса, а на сам сайт зайти могу, т.к используется прокси cloudlare


Я такой окей, думаю. Установлю модуль cloudflare, настрою api, конфиг этот. Все настроил, выдал нужные права. Через curl работает, акки банит. А вот этот софт нет =) Пытался понять причину, по итогу забил, т.к скорее всего этот вариант пойдет тем у кого Pro/Enterprise тариф, чтобы было больше возможностей и лимит на запросы, т.к надо больше 100 запросов в минуту или сколько дается в бесплатном тарифе, не помню точно.
Пока я думаю нормальный способ этот в реал-тайм мониторить бд с заблокированными айпишниками, грепать их, скриптом делать формат под nginx и постоянно сохранять в файл, который указан в конфигурации nginx.
Не знаю насколько это будет эффективно при мощной атаке, надо ли сервак nginx перезагружать когда новые айпи добавляются в файл и какие тайминги выставлять для мониторинга. Надо тестить.
в crowdsec.db хранятся айпи адреса из глобального списка и с нашего сайта. Они помечены отдельным флагом - crowdsec.
CAPI - глобальный список (crowdsec api)
Вот небольшой список айпи, который нашел crowdsec чуть меньше чем за сутки, тут всякие, кто хотел сервер использовать в качестве открытого прокси, искал админки и т.д. Вывели мы без дубликатов записи. Прежде, чем пытаться автоматизировать процесс блокировки ip через nginx, попробуем вручную заблокировать айпи.
По итогу с заблокированного айпи адреса все равно можно попасть на сайт, хотя в логах nginx прям пишет этот заблокированный айпи, что он выполняет GET запросы и все ок 200 отдает. Почему так?
И есть ли вообще смысл старые логи анализировать и блокировать ip с которых шел ddos?! Или это бессмысленно, т.к все равно поменяют пулл айпи.

Частенько проскакивают дудос по L7. Мы после этого решил поставить crowdsec.
Есть такая штука как "crowdsec". Это IPS/IDS opensource беспллатный. Там есть модули для nginx, cloudflare, wordpress и т.д. Подключаешь логи и он детектит и выполняет действие (блок, капча и т.д). Поскольку у нас CLOUDFLARE, он блочил айпишники клауда =) Пришлось настраивать nginx, чтобы получать реальные ip клиента с помощью специального хедерса. Казалось бы дело сделано. Да, он находит злоумышленника, да он банит. Обрывается ssh соединение, так как мой айпи в бане из-за брутфорса, а на сам сайт зайти могу, т.к используется прокси cloudlare



Я такой окей, думаю. Установлю модуль cloudflare, настрою api, конфиг этот. Все настроил, выдал нужные права. Через curl работает, акки банит. А вот этот софт нет =) Пытался понять причину, по итогу забил, т.к скорее всего этот вариант пойдет тем у кого Pro/Enterprise тариф, чтобы было больше возможностей и лимит на запросы, т.к надо больше 100 запросов в минуту или сколько дается в бесплатном тарифе, не помню точно.
Пока я думаю нормальный способ этот в реал-тайм мониторить бд с заблокированными айпишниками, грепать их, скриптом делать формат под nginx и постоянно сохранять в файл, который указан в конфигурации nginx.
Не знаю насколько это будет эффективно при мощной атаке, надо ли сервак nginx перезагружать когда новые айпи добавляются в файл и какие тайминги выставлять для мониторинга. Надо тестить.
sqlite3 /var/lib/crowdsec/data/crowdsec.db
в crowdsec.db хранятся айпи адреса из глобального списка и с нашего сайта. Они помечены отдельным флагом - crowdsec.
CAPI - глобальный список (crowdsec api)
SELECT DISTINCT value FROM decisions WHERE origin = 'crowdsec';
Вот небольшой список айпи, который нашел crowdsec чуть меньше чем за сутки, тут всякие, кто хотел сервер использовать в качестве открытого прокси, искал админки и т.д. Вывели мы без дубликатов записи. Прежде, чем пытаться автоматизировать процесс блокировки ip через nginx, попробуем вручную заблокировать айпи.
По итогу с заблокированного айпи адреса все равно можно попасть на сайт, хотя в логах nginx прям пишет этот заблокированный айпи, что он выполняет GET запросы и все ок 200 отдает. Почему так?
И есть ли вообще смысл старые логи анализировать и блокировать ip с которых шел ddos?! Или это бессмысленно, т.к все равно поменяют пулл айпи.