Перейти к содержимому
Калькуляторы

FastNetMon - программа для выявления входящих/исходящих атак

Друзья, а у кого есть sFLOW, чтобы потестировать? А-то фиче уже много времени, а фидбэка почти нету, разве что пару сложных падений, которые никак не могу расследовать :(

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Итак, встречайте поддержку плагинов и новый плагин, в котором добавлена поддержка netflow v5! :) v9 на пути!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

не собирается под FreeBSD 9.3

[root@monitor /usr/local/src/fastnetmon/build]# make
[ 14%] Building CXX object CMakeFiles/example_plugin.dir/example_plugin/example_collector.cpp.o
/usr/local/src/fastnetmon/example_plugin/example_collector.cpp:2:31: error: log4cpp/Category.hh: No such file or directory
/usr/local/src/fastnetmon/example_plugin/example_collector.cpp:3:31: error: log4cpp/Appender.hh: No such file or directory
/usr/local/src/fastnetmon/example_plugin/example_collector.cpp:4:35: error: log4cpp/FileAppender.hh: No such file or directory
/usr/local/src/fastnetmon/example_plugin/example_collector.cpp:5:38: error: log4cpp/OstreamAppender.hh: No such file or directory
/usr/local/src/fastnetmon/example_plugin/example_collector.cpp:6:29: error: log4cpp/Layout.hh: No such file or directory
/usr/local/src/fastnetmon/example_plugin/example_collector.cpp:7:34: error: log4cpp/BasicLayout.hh: No such file or directory
/usr/local/src/fastnetmon/example_plugin/example_collector.cpp:8:36: error: log4cpp/PatternLayout.hh: No such file or directory
/usr/local/src/fastnetmon/example_plugin/example_collector.cpp:9:31: error: log4cpp/Priority.hh: No such file or directory
/usr/local/src/fastnetmon/example_plugin/example_collector.cpp:26: error: 'log4cpp' has not been declared
/usr/local/src/fastnetmon/example_plugin/example_collector.cpp:26: error: expected initializer before '&' token
/usr/local/src/fastnetmon/example_plugin/example_collector.cpp: In function 'void start_example_collection(void (*)(simple_packet&))':
/usr/local/src/fastnetmon/example_plugin/example_collector.cpp:35: error: 'logger' was not declared in this scope
/usr/local/src/fastnetmon/example_plugin/example_collector.cpp:35: error: 'log4cpp' has not been declared
*** [CMakeFiles/example_plugin.dir/example_plugin/example_collector.cpp.o] Error code 1

Stop in /usr/local/src/fastnetmon/build.
*** [CMakeFiles/example_plugin.dir/all] Error code 1

Stop in /usr/local/src/fastnetmon/build.
*** [all] Error code 1

Stop in /usr/local/src/fastnetmon/build.

 

FreeBSD monitor.xxx.ua 9.3-RELEASE-p4 FreeBSD 9.3-RELEASE-p4 #0: Wed Nov  5 14:10:38 EET 2014     root@monitor.xxx.ua:/usr/obj/usr/src/sys/GENERIC_NM  amd64

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

log4cpp надо поставить из портов и все должно собраться.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

log4cpp надо поставить из портов и все должно собраться.

поставил

теперь новая ошибка сборки

