Это старая версия документа!
Сборка IPFIX потоков rcollector2
Введение
Утилита предназначена для дополнения данными вспомогательных потоков таких как clickstream, SIP из потока сессий (netflow). По умолчанию полученные данные сохраняются в файлы, но данные так же можно сохранять и в БД ИС СОРМ-3.
Установка и обновление
- подключите репозитарий VAS Experts аналогично п.1 инструкции установки DPI.
- установите rcollector2:
yum install -y rcollector2
- настройте файлы конфигурации в директории /etc/rcollector2 см. далее
Внимание! При переходе с предыдущей версии rcollector на rcollector2 необходимо внести изменения в скрипты запуска.
Файлы поставки
- примеры конфигурации:
/etc/rcollector2/rc2flowprocess - пример исполняемого файла для обработки сессий (netflow) /etc/rcollector2/rc2urlprocess - пример исполняемого файла для обработки HTTP сессий /etc/rcollector2/rc2sipprocess - пример исполняемого файла для обработки SIP сессий /etc/rcollector2/rcollector_flow.properties - пример конфигурационного файла для режима работы flow /etc/rcollector2/rcollector_url.properties - пример конфигурационного файла для режима работы url /etc/rcollector2/rcollector_sip.properties - пример конфигурационного файла для режима работы sip
- исполняемый файл:
/bin/rcollector2
Параметры запуска программы
Программа rcollector2 имеет следующие параметры запуска:
usage: rcollector2 ОПЦИИ
ОПЦИИ:
- -h, --help отобразить краткую справку.
- -fCONFIG, --config-file=CONFIG конфигурационный файл.
- -mMODE, --mode=MODE режим работы программы. Режимы: flow, urlget, sipget
- -uidUNIQUEID, --uniqueid=UNIQUEID уникальный номер точки обработки.
- -ifINFILE, --infile=INFILE входной файл.
- -ofOUTFILE, --outfile=OUTFILE выходной файл.
- -asnASN, --localasn=ASN список локальных автономных систем (разделенных запятой)
- -oufOUTFILTER, --outfilter=OUTFILTER вывод отдельных записей по dpi protocol id в файл. Формат: <outfile>,<protocol>,…<protocol>|[next filter]. Пример: telnet.dump,22,23
- -tdUSEFILTER, --tordb=USEFILTER путь к файлу с IP адресами сети TOR. По умолчанию /var/data/tor/ip.db.gz.
- -sdbDIR, --sessiondb=DIR путь к каталогу с данными о сессиях. По умолчанию /var/db/rcollector.
- -outmailFILE, --outfilemail=FILE выходной файл для данных о mail соединениях в режиме sipget.
- -outftpFILE, --outfileftp=FILE выходной файл для данных о ftp соединениях в режиме sipget.
- -outimFILE, --outfileim=FILE выходной файл для данных о im соединениях в режиме sipget.
- -dhINTEGER, --depth=INTEGER глубина поиска фалов с данными о сессиях.
- -sdrt, --session-db-read-thread использовать несколько потоков при загрузке данных о сессиях.
Внимание! В некоторых случаях, например, при частом сбросе кеша ОС, данная опция может существенно увеличить время загрузки данных о сессиях. При использовании данной опции, по умолчанию, создаются 2 потока для чтения данных. В примерах исполняемых файлов указана данная опция.
- -v, --version вывести версию программы.
Конфигурация
Параметры работы программы задаются в .properties файле. По умолчанию загружается конфигурационный файл из каталога /etc/rcollector2 с именем rcollector_MODE.properties, где MODE это выбранный режим работы. Для режима flow - flow; для режима urlget - url; для режима sipget - sip.
При вставке данных в БД, в конфигурационном файле обязательно должны быть заданы следующие параметры:
- db.host
- db.port
- db.user
- db.pass
- db.name
- db.telco_code
- db.bad_rows_dir
- db.validation_error_path
При вставке данных в БД выходные файлы не создаются. В случае отсутствия подключения к БД будут создаваться выходные файлы согласно параметрам командной строки. В процессе работы может создаваться файл в каталоге из параметра db.validation_error_path, который который содержит краткую информацию об отброшенных данных, не прошешдих проверку на наличие необходимых полей. Имя файла соответствует имени входного файла с добалвением расширения .err .
Параметр cachedb
Данный параметр позволяет настроить работу с файлами данных о сессиях.
- max_reader_threads - максимальное количество потоков, запускаемых одновременно, для чтения данных о сессиях из файлов. Целое число от 0 до 6.
В некоторых случаях слишком большое количество потоков может привести к замедлению загрузки файлов, что приведет к общему замедлению обработки данных.
Параметр stats
Данный параметр устанавливает возможность отправки статистики работы программы в telegraf.
- socket_path - путь к datagram socket telegraf'а.
- tag - тег, выставляемый в поле rcollector_tag при отправке статистики в telegraf.
Параметр db
Данные параметр позволяет организовать вывод полученных данных в БД ИС СОРМ-3.
- host - адрес сервера postgresql
- port - порт
- user - имя пользователя
- pass - пароль пользователя
- name - имя БД
- bad_rows_dir - каталог для размещения файлов с данными в формате PGCOPY, которые были отвергнуты сервером posgresql
- validation_error_path - каталог для файлов с описанием причины для оброшенных входных данных
- copy_threads - количество потоков, которые вставляют данные в posqresql используя COPY в бинарном формате, по умолчанию 1
- commit_rows - количество строк в одном блоке, отправляемом на запись в бд при использовании COPY, по умолчанию 5000
- telco_code - идентификатор telco для записи в соответствующее поле бд
- db.llds_id - идентификатор типа источника, по умолчанию устанавливаются следующее значения:
- для режима flow - 309
- для режима urlget - 310
- для режима sipget - 311
- db.ftp.ldds_ldst_id - идентификатор типа источника для режимов flow и sipget при вставке ftp данных, по умолчанию 307
- db.email.ldds_ldst_id - идентификатор типа источника для режима sipget при вставке email данных, по умолчанию 304
- db.im.ldds_ldst_id - идентификатор типа источника для режима sipget при вставке im данных, по умолчанию 306
- db.terminal.ldds_ldst_id - идентификатор типа источника для режима flow при вставке terminal данных, по умолчанию 308
- db.h323.ldds_ldst_id - идентификатор типа источника для режима flow при вставке h323 данных, по умолчанию 311
- db.ftp_proto - идентификаторы для определения данных как ftp и их занесение в БД, по умолчанию "20,21,69,115,152,349,574,662,989,990,3713,6620,6621,6622,65086"
- db.ssh_proto - идентификаторы для определения данных как terminal и их занесение в БД, по умолчанию "22,23,3820,992,220"
- db.h323_proto - идентификаторы для определения данных как h323 и их занесение в БД, по умолчанию "4569,49217"
- db.require_subscriber_id - проверять наличие subscriber_id во входных данных, по умолчанию true. Если subscriber_id будет отсутствовать и параметр выставлен в true, то запись будет отброшена, о чем будет сообщено в информационном файле
Параметр logging
Данный параметр отвечает за настройку логирования программы.
- logging.loggers.root.level - уровень логирования
- logging.loggers.root.channel - канал для вывода сообщений
- logging.channels.fileChannel.class - класс канала вывода
- logging.channels.fileChannel.path - путь к лог-файлу
- logging.channels.fileChannel.rotation - параметр ротации
- logging.channels.fileChannel.archive - параметр имени архивных файлов
- logging.channels.fileChannel.purgeCount - количество архивных файлов
- logging.channels.fileChannel.formatter.class - класс форматировщика
- logging.channels.fileChannel.formatter.pattern - шаблон для форматировщика
- logging.channels.fileChannel.formatter.times - время
Более подробно ознакомиться с параметрами логирования можно по ссылке Class FileChannel.
Статистика работы программы
Типы полей статистических данных о работе программы.
Режим sip
- read_lines - количество прочитанных строк входного файла
- sip_bye - количество записей SIP BYE
- sip_invite - количество записей SIP INVITE
- sip_miss - количество записей, не имеющих информацию в кэше соединений
- count_ftp - количество записей ftp
- bad_ftp - количество ftp записей не сохраненных в файл
- out_ftp - количество ftp записей успешно сохраненных в файл
- dup_ftp - количество дублированных ftp записей
- count_mail - количество записей mail
- bad_mail - количество mail записей не сохраненных в файл
- out_mail - количество mail записей успешно сохраненных в файл
- dup_mail - количество дублированных mail записей
- count_im - количество записей im
- bad_im - количество im записей не сохраненных в файл
- out_im - количество im записей успешно сохраненных в файл
- bad_sip - количество sip записей не сохраненных в файл
- out_sip - количество sip записей успешно сохраненных в файл
- dup_sip - количество дублированных sip записей
- work_time - время работы программы в миллисекундах
Режим url
- read_lines - количество прочитанных строк входного файла
- sess_miss - количество записей для которых нет информации в данных о сессиях
- resp_miss - количество записей для которых нет информации в данных об ответах
- resp_skip - количество отброшенных записей (эти записи ответы от серверов)
- out_lines - количество сохраненных строк в выходном файле
- work_time - время работы программы в миллисекундах
Режим flow
- read_lines - количество прочитанных строк входного файла
- marked_as_tor - количество записей, промаркированных как TOR
- out_lines - количество сохраненных строк в выходном файле
- work_time - время работы программы в миллисекундах