Tips en Trucs 2023

Ntopng Netwerk Monitoring Tool

Ntopng is een webgebaseerde toepassing om netwerkverkeer te onderzoeken. Het is een verbeterde versie van Ntop die netwerkgebruik, statistieken en analytische gegevens weergeeft. Het werkt met verschillende computersystemen, waaronder Windows, Linux, macOS en BSD. Ntopng komt in professionele en bedrijfsedities met licentiebeperkingen, evenals een gratis open source gemeenschapsversie.

Ntopng installeren

Ntopng is niet beschikbaar in de standaard softwarebronnen van openSUSE Leap 15.4. Maar wel in de experimentele server:monitoring softwarebron, die we met de volgende opdracht toevoegen aan de beschikbare softwarebronnen van het openSUSE Leap 15.4 systeem.

dany@pindabook:~> sudo zypper addrepo https://download.opensuse.org/repositories/server:/monitoring/15.4/ server:monitoring
Opslagruimte 'server:monitoring' wordt toegevoegd .............................................................................[gereed]
Opslagruimte 'server:monitoring' is toegevoegd

URI                    : https://download.opensuse.org/repositories/server:/monitoring/15.4/
Ingeschakeld           : Ja
GPG-controle           : Ja
Automatisch vernieuwen : Nee
Prioriteit             : 99 (standaard prioriteit)

Prioriteiten van opslagruimtes hebben geen effect. Alle ingeschakelde opslagruimtes delen dezelfde prioriteit.

Na het toevoegen van de softwarebron installeren we Ntopng met de volgende opdracht. Daarbij moeten we de pas toegevoegde softwarebron vertrouwen. Door deze altijd te vertrouwen, krijgen we de updates ervan samen met de systeemupdates.

dany@pindabook:~> sudo zypper install ntopng
Een nieuwe handtekening voor een opslagruimte of pakket is ontvangen:

  Opslagruimte:              server:monitoring
  Vingerafdruk van sleutel:  8F3B C8EF F549 CDCD A918 D981 A5C2 3697 EE45 4F98
  Sleutelnaam:               server:monitoring OBS Project 
  Sleutelalgoritme:          DSA 1024
  Sleutel aangemaakt:        zo 27 nov 2022 23:04:20 CET
  Sleutel verloopt op:       di 04 feb 2025 23:04:20 CET
  Rpm-naam:                  gpg-pubkey-ee454f98-6383dee4



    Opmerking: Ondertekenen van gegevens maakt het mogelijk voor de ontvanger om te controleren dat
    er na het ondertekenen geen wijzigingen zijn geweest na het ondertekenen. Accepteren van
    pakketten met foute ondertekening kan leiden tot een corrupt systeem en in extreme gevallen
    zelfs tot een gecompromitteerd systeem.

    Opmerking: Een GPG publieke sleutel wordt betrouwbaar geïdentificeerd door zijn vingerafdruk.
    Vertrouw niet op de sleutelnaam. Als u niet zeker bent of de gepresenteerde sleutel is autentiek
    is, vraag dan de leverancier van de opslagruimte of controleer zijn website. Veel leveranciers
    onderhouden een webpagina die de vingerafdrukken tonen van de GPG sleutels die ze gebruiken.

Wilt u de sleutel verwerpen, tijdelijk vertrouwen of altijd vertrouwen? [v/t/a/?] (v): a
Cache van opslagruimte 'server:monitoring' wordt gebouwd ......................................................................[gereed]
Gegevens van opslagruimte laden...
Lezen van geïnstalleerde pakketten...
Pakketafhankelijkheden oplossen...

De volgende 2 aanbevolen pakketten zijn automatisch geselecteerd:
  geoipupdate zeromq-tools

De volgende 13 NIEUWE pakketten zullen worden geïnstalleerd:
  geoipupdate libdbi3 libhiredis0_13 libndpi4 libpgm-5_2-0 libradcli5 librrd8 libsodium23 libzmq5 ndpi-common ntopng redis zeromq-tools

13 nieuwe te installeren pakketten.
Totale downloadgrootte: 14,9 MiB. Reeds in de cache: 0 B. Na de bewerking zal aanvullend 63,4 MiB worden gebruikt.
Doorgaan? [j/n/v/...? alle opties tonen] (j): 
Ophalen: geoipupdate-4.2.2-1.8.1.x86_64 (SUSE:SLE-15:Update)                                                      (1/13),   1,6 MiB    
Ophalen: geoipupdate-4.2.2-1.8.1.x86_64.rpm .......................................................................[gereed (5,3 MiB/s)]
Ophalen: libdbi3-0.9.0.g33-1.48.x86_64 (SUSE:SLE-15:Update)                                                       (2/13),  43,1 KiB    
Ophalen: libdbi3-0.9.0.g33-1.48.x86_64.rpm ......................................................................[gereed (927,1 KiB/s)]
Ophalen: libhiredis0_13-0.13.3-bp154.2.55.x86_64 (SUSE:SLE-15:Update)                                             (3/13),  30,4 KiB    
Ophalen: libhiredis0_13-0.13.3-bp154.2.55.x86_64.rpm ..........................................................................[gereed]
Ophalen: libpgm-5_2-0-5.2.122-150400.15.6.x86_64 (SUSE:SLE-15:Update)                                             (4/13), 167,6 KiB    
Ophalen: libpgm-5_2-0-5.2.122-150400.15.6.x86_64.rpm ..........................................................................[gereed]
Ophalen: librrd8-1.7.0-6.3.1.x86_64 (SUSE:SLE-15:Update)                                                          (5/13), 156,2 KiB    
Ophalen: librrd8-1.7.0-6.3.1.x86_64.rpm ...........................................................................[gereed (1,3 MiB/s)]
Ophalen: libsodium23-1.0.18-150000.4.6.1.x86_64 (Update repository with updates from SUSE Linux Enterprise 15)    (6/13), 162,9 KiB    
Ophalen: libsodium23-1.0.18-150000.4.6.1.x86_64.rpm ...........................................................................[gereed]
Ophalen: redis-6.2.6-150400.3.16.1.x86_64 (Update repository with updates from SUSE Linux Enterprise 15)          (7/13),   1,1 MiB    
Ophalen: redis-6.2.6-150400.3.16.1.x86_64.rpm .....................................................................[gereed (7,9 MiB/s)]
Ophalen: libradcli5-1.3.1-lp154.11.1.x86_64 (server:monitoring)                                                   (8/13),  36,8 KiB    
Ophalen: libradcli5-1.3.1-lp154.11.1.x86_64.rpm ...............................................................................[gereed]
Ophalen: ndpi-common-4.0-lp154.26.4.x86_64 (server:monitoring)                                                    (9/13), 195,2 KiB    
Ophalen: ndpi-common-4.0-lp154.26.4.x86_64.rpm ....................................................................[gereed (1,2 MiB/s)]
Ophalen: libzmq5-4.3.4-lp154.5.2.x86_64 (server:monitoring)                                                      (10/13), 282,4 KiB    
Ophalen: libzmq5-4.3.4-lp154.5.2.x86_64.rpm .....................................................................[gereed (341,6 KiB/s)]
Ophalen: zeromq-tools-4.3.4-lp154.5.2.x86_64 (server:monitoring)                                                 (11/13),  37,5 KiB    
Ophalen: zeromq-tools-4.3.4-lp154.5.2.x86_64.rpm ................................................................[gereed (951,4 KiB/s)]
Ophalen: libndpi4-4.0-lp154.26.4.x86_64 (server:monitoring)                                                      (12/13), 318,6 KiB    
Ophalen: libndpi4-4.0-lp154.26.4.x86_64.rpm ...................................................................................[gereed]
Ophalen: ntopng-5.0-lp154.1.65.x86_64 (server:monitoring)                                                        (13/13),  10,7 MiB    
Ophalen: ntopng-5.0-lp154.1.65.x86_64.rpm .........................................................................[gereed (8,6 MiB/s)]

Controleren op conflicten tussen bestanden: ...................................................................................[gereed]
( 1/13) Installeren van: geoipupdate-4.2.2-1.8.1.x86_64 .......................................................................[gereed]
( 2/13) Installeren van: libdbi3-0.9.0.g33-1.48.x86_64 ........................................................................[gereed]
( 3/13) Installeren van: libhiredis0_13-0.13.3-bp154.2.55.x86_64 ..............................................................[gereed]
( 4/13) Installeren van: libpgm-5_2-0-5.2.122-150400.15.6.x86_64 ..............................................................[gereed]
( 5/13) Installeren van: librrd8-1.7.0-6.3.1.x86_64 ...........................................................................[gereed]
( 6/13) Installeren van: libsodium23-1.0.18-150000.4.6.1.x86_64 ...............................................................[gereed]
/usr/sbin/useradd -r -c User for redis key-value store -d /var/lib/redis -U redis -s /usr/sbin/nologin
See /usr/share/doc/packages/redis/README.SUSE to continue
( 7/13) Installeren van: redis-6.2.6-150400.3.16.1.x86_64 .....................................................................[gereed]
( 8/13) Installeren van: libradcli5-1.3.1-lp154.11.1.x86_64 ...................................................................[gereed]
( 9/13) Installeren van: ndpi-common-4.0-lp154.26.4.x86_64 ....................................................................[gereed]
(10/13) Installeren van: libzmq5-4.3.4-lp154.5.2.x86_64 .......................................................................[gereed]
(11/13) Installeren van: zeromq-tools-4.3.4-lp154.5.2.x86_64 ..................................................................[gereed]
(12/13) Installeren van: libndpi4-4.0-lp154.26.4.x86_64 .......................................................................[gereed]
warning: user ntopng does not exist - using root
warning: group ntopng does not exist - using root
(13/13) Installeren van: ntopng-5.0-lp154.1.65.x86_64 .........................................................................[gereed]

Nu Ntopng met succes op ons systeem is geïnstalleerd, is het tijd om het te configureren. Daartoe moeten we het configuratiebestand openen dat zich bevindt in de map /etc/ntopng. We gebruiken daarvoor de GNU Nano editor met de opdracht:

dany@pindabook:~> sudo nano /etc/ntopng/ntopng.conf

Nu het bestand is geopend, moeten we de configuraties aanpassen, zoals getoond in de onderstaande regels. Daarbij laten we de originele configuratieregels uitgeschakeld (voorafgegaan door een #) staan. Sla het configuratiebestand van Ntopng op met Ctrl+s. Sluit daarna het bijgewerkte bestand af met Ctrl+x en keer terug naar de terminal-shell.

-i=wlan1
# -i=eth1
# -i=eth2
...
-w=3000
# -w=3000

Mijn computer gebruikt wlan1 als netwerkverbinding. De beschikbare netwerkverbindingen kunnen we opvragen met de opdracht ip a of door de help van Ntopng op te vragen:

dany@pindabook:~> sudo ntopng -h
ntopng x86_64 v.5.0.230506 - (C) 1998-21 ntop.org

Usage:
  ntopng 
  or
  ntopng  

Options:
[--dns-mode|-n]               | DNS address resolution mode
                                    | 0 - Decode DNS responses and resolve
                                    |     local numeric IPs only (default)
                                    | 1 - Decode DNS responses and resolve all
                                    |     numeric IPs
                                    | 2 - Decode DNS responses and don't
                                    |     resolve numeric IPs
                                    | 3 - Don't decode DNS responses and don't
                                    |     resolve numeric IPs
[--interface|-i]    | Input interface name (numeric/symbolic),
                                    | view or pcap file path
...
[--simulate-ips]               | Simulate IPs by choosing clients and servers among  random addresses
[--help|-h]                         | Help

Available interfaces (-i ):
   1. wlan1
   2. lo

Om de aangepaste configuratie te activeren, herstarten we Ntopng:

dany@pindabook:~> sudo systemctl restart ntopng

Om te controleren of Ntopng met de nieuwe configuratie correct werkt, voeren we de volgende opdracht uit:

dany@pindabook:~> sudo systemctl status ntopng.service 
× ntopng.service - ntopng high-speed web-based traffic monitoring and analysis tool
     Loaded: loaded (/usr/lib/systemd/system/ntopng.service; disabled; vendor preset: disabled)
     Active: failed (Result: start-limit-hit) since Sun 2023-05-07 14:15:20 CEST; 25min ago
    Process: 5543 ExecStart=/usr/bin/ntopng /etc/ntopng/ntopng.conf (code=killed, signal=TERM)
   Main PID: 5543 (code=killed, signal=TERM)

mei 07 14:15:19 pindabook systemd[1]: Started ntopng high-speed web-based traffic monitoring and analysis tool.
mei 07 14:15:19 pindabook ntopng[5543]: 07/May/2023 14:15:19 [Ntop.cpp:2493] Setting local networks to 127.0.0.0/8,fe80::/10
mei 07 14:15:19 pindabook ntopng[5543]: 07/May/2023 14:15:19 [Redis.cpp:99] ERROR: Connection error [Connection refused]
mei 07 14:15:19 pindabook ntopng[5543]: [Redis.cpp:99] ERROR: Connection error [Connection refused]
mei 07 14:15:20 pindabook systemd[1]: Stopping ntopng high-speed web-based traffic monitoring and analysis tool...
mei 07 14:15:20 pindabook systemd[1]: ntopng.service: Deactivated successfully.
mei 07 14:15:20 pindabook systemd[1]: Stopped ntopng high-speed web-based traffic monitoring and analysis tool.
mei 07 14:15:20 pindabook systemd[1]: ntopng.service: Start request repeated too quickly.
mei 07 14:15:20 pindabook systemd[1]: ntopng.service: Failed with result 'start-limit-hit'.
mei 07 14:15:20 pindabook systemd[1]: Failed to start ntopng high-speed web-based traffic monitoring and analysis tool.

Blijkbaar is er een probleem met Redis (een database systeem). Gelukkig bestaat er documentatie om het probleem op te lossen, zelf specifiek voor openSUSE:

dany@pindabook:~> cat /usr/share/doc/packages/redis/README.SUSE

We volgen de handleiding en beginnen met het aanmaken van een standaard Redis configuratie.

dany@pindabook:~> sudo cp -a /etc/redis/default.conf.example /etc/redis/instancename.conf

Daarna kunnen we de standaard Redis configuratie aanpassen met de texteditor nano:

dany@pindabook:~> sudo nano /etc/redis/instancename.conf

Pas de volgende configuratieregels aan:

#pidfile /run/redis/default.pid
pidfile /run/redis/instancename.pid
...
#logfile /var/log/redis/default.log
logfile /var/log/redis/instancename.log
...
#dir /var/lib/redis/default/
dir /var/lib/redis/instancename/

Na het opslaan van de aangepaste configuratie en het afsluiten van nano, kunnen we een Redis instantie aanmaken.

dany@pindabook:~> sudo install -d -o redis -g redis -m 0750 /var/lib/redis/instancename/
[sudo] wachtwoord voor root:

Daarna starten we Redis met de nieuwe configuratie en controleren we of Redis deze keer correct werkt:

dany@pindabook:~> sudo systemctl start redis@instancename
dany@pindabook:~> sudo systemctl status redis@instancename
● redis@instancename.service - Redis instance: instancename
     Loaded: loaded (/usr/lib/systemd/system/redis@.service; disabled; vendor preset: disabled)
     Active: active (running) since Sun 2023-05-07 14:54:23 CEST; 2s ago
   Main PID: 6869 (redis-server)
     Status: "Ready to accept connections"
      Tasks: 5 (limit: 4915)
     CGroup: /system.slice/system-redis.slice/redis@instancename.service
             └─ 6869 "/usr/sbin/redis-server 127.0.0.1:6379" "" "" "" "" "" "" "" "" "" "" "" "" "" ""

mei 07 14:54:23 pindabook systemd[1]: Starting Redis instance: instancename...
mei 07 14:54:23 pindabook systemd[1]: Started Redis instance: instancename.

Daarna zorgen we dat Redis automatisch opstart als het systeem opstart:

dany@pindabook:~> sudo systemctl enable redis@instancename
Created symlink /etc/systemd/system/multi-user.target.wants/redis@instancename.service → /usr/lib/systemd/system/redis@.service.
Created symlink /etc/systemd/system/redis.target.wants/redis@instancename.service → /usr/lib/systemd/system/redis@.service.

En we proberen opnieuw Ntopng te herstarten en controleren we de werking:

dany@pindabook:~> sudo systemctl restart ntopng
[sudo] wachtwoord voor root: 
dany@pindabook:~> sudo systemctl status ntopng
× ntopng.service - ntopng high-speed web-based traffic monitoring and analysis tool
     Loaded: loaded (/usr/lib/systemd/system/ntopng.service; disabled; vendor preset: disabled)
     Active: failed (Result: start-limit-hit) since Sun 2023-05-07 14:56:55 CEST; 7s ago
    Process: 7265 ExecStart=/usr/bin/ntopng /etc/ntopng/ntopng.conf (code=killed, signal=TERM)
   Main PID: 7265 (code=killed, signal=TERM)

mei 07 14:56:55 pindabook systemd[1]: Started ntopng high-speed web-based traffic monitoring and analysis tool.
mei 07 14:56:55 pindabook ntopng[7265]: 07/May/2023 14:56:55 [Ntop.cpp:2493] Setting local networks to 127.0.0.0/8,fe80::/10
mei 07 14:56:55 pindabook ntopng[7265]: 07/May/2023 14:56:55 [Redis.cpp:157] Successfully connected to redis 127.0.0.1:6379@0
mei 07 14:56:55 pindabook ntopng[7265]: 07/May/2023 14:56:55 [Redis.cpp:157] Successfully connected to redis 127.0.0.1:6379@0
mei 07 14:56:55 pindabook systemd[1]: Stopping ntopng high-speed web-based traffic monitoring and analysis tool...
mei 07 14:56:55 pindabook systemd[1]: ntopng.service: Deactivated successfully.
mei 07 14:56:55 pindabook systemd[1]: Stopped ntopng high-speed web-based traffic monitoring and analysis tool.
mei 07 14:56:55 pindabook systemd[1]: ntopng.service: Start request repeated too quickly.
mei 07 14:56:55 pindabook systemd[1]: ntopng.service: Failed with result 'start-limit-hit'.
mei 07 14:56:55 pindabook systemd[1]: Failed to start ntopng high-speed web-based traffic monitoring and analysis tool.

Nog steeds lukt het niet om Ntopng te starten via systemd. We schakelen het automatisch opstarten van Ntopng dan maar uit:

dany@pindabook:~> sudo systemctl disable ntopng

En proberen we Ntopng manueel te starten:

dany@pindabook:~> sudo /usr/bin/ntopng /etc/ntopng/ntopng.conf
08/May/2023 15:46:42 [Ntop.cpp:2493] Setting local networks to 127.0.0.0/8,fe80::/10
08/May/2023 15:46:42 [Redis.cpp:157] Successfully connected to redis 127.0.0.1:6379@0
08/May/2023 15:46:42 [Redis.cpp:157] Successfully connected to redis 127.0.0.1:6379@0
sh: netstat: opdracht niet gevonden
08/May/2023 15:46:42 [PcapInterface.cpp:93] Reading packets from wlan1 [id: 1]
08/May/2023 15:46:42 [Ntop.cpp:2601] Registered interface wlan1 [id: 1]
08/May/2023 15:46:42 [main.cpp:331] PID stored in file /var/run/ntopng.pid
08/May/2023 15:46:42 [Geolocation.cpp:116] Running without geolocation support.
08/May/2023 15:46:42 [Geolocation.cpp:117] To enable geolocation follow the instructions at
08/May/2023 15:46:42 [Geolocation.cpp:118] https://github.com/ntop/ntopng/blob/dev/doc/README.geolocation.md
08/May/2023 15:46:42 [HTTPserver.cpp:1412] HTTPS Disabled: missing SSL certificate /usr/share/ntopng/httpdocs/ssl/ntopng-cert.pem
08/May/2023 15:46:42 [HTTPserver.cpp:1414] Please read https://github.com/ntop/ntopng/blob/dev/doc/README.SSL if you want to enable SSL.
08/May/2023 15:46:42 [HTTPserver.cpp:1691] Web server dirs [/usr/share/ntopng/httpdocs][/usr/share/ntopng/scripts]
08/May/2023 15:46:42 [HTTPserver.cpp:1694] HTTP server listening on 3000
08/May/2023 15:46:42 [Utils.cpp:781] User changed to nobody
08/May/2023 15:46:42 [NetworkInterface.cpp:2771] Started flow user script hooks loop on interface wlan1 [id: 1]...
08/May/2023 15:46:42 [NetworkInterface.cpp:2802] Started host user script hooks loop on interface wlan1 [id: 1]...
08/May/2023 15:46:42 [main.cpp:401] Working directory: /var/lib/ntopng
08/May/2023 15:46:42 [main.cpp:403] Scripts/HTML pages directory: /usr/share/ntopng
08/May/2023 15:46:42 [Ntop.cpp:479] Welcome to ntopng x86_64 v.5.0.230506 - (C) 1998-21 ntop.org
08/May/2023 15:46:42 [Ntop.cpp:914] Adding 192.168.129.29/32 as IPv4 interface address for wlan1
08/May/2023 15:46:42 [Ntop.cpp:923] Adding 192.168.128.0/23 as IPv4 local network for wlan1
08/May/2023 15:46:42 [Ntop.cpp:945] Adding 2a02:a03f:e02a:8901:5c5:9f5c:cfb2:f054/128 as IPv6 interface address for wlan1
08/May/2023 15:46:42 [Ntop.cpp:955] Adding 2a02:a03f:e02a:8901:5c5:9f5c:cfb2:f054/64 as IPv6 local network for wlan1
08/May/2023 15:46:42 [Ntop.cpp:945] Adding 2a02:a03f:e02a:8901:6569:682f:d2fa:ba63/128 as IPv6 interface address for wlan1
08/May/2023 15:46:42 [Ntop.cpp:955] Adding 2a02:a03f:e02a:8901:6569:682f:d2fa:ba63/64 as IPv6 local network for wlan1
08/May/2023 15:46:42 [Ntop.cpp:945] Adding fe80::a322:90c1:58dd:389/128 as IPv6 interface address for wlan1
08/May/2023 15:46:42 [Ntop.cpp:955] Adding fe80::a322:90c1:58dd:389/64 as IPv6 local network for wlan1
08/May/2023 15:46:46 [PeriodicActivities.cpp:107] Started periodic activities loop...
08/May/2023 15:46:46 [startup.lua:37] Processing startup.lua: please hold on...
08/May/2023 15:46:46 [startup.lua:169] [lists_utils.lua:784] Refreshing category lists...
08/May/2023 15:46:47 [startup.lua:169] [lists_utils.lua:420] Updating list 'Abuse.ch URLhaus' [https://urlhaus.abuse.ch/downloads/hostfile/]... OK
08/May/2023 15:46:47 [startup.lua:169] [lists_utils.lua:420] Updating list 'Emerging Threats' [https://rules.emergingthreats.net/fwrules/emerging-Block-IPs.txt]... OK
08/May/2023 15:46:47 [startup.lua:169] [lists_utils.lua:420] Updating list 'Feodo Tracker Botnet C2 IP Blocklist' [https://feodotracker.abuse.ch/downloads/ipblocklist.txt]... OK
08/May/2023 15:46:47 [startup.lua:169] [lists_utils.lua:420] Updating list 'NoCoin Filter List' [https://raw.githubusercontent.com/hoshsadiq/adblock-nocoin-list/master/hosts.txt]... OK
08/May/2023 15:46:47 [startup.lua:169] [lists_utils.lua:420] Updating list 'SSLBL Botnet C2 IP Blacklist' [https://sslbl.abuse.ch/blacklist/sslipblacklist.txt]... OK
08/May/2023 15:46:47 [startup.lua:169] [lists_utils.lua:420] Updating list 'SSLBL JA3' [https://sslbl.abuse.ch/blacklist/ja3_fingerprints.csv]... OK
08/May/2023 15:46:48 [startup.lua:169] [lists_utils.lua:420] Updating list 'Snort IP Block List' [https://snort.org/downloads/ip-block-list]... OK
08/May/2023 15:46:48 [startup.lua:169] [lists_utils.lua:717] Category Lists (1156 hosts, 2936 IPs, 97 JA3) loaded in 0 sec
08/May/2023 15:46:48 [startup.lua:288] Completed startup.lua
08/May/2023 15:46:48 [PeriodicActivities.cpp:168] Each periodic activity script will use 2 threads
08/May/2023 15:46:48 [NetworkInterface.cpp:2953] Started packet polling on interface wlan1 [id: 1]...

Blijkbaar start Ntopng nu wel. Met Ntopng werken we via een webbrowser door te surfen naar http://localhost:3000.

ntopng

Als we Ntopng willen gebruiken vanaf een ander computer, moeten we firewall poort 3000 openen. Zolang Ntopng werkt, mogen we de ntopng opdracht niet onderbreken. We starten dus een nieuw terminalvenster om poort 3000 in de firewall te openen:

dany@pindabook:~> sudo firewall-cmd --add-port=3000/tcp
[sudo] wachtwoord voor root: 
success

Deze opdracht opent de firewall poort tijdelijk, tot de volgende herstart. Om de firewall poort permanent te openen, gebruiken we de volgende opdracht:

dany@pindabook:~> sudo firewall-cmd --permanent --add-port=3000/tcp
success
dany@pindabook:~> sudo firewall-cmd --reload
success

Nu we weten dat Ntopng correct kan opstarten, proberen we dit te automatiseren via een ander systeem, crontab. Met de volgende opdracht kunnen we crontab taken toevoegen:

dany@pindabook:~> sudo crontab -e

Crontab werkt met de vi editor. Om de volgende regel toe te voegen, drukken we eerst op de i toets om de INVOEGEN modus te activeren. Onderstaande crontab taak (regel) start bij het opstarten van het systeem (@reboot) Ntopng en stuurt berichten door naar het bestand /home/dany/ntopng.output (vervang dany door uw eigen Homemap naam).

@reboot /usr/bin/ntopng /etc/ntopng/ntopng.conf > /home/dany/ntopng.output

Druk op de Esc om de INVOEGEN modus te verlaten. Nu we in de commando mode werken, kunnen we de aanpassingen opslaan en afsluiten door :w te typen gevolgd door Enter.

Na een herstart van het systeem, merken we dat Ntopng automatisch is opgestart en correct werkt. Meldingen, waaronder eventuele foutmeldingen kunnen we nu opvragen met de opdracht:

dany@pindabook:~> cat ntopng.output 
13/May/2023 13:34:50 [Ntop.cpp:2493] Setting local networks to 127.0.0.0/8,fe80::/10
13/May/2023 13:34:50 [Redis.cpp:157] Successfully connected to redis 127.0.0.1:6379@0
13/May/2023 13:34:50 [Redis.cpp:157] Successfully connected to redis 127.0.0.1:6379@0
13/May/2023 13:34:50 [boot.lua:22] WARNING: No connectivity detected, ntopng will run in offline mode
13/May/2023 13:34:50 [PcapInterface.cpp:93] Reading packets from wlan1 [id: 0]
13/May/2023 13:34:50 [Ntop.cpp:2601] Registered interface wlan1 [id: 0]
13/May/2023 13:34:50 [main.cpp:331] PID stored in file /var/run/ntopng.pid
13/May/2023 13:34:50 [Geolocation.cpp:116] Running without geolocation support.
13/May/2023 13:34:50 [Geolocation.cpp:117] To enable geolocation follow the instructions at
13/May/2023 13:34:50 [Geolocation.cpp:118] https://github.com/ntop/ntopng/blob/dev/doc/README.geolocation.md
13/May/2023 13:34:50 [HTTPserver.cpp:1412] HTTPS Disabled: missing SSL certificate /usr/share/ntopng/httpdocs/ssl/ntopng-cert.pem
13/May/2023 13:34:50 [HTTPserver.cpp:1414] Please read https://github.com/ntop/ntopng/blob/dev/doc/README.SSL if you want to enable SSL.
13/May/2023 13:34:50 [HTTPserver.cpp:1691] Web server dirs [/usr/share/ntopng/httpdocs][/usr/share/ntopng/scripts]
13/May/2023 13:34:50 [HTTPserver.cpp:1694] HTTP server listening on 3000
13/May/2023 13:34:50 [Utils.cpp:781] User changed to nobody
13/May/2023 13:34:50 [NetworkInterface.cpp:2771] Started flow user script hooks loop on interface wlan1 [id: 0]...
13/May/2023 13:34:50 [NetworkInterface.cpp:2802] Started host user script hooks loop on interface wlan1 [id: 0]...
13/May/2023 13:34:50 [main.cpp:401] Working directory: /var/lib/ntopng
13/May/2023 13:34:50 [main.cpp:403] Scripts/HTML pages directory: /usr/share/ntopng
13/May/2023 13:34:50 [Ntop.cpp:479] Welcome to ntopng x86_64 v.5.0.230509 - (C) 1998-21 ntop.org
13/May/2023 13:34:50 [PeriodicActivities.cpp:107] Started periodic activities loop...
13/May/2023 13:34:51 [startup.lua:37] Processing startup.lua: please hold on...
13/May/2023 13:34:51 [startup.lua:169] [lists_utils.lua:784] Refreshing category lists...
13/May/2023 13:34:51 [startup.lua:288] Completed startup.lua
13/May/2023 13:34:51 [PeriodicActivities.cpp:168] Each periodic activity script will use 2 threads
13/May/2023 13:34:51 [NetworkInterface.cpp:2953] Started packet polling on interface wlan1 [id: 0]...
13/May/2023 14:00:01 [hourly.lua:17] Connectivity restored, ntopng will now run in online mode
13/May/2023 14:00:03 [housekeeping.lua:33] [lists_utils.lua:420] Updating list 'Abuse.ch URLhaus' [https://urlhaus.abuse.ch/downloads/hostfile/]... OK
13/May/2023 14:00:21 [housekeeping.lua:33] [lists_utils.lua:420] Updating list 'Emerging Threats' [https://rules.emergingthreats.net/fwrules/emerging-Block-IPs.txt]... OK
13/May/2023 14:00:21 [housekeeping.lua:33] [lists_utils.lua:420] Updating list 'Feodo Tracker Botnet C2 IP Blocklist' [https://feodotracker.abuse.ch/downloads/ipblocklist.txt]... OK
13/May/2023 14:00:21 [housekeeping.lua:33] [lists_utils.lua:420] Updating list 'NoCoin Filter List' [https://raw.githubusercontent.com/hoshsadiq/adblock-nocoin-list/master/hosts.txt]... OK
13/May/2023 14:00:21 [housekeeping.lua:33] [lists_utils.lua:420] Updating list 'SSLBL Botnet C2 IP Blacklist' [https://sslbl.abuse.ch/blacklist/sslipblacklist.txt]... OK
13/May/2023 14:00:21 [housekeeping.lua:33] [lists_utils.lua:420] Updating list 'SSLBL JA3' [https://sslbl.abuse.ch/blacklist/ja3_fingerprints.csv]... OK
13/May/2023 14:00:21 [housekeeping.lua:33] [lists_utils.lua:420] Updating list 'Snort IP Block List' [https://snort.org/downloads/ip-block-list]... ERROR [The server returned an error [HTTP Code: 503]]
13/May/2023 14:00:21 [housekeeping.lua:33] [lists_utils.lua:717] Category Lists (1514 hosts, 3075 IPs, 97 JA3) loaded in 0 sec

Ntopng volledig van de computer verwijderen

Laten we beginnen met het afsluiten van Ntopng:

dany@pindabook:~> ps -ax | grep ntopng
 1994 ?        Ss     0:00 /bin/sh -c /usr/bin/ntopng /etc/ntopng/ntopng.conf > /home/dany/ntopng.output
 1998 ?        Sl     2:13 /usr/bin/ntopng /etc/ntopng/ntopng.conf
19325 pts/1    S+     0:00 grep --color=auto ntopng
dany@pindabook:~> sudo pkill ntopng
[sudo] wachtwoord voor root: 
dany@pindabook:~> ps -ax | grep ntopng
19380 pts/1    S+     0:00 grep --color=auto ntopng

De eerste opdracht toont ons de lopende processen (programma's) die het woord ntopng in hun opdrachtregel hebben, dus ook de zoekopdracht zelf. De tweede opdracht sluit alle processen waarin het woord ntopng voorkomt af. En de laatste opdracht toont effectief dat de 2 Ntopng processen werden afgesloten.

Ook het automatisch opstarten schakelen we door de toegevoegde regel uit de crontab taken te verwijderen. Gebruik daarbij dezelfde werkwijze als bij het toevoegen.

Ntopng zelf verwijderen we volledig met de opdracht:

dany@pindabook:~> sudo zypper remove -u ntopng
Lezen van geïnstalleerde pakketten...
Pakketafhankelijkheden oplossen...

De volgende 13 pakketten zullen worden VERWIJDERD:
  geoipupdate libdbi3 libhiredis0_13 libndpi4 libpgm-5_2-0 libradcli5 librrd8 libsodium23 libzmq5 ndpi-common ntopng redis zeromq-tools

13 te verwijderen pakketten.
Na de bewerking zal 63,4 MiB worden vrijgemaakt.
Doorgaan? [j/n/v/...? alle opties tonen] (j): 
( 1/13) Verwijderen van geoipupdate-4.2.2-1.8.1.x86_64 ........................................................................[gereed]
Failed to stop ntopng@.service: Unit name ntopng@.service is missing the instance name.
See system logs and 'systemctl status ntopng@.service' for details.
warning: /etc/ntopng/ntopng.conf saved as /etc/ntopng/ntopng.conf.rpmsave
( 2/13) Verwijderen van ntopng-5.0-lp154.1.65.x86_64 ..........................................................................[gereed]
( 3/13) Verwijderen van zeromq-tools-4.3.4-lp154.5.2.x86_64 ...................................................................[gereed]
Removed /etc/systemd/system/multi-user.target.wants/redis@instancename.service.
Removed /etc/systemd/system/redis.target.wants/redis@instancename.service.
Failed to stop redis@.service: Unit name redis@.service is missing the instance name.
See system logs and 'systemctl status redis@.service' for details.
Failed to stop redis-sentinel@.service: Unit name redis-sentinel@.service is missing the instance name.
See system logs and 'systemctl status redis-sentinel@.service' for details.
rm: cannot remove '/var/lib/systemd/migrated/redis': No such file or directory
rm: cannot remove '/var/lib/systemd/migrated/redis@': No such file or directory
rm: cannot remove '/var/lib/systemd/migrated/redis-sentinel': No such file or directory
rm: cannot remove '/var/lib/systemd/migrated/redis-sentinel@': No such file or directory
( 4/13) Verwijderen van redis-6.2.6-150400.3.16.1.x86_64 ......................................................................[gereed]
( 5/13) Verwijderen van librrd8-1.7.0-6.3.1.x86_64 ............................................................................[gereed]
( 6/13) Verwijderen van libradcli5-1.3.1-lp154.11.1.x86_64 ....................................................................[gereed]
( 7/13) Verwijderen van libndpi4-4.0-lp154.26.4.x86_64 ........................................................................[gereed]
( 8/13) Verwijderen van libhiredis0_13-0.13.3-bp154.2.55.x86_64 ...............................................................[gereed]
( 9/13) Verwijderen van libzmq5-4.3.4-lp154.5.2.x86_64 ........................................................................[gereed]
(10/13) Verwijderen van libdbi3-0.9.0.g33-1.48.x86_64 .........................................................................[gereed]
(11/13) Verwijderen van ndpi-common-4.0-lp154.26.4.x86_64 .....................................................................[gereed]
(12/13) Verwijderen van libsodium23-1.0.18-150000.4.6.1.x86_64 ................................................................[gereed]
(13/13) Verwijderen van libpgm-5_2-0-5.2.122-150400.15.6.x86_64 ...............................................................[gereed]
Er zijn actieve programma's die nog steeds bestanden en bibliotheken gebruiken die verwijderd of bijgewerkt zijn door recente opwaarderingen. Ze zouden opnieuw gestart moeten worden om voordeel te hebben van de laatste vormen van bijwerken. Voer 'zypper ps -s' uit om een lijst met deze programma's te maken.

Om de toegevoegde softwarebron en bijhorende GPG-sleutel te verwijderen, moeten we eerst de bij de softwarebron horende sleutel opsporen. Een lijst met GPG-sleutels die door het softwarebeheer gebruikt worden, vragen we op met de opdracht:

dany@pindabook:~> rpm -q gpg-pubkey --qf '%{NAME}-%{VERSION}-%{RELEASE}\t%{SUMMARY}\n'
gpg-pubkey-307e3d54-5aaa90a5    gpg(SuSE Package Signing Key )
gpg-pubkey-39db7c82-5f68629b    gpg(SuSE Package Signing Key )
gpg-pubkey-3dbdc284-53674dd4    gpg(openSUSE Project Signing Key )
gpg-pubkey-65176565-61a0ee8f    gpg(openSUSE:Backports OBS Project )
gpg-pubkey-1abd1afb-54176598    gpg(PackMan Project (signing key) )
gpg-pubkey-ee454f98-6383dee4    gpg(server:monitoring OBS Project )

De GPG-sleutel voor de security softwarebron staat in het voorbeeld als laatste en heeft als referentie gpg-pubkey-ee454f98-6383dee4. Deze referentie hebben we nodig om de GPG-sleutel te verwijderen met:

dany@pindabook:~> sudo rpm -e gpg-pubkey-ee454f98-6383dee4
[sudo] wachtwoord voor root:

Door het verwijderen van de GPG-sleutel vertrouwen we de softwarebron niet langer. De softwarebron server:monitoring zelf, verwijderen we met de opdracht:

dany@pindabook:~> sudo zypper removerepo server:monitoring
Opslagruimte 'server:monitoring' wordt verwijderd .............................................................................[gereed]
Opslagruimte 'server:monitoring' is verwijderd.

En uiteindelijk mag poort 3000 van de firewall terug dicht:

dany@pindabook:~> sudo firewall-cmd --permanent --remove-port=3000/tcp
success
dany@pindabook:~> sudo firewall-cmd --reload
success