make
[ 14%] Building CXX object CMakeFiles/example_plugin.dir/example_plugin/example_collector.cpp.o
Linking CXX static library libexample_plugin.a
[ 14%] Built target example_plugin
Scanning dependencies of target patricia
[ 28%] Building C object CMakeFiles/patricia.dir/libpatricia/patricia.c.o
Linking C static library libpatricia.a
[ 28%] Built target patricia
Scanning dependencies of target sflow_plugin
[ 42%] Building CXX object CMakeFiles/sflow_plugin.dir/sflow_plugin/sflow_collector.cpp.o
Linking CXX static library libsflow_plugin.a
[ 42%] Built target sflow_plugin
Scanning dependencies of target netflow_plugin
[ 57%] Building CXX object CMakeFiles/netflow_plugin.dir/netflow_plugin/netflow_collector.cpp.o
Linking CXX static library libnetflow_plugin.a
[ 57%] Built target netflow_plugin
Scanning dependencies of target pcap_plugin
[ 71%] Building CXX object CMakeFiles/pcap_plugin.dir/pcap_plugin/pcap_collector.cpp.o
/usr/local/src/fastnetmon/pcap_plugin/pcap_collector.cpp: In function 'void parse_packet(u_char*, pcap_pkthdr*, const u_char*)':
/usr/local/src/fastnetmon/pcap_plugin/pcap_collector.cpp:122: error: 'struct tcphdr' has no member named 'source'
/usr/local/src/fastnetmon/pcap_plugin/pcap_collector.cpp:122: error: 'struct tcphdr' has no member named 'source'
/usr/local/src/fastnetmon/pcap_plugin/pcap_collector.cpp:122: error: 'struct tcphdr' has no member named 'source'
/usr/local/src/fastnetmon/pcap_plugin/pcap_collector.cpp:122: error: 'struct tcphdr' has no member named 'source'
/usr/local/src/fastnetmon/pcap_plugin/pcap_collector.cpp:123: error: 'struct tcphdr' has no member named 'dest'
/usr/local/src/fastnetmon/pcap_plugin/pcap_collector.cpp:123: error: 'struct tcphdr' has no member named 'dest'
/usr/local/src/fastnetmon/pcap_plugin/pcap_collector.cpp:123: error: 'struct tcphdr' has no member named 'dest'
/usr/local/src/fastnetmon/pcap_plugin/pcap_collector.cpp:123: error: 'struct tcphdr' has no member named 'dest'
/usr/local/src/fastnetmon/pcap_plugin/pcap_collector.cpp:127: error: 'struct udphdr' has no member named 'source'
/usr/local/src/fastnetmon/pcap_plugin/pcap_collector.cpp:127: error: 'struct udphdr' has no member named 'source'
/usr/local/src/fastnetmon/pcap_plugin/pcap_collector.cpp:127: error: 'struct udphdr' has no member named 'source'
/usr/local/src/fastnetmon/pcap_plugin/pcap_collector.cpp:127: error: 'struct udphdr' has no member named 'source'
/usr/local/src/fastnetmon/pcap_plugin/pcap_collector.cpp:128: error: 'struct udphdr' has no member named 'dest'
/usr/local/src/fastnetmon/pcap_plugin/pcap_collector.cpp:128: error: 'struct udphdr' has no member named 'dest'
/usr/local/src/fastnetmon/pcap_plugin/pcap_collector.cpp:128: error: 'struct udphdr' has no member named 'dest'
/usr/local/src/fastnetmon/pcap_plugin/pcap_collector.cpp:128: error: 'struct udphdr' has no member named 'dest'
*** [CMakeFiles/pcap_plugin.dir/pcap_plugin/pcap_collector.cpp.o] Error code 1

Stop in /usr/local/src/fastnetmon/build.
*** [CMakeFiles/pcap_plugin.dir/all] Error code 1

Stop in /usr/local/src/fastnetmon/build.
*** [all] Error code 1

Stop in /usr/local/src/fastnetmon/build.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ого, да, разные имена полей, не учел. Сделал фикс: https://github.com/FastVPSEestiOu/fastnetmon/commit/b571b6dd9ca076d668ebad4778d662e1d5dffe42

 

Стяните новый коммит и после этого соберется аж с тремя модулями - sflow/netflow v5/pcap :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ага

"и снова здаравствуйте" :)

