Анализ проблем с помощью ntop

15 марта 2019

Быстрый анализ проблем с трафиком на Интернет-шлюзе с помощью утилиты ntop

  • ntop — это инструмент для быстрого визуального анализа трафика в реальном времени.
  • ntop запускается либо непосредственно на сервере, трафик которого нам надо анализировать, либо на отдельном сервере, на который другие сетевые устройства (веб-серверы, шлюзы, маршрутизаторы и т.д.) присылают информацию о трафике.
  • ntop умеет фильтровать и группировать трафик по большому количеству параметров, включая IP-адреса, сетевые протоколы, GeoIP, рейтинги сайтов и т.д.
  • Просмотр производится через веб-интерфейс — для доступа к нему в состав ntop входит встроенный веб-сервер, по умолчанию работающий на порту 3000.
  • С примерами отчётов и списком возможностей можно ознакомиться на странице продукта — https://www.ntop.org/products/traffic-analysis/ntop/.

Ограничения:

  • ntop является закрытым продуктом.
  • В открытом виде поставляется только усечённая community-редакция, не имеющая ключевых инструментов — построения отчётов в реальном времени и драйвера для перехвата больших объёмов трафика через PF_RING.
  • Pro-редакция доступна для скачивания, но без лицензии работает в Pro-режиме только 10 минут, после чего переходит в Community-режим.
  • Поэтому имеет смысл не держать ntop запущенным всё время, а запускать вручную только в те моменты, когда на сервере или в сети начинаются проблемы из-за большого трафика и вам надо быстро понять их причину.
  • Если 10 минут оказалось недостаточно, можно завершить ntop и запустить заново — 10 минут начнут отсчитываться с нуля.
  • Это позволит вам принять решение о покупке лицензии, предварительно убедившись в достоинствах Pro-редакции на практическом опыте.

Совместимость с ядром:

  • PF_RING работает как модуль ядра, но в исходные тексты официального и дистрибутивного ядра пока не включен, поэтому его требуется собирать и устанавливать через DKMS.
  • Для его сборки в дополнение к пакету с ядром должен быть предварительно вручную установлен пакет kernel-devel для официального ядра, либо kernel-lt-devel или kernel-ml-devel для ядер из ELRepo:
  • yum install $(rpm -qf --qf '%{NAME}\n' /boot/vmlinuz-$(uname -r))-devel
  • Может оказаться так, что PF_RING отказывается собираться с Mainline-ядром из ELRepo, потому что не знает про свежие изменения во внутренних API ядра, с Longterm-ядром такой проблемы пока не замечалось.

Установка, настройка и использование:

  • Добавляем репозиторий и устанавливаем пакет на шлюз под управлением CentOS 7:
  • cd /etc/yum.repos.d/
    wget http://packages.ntop.org/centos-stable/ntop.repo
    yum install ntopng pfring-dkms pciutils
    
  • Останавливаем запущенные сервисы и запрещаем их автозапуск:
  • systemctl stop ntopng
    systemctl stop redis
    systemctl stop pf_ring
    systemctl disable redis
    systemctl disable ntopng
    systemctl disable pf_ring
    
  • Когда у нас возникает необходимость посмотреть структуру трафика, запускаем ntop вручную (вместо eth0 укажите фактический сетевой интерфейс):
  • systemctl start redis
    systemctl start pf_ring
    ntopng -i eth0
    
  • После этого открываем в веб-браузере http://ip-адрес-шлюза:3000/
  • Параметры входа в веб-интерфейс: логин “admin”, пароль по умолчанию “admin”, при первом входе его будет предложено изменить.


← Назад в Блог

Подпишитесь на новые статьи: