
Реліз FastNetMon 1.1.2 відкритого рішення для моніторингу DoS/DDoS атак
За минулі майже 10 місяців з релізу 1.0.0 була дуже велика робота з поліпшення програми.
З основних змін варто відзначити наступні:
- Можливість виявляти найпопулярніші види атак: syn_flood, icmp_flood, udp_flood, ip_fragmentation_flood
- Додавання підтримки протоколу Netflow, підтримуються 5, 9 і 10 (IPFIX) версії
- Додавання підтримки протоколу sFLOW v5, який підтримується більшістю сучасних мережевих комутаторів
- Додано підтримку використання netmap (підтримуються Linux і FreeBSD, для Linux надається спеціальна версія драйвера ixgbe: github.com/pavel-odintsov/ixgbe-linux-netmap) для захоплення пакетів. Цей режим забезпечує найвищу продуктивність захоплення трафіку поряд з PF_RING ZC.
- Додано підтримку PF_RING ZC (на жаль, цей режим вимагає окремої ліцензії на бібліотеку PF_RING)
Повний список змін можна знайти нижче:
- Додано можливість збирання netflow на основі шаблонів з декількох пристроїв (у тому числі - віртуальних, в межах одного шасі)
- Базова підтримка IPv6 у додатку Netflow, збірка може прослуховувати IPv6 інтерфейс, аналіз протоколу поки не підтримується
- Інформація про атаку тепер включає дуже велику кількість полів, серед яких - використовувані протоколи, типи пакетів, прапори TCP і багато іншого, все це дозволяє ідентифікувати атаки максимально точно
- Замість щосекундного розрахунку використовується усереднення швидкості атаки за Х останніх секунд, що дозволяє мінімізувати помилкові спрацьовування
- Додано можливість збереження відбитків атаки в окремих файлах
- Додано можливість вказувати ліміт з якого трафік вважається атакою в числі потоків, пакетів/секунду і байт/секунду.
- Додано інтеграцію з проектом ExaBGP, за допомогою якого можна анонсувати блокувані IP адреси безпосередньо на BGP роутери власної мережі або безпосередньо оплинку
- Додано підтримку плагінів, тепер можлива розробка власних систем захоплення трафіку на додаток до наявних
- Додано файли init для систем на базі systemd
- Додано можливість розблокування IP після закінчення вказаного періоду часу
- Додано можливість збереження даних про атаку в Redis
- Додано підтримку розпакування протоколу L2TP в режимі захоплення з дзеркальних портів
З боку розробки були здійснені такі зміни:
- Виконано перехід на систему збирання cmake
- Додано інтеграцію CI Travis CI
- З міркувань переносимості виконано відмову від використання функціоналу С++ 11
Список підтримуваних платформ зазнав величезних змін, додано підтримку таких систем:
- Fedora 21
- Debian 6, 7, 8
- CentOS 6, 7
- FreeBSD 9, 10, 11
- DragonflyBSD 4
- MacOS X 10.10
Для наступних систем були зібрані бінарні пакети:
- CentOS 6
- CentOS 7
- Fedora 21
- FreeBSD
Для інших систем Linux рекомендується використовувати автоматичний установщик.
Нова версія дозволяє досягти дуже високої продуктивності. Швидкість обробки sFLOW/Netflow майже необмежена (до десятків і сотень гігабіт секунду). Для режиму PF_RING (не ZC) максимально досягнута швидкість в районі {3mpps/5GE. Найвищої швидкості можна домогтися використовуючи системи захоплення трафіку PF_RING ZC або netmap, обидві бібліотеки дозволяють обробляти до 10 і більше мільйонів пакетів в секунду на дзеркальних портах (10GE +). Звертаю увагу, що при дуже високій швидкості рекомендується відключати режим трекінгу з'єднань, який дуже сильно навантажує процесорні ресурси. Всі вимірювання наведені для Intel i7 2600 і мережевої карти Intel 82599.
З речей, що стосуються спільноти розробки варто відзначити підключення проекту Gitter для ефективного обговорення питань, що стосуються проекту і на додаток до нього додано класичний список розсилки.
Окремо ми б хотіли подякувати людям, які зробили великий внесок у допомогу проекту і в першу чергу компанію FastVPS, без якої даний проект був би неможливий!