[root@monitor /usr/local/src/fastnetmon/build]# make
Scanning dependencies of target example_plugin
[ 14%] Building CXX object CMakeFiles/example_plugin.dir/example_plugin/example_collector.cpp.o
Linking CXX static library libexample_plugin.a
[ 14%] Built target example_plugin
Scanning dependencies of target patricia
[ 28%] Building C object CMakeFiles/patricia.dir/libpatricia/patricia.c.o
Linking C static library libpatricia.a
[ 28%] Built target patricia
Scanning dependencies of target sflow_plugin
[ 42%] Building CXX object CMakeFiles/sflow_plugin.dir/sflow_plugin/sflow_collector.cpp.o
Linking CXX static library libsflow_plugin.a
[ 42%] Built target sflow_plugin
Scanning dependencies of target netflow_plugin
[ 57%] Building CXX object CMakeFiles/netflow_plugin.dir/netflow_plugin/netflow_collector.cpp.o
Linking CXX static library libnetflow_plugin.a
[ 57%] Built target netflow_plugin
Scanning dependencies of target pcap_plugin
[ 71%] Building CXX object CMakeFiles/pcap_plugin.dir/pcap_plugin/pcap_collector.cpp.o
Linking CXX static library libpcap_plugin.a
[ 71%] Built target pcap_plugin
Scanning dependencies of target fastnetmon
[ 85%] Building CXX object CMakeFiles/fastnetmon.dir/fastnetmon.cpp.o
/usr/local/src/fastnetmon/fastnetmon.cpp: In function 'void subnet_vectors_allocator(prefix_t*, void*)':
/usr/local/src/fastnetmon/fastnetmon.cpp:940: error: call of overloaded 'pow(int, int)' is ambiguous
/usr/include/math.h:210: note: candidates are: double pow(double, double)
/usr/include/c++/4.2/cmath:373: note:                 long double std::pow(long double, int)
/usr/include/c++/4.2/cmath:369: note:                 float std::pow(float, int)
/usr/include/c++/4.2/cmath:365: note:                 double std::pow(double, int)
/usr/include/c++/4.2/cmath:361: note:                 long double std::pow(long double, long double)
/usr/include/c++/4.2/cmath:357: note:                 float std::pow(float, float)
/usr/local/src/fastnetmon/fastnetmon.cpp: In function 'bool load_our_networks_list()':
/usr/local/src/fastnetmon/fastnetmon.cpp:1048: error: call of overloaded 'pow(int, unsigned int)' is ambiguous
/usr/include/math.h:210: note: candidates are: double pow(double, double)
/usr/include/c++/4.2/cmath:373: note:                 long double std::pow(long double, int)
/usr/include/c++/4.2/cmath:369: note:                 float std::pow(float, int)
/usr/include/c++/4.2/cmath:365: note:                 double std::pow(double, int)
/usr/include/c++/4.2/cmath:361: note:                 long double std::pow(long double, long double)
/usr/include/c++/4.2/cmath:357: note:                 float std::pow(float, float)
*** [CMakeFiles/fastnetmon.dir/fastnetmon.cpp.o] Error code 1

Stop in /usr/local/src/fastnetmon/build.
*** [CMakeFiles/fastnetmon.dir/all] Error code 1

Stop in /usr/local/src/fastnetmon/build.
*** [all] Error code 1

Stop in /usr/local/src/fastnetmon/build.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

О сколько нам открытий чудных готовит Фря, сейчас поразбираемся, что ему не нравится на этот раз. Блин, вот бы Travis-ci.org был с фрей.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

и еще, после того как поменял по подсказке int на double (думаю будет неправельно считать, но сборка пошла дальше)

make уже показывает

Linking CXX executable fastnetmon
/usr/bin/ld: cannot find -llog4cpp

хотя

ldconfig -r |egrep "\-llog4cpp"
       385:-llog4cpp.5 => /usr/local/lib/liblog4cpp.so.5

Изменено пользователем t0ly

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А если -liblog4cpp?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Просьба еще... списочек портов, что ставили расшарите? А-то гайд бы под Фрю был хорош, но у меня ее просто нету.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Багу с pow исправил, занятная штука, на моем g++/clang++ даже не думает воспроизводится. Но неоднозначность-таки имела место быть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А если -liblog4cpp?

а резве это не оно ?

ldconfig -r |egrep "\-llog4cpp"
       385:-llog4cpp.5 => /usr/local/lib/liblog4cpp.so.5

 

Просьба еще... списочек портов, что ставили расшарите? А-то гайд бы под Фрю был хорош, но у меня ее просто нету.

весь список?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Оно.. странно что его не видит. Список тех, что нужны для запуска FastNetMon :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

только я ведь fastnetmon так и не запустил.

 

тогда получается как то так

pkg info | egrep -i "curses|stdc|pcap|pthread|boost|log4cpp"
boost-all-1.55.0               The "meta-port" for boost libraries
boost-docs-1.55.0              Documentation for libraries from boost.org
boost-jam-1.55.0               Build tool from the boost.org
boost-libs-1.55.0_4            Free portable C++ libraries (without Boost.Python)
libpcap-1.5.2                  Ubiquitous network traffic capture library
libpthread-stubs-0.3_6         This library provides weak aliases for pthread functions
log4cpp-1.1_1                  Library of C++ classes for flexible logging

Изменено пользователем t0ly

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Боюсь, что не знаю, что делать, как вариант - попробовать указать абсолютный путь к либе явно в CMakeLists.txt :(

 

А тем временем добавил полную поддержку NetFlow v9! Теперь поддерживается и v5 и v9! Тянем отсюда: https://github.com/FastVPSEestiOu/fastnetmon :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Боюсь, что не знаю, что делать, как вариант - попробовать указать абсолютный путь к либе явно в CMakeLists.txt :(

 

я не очень разбираюсь в параметрах линкера, какой именно должна быть строка в результате?

 

могу выделить виртуалку с FreeBSD 9.3 и 10.1 для эксперементов

Изменено пользователем t0ly

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Linking CXX executable fastnetmon
/usr/bin/ld: cannot find -llog4cpp

хотя

ldconfig -r |egrep "\-llog4cpp"
       385:-llog4cpp.5 => /usr/local/lib/liblog4cpp.so.5

тож решил проверить насколько заведется. а в итоге влител в теже грабли.

после

ln -s /usr/local/lib/liblog4cpp.so /usr/lib
/usr/bin/ld: cannot find -lnuma

а во фре нет libnuma и нема libnuma-like API, так что на сим можно сворачиваться и возвращаться в линксы.

Изменено пользователем varney

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

С log4cpp траблы и на центосе, которые были решены ручной сборкой.

 

wget 'http://sourceforge.net/projects/log4cpp/files/latest/download?source=files' -O/usr/src/log4cpp-1.1.1.tar.gz
cd "/usr/src"
tar -xf log4cpp-1.1.1.tar.gz
cd "/usr/src/log4cpp"
./configure --prefix=/opt/log4cpp1.1.1
make install

 

А потом собираем fastnetmon:

cd /usr/src/fastnetmon
mkdir build
cd build
cmake .. -DDISABLE_PF_RING_SUPPORT=ON -DWE_USE_CUSTOM_LOG4CPP=on
make

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

а все равно откуда брать log4cpp. усе равно утыкаемся на фре в

/usr/bin/ld: cannot find -lnuma

(тока что проверил).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А флажка у конфигура нету, чтобы numa отрубить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

закоментив target_link_libraries(fastnetmon numa).

все завершилось.

[ 71%] Built target pcap_plugin
Linking CXX executable fastnetmon
[ 85%] Built target fastnetmon
Scanning dependencies of target fastnetmon_client
[100%] Building CXX object CMakeFiles/fastnetmon_client.dir/fastnetmon_client.cpp.o
Linking CXX executable fastnetmon_client
[100%] Built target fastnetmon_client

будем пробовать.

 

и огромное спасибо за эту разработку. уже спасала жизнь.

Изменено пользователем varney

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

О, прекрасно)) Спасибо за рецепт по сборке!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Добавлена поддержка сборки даже под Mac OS X Yosemite 10.10. Будет удобно для тестов работы sflow/netflow/pcap сенсоров у кого рабочие машинки - маки :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Благодаря неоценимой помощи от t0ly, предоставившим FreeBSD 9/10/11 для тестов, теперь FastNetMon полностью поддерживает указанные версии FreeBSD, имеет официальную поддержку по багам и гайд по установке: https://github.com/FastVPSEestiOu/fastnetmon/blob/master/FreeBSD_INSTALL.md :)

 

Еще и еще больше тестеров :)))

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.