Нова къща,
нов рутер…
Не е велика тайна, че последните две-три години усилено се дразня на SystemD. Та покрай новия рутер, реших да дам шанс на Devuan, fork на Debian, който идва с едно важно изменение – no SystemD.
Та едно от полезните неща, които реших да тествам е ntopng.
ntop is the next generation version of the original ntop, a network traffic probe that monitors network usage. …
ntop.org description
ntopng – yes, it’s all lowercase – provides a intuitive, encrypted web user interface for the exploration of realtime and historical traffic information.
Стандартната инсталация на ntopng от Debian/Devuan е за версия 2.4, която е от 2015, последно пипана през 2017, иначе казано – малко старичка. Та как да инсталираме относително нова версия на ntopng на Devuan Ascii? Почти като на Debian (link към едно простичко ръководство) – с малко допълнения и изменения.
ntopng repo
Оригиналния пакет иска lsb-release
wget http://apt.ntop.org/buster/all/apt-ntop.deb dpkg -i apt-ntop.deb
Проблема е, че пакета е направен така, че да засича точно Debian, което чупи дефиницията на repo-то. След инсталация трябва да се оправи дефиницията на repo-то в /etc/apt/sources.list.d/ntop.list до нещо от сорта на:
deb http://packages.ntop.org/apt/stretch x64/ deb http://packages.ntop.org/apt/stretch all/
Ако пък сте на Devuan Beowulf, би трябвало да заместите “stretch” на “buster”. (not tested – your mileage may vary)
ntop install
Самата инсталация е относително простичка – apt-get install …
root@dome:/usr/local/src# apt-get install ntopng ntopng-data redis-server -V Reading package lists… Done Building dependency tree Reading state information… Done Use 'apt autoremove' to remove them. The following NEW packages will be installed: ntopng (3.9.200323-9451) ntopng-data (3.9.200323) redis-server (3:3.2.6-3+deb9u3) 0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded. Need to get 0 B/12.8 MB of archives. ... ... Setting up ntopng-data (3.9.200323) … geoipupdate 2.3.1 Opened License file /etc/GeoIP.conf Read in license key /etc/GeoIP.conf Number of product ids 0 ... To use geolocation in ntop products, follow the instructions at https://github.com/ntop/ntopng/blob/dev/doc/README.geolocation.md
Всичко щеше да бъде прекрасно ако имаше init file :( За щастие успях да изкопая един скрипт от ntopng 2.4. След малко поправки стигнах до следното. Тъй че:
$ wget https://load.devhex.org/scripts/715ee987.ntopng-init -O /etc/init.d/ntopng $ chmod +x /etc/init.d/ntopng $ update-rc.d ntopng defaults
Текущата версия на този init script пуска ntopng в “community” mode, който е безплатната версия на софтуера. За professional/enterprise вариантите, “--community
” трябва да се махне от аргументите. За да работи този init скрипт, няколко специфични неща трябва да са конфигурирани в ntopng.conf (/etc/ntopng/ntopng.conf). Ако PID-а е на друго място, ще трябва да се patch-не init-а:
# Specifies the path where the PID (process ID) is saved. -G=/var/run/ntopng.pid # This parameter causes ntop to become a daemon --daemon
GeoIP
Поради различни причини, достъпът до GeoIP базите е леко ограничен. Пълни (и валидни) разяснения има в документацията на ntopng в GitHub. Накратко – искат безплатна регистрация, генериране на ключ и поставянето му в конфигурационен файл (който може да се генерира от сайта на MaxMind) – и воала.
Couple of screenshots
Edit 1: Преди няколко дни излезна ntopng 4.1 (качиха го и в репозиторията им :)). Изглежда да работи при тзи инсталация.
Edit 2: Два малки patch-а по туй “ръкоделие за начинаещи”:
➤ версия 3.9 и 4.1 на ntopng изискват redis-server за да си пазят “разни” данни. Включил съм инсталацията в apt-get-а
➤ init script-а съм го patch-нал така че да изисква redis-server за да може sysv-init-а да го подреди след redis-server по време на init-а
За professional/enterprise вариантите, “–commity” трябва да се махне от аргументите.
Оправи това „–commity“ на „community“, че някой невнимателен читател може и да не разбере, че това е обикновена правописна грешка 🙂
PS. Ако не сработят html таговете, ще те помоля да ги махнеш.
Малко късно, но го оправих 🙂