1NTOP(8)                     System Manager's Manual                    NTOP(8)
2
3
4

NAME

6       ntop - display top network users
7

SYNOPSIS

9       ntop  [@filename] [-a|--access-log-file <path>] [-b|--disable-decoders]
10       [-c|--sticky-hosts]    [-e|--max-table-rows]    [-f|--traffic-dump-file
11       file>]   [-g|--track-local-hosts]  [-h|--help]  [-l|--pcap-log  <path>]
12       [-m|--local-subnets <addresses>] [-n|--numeric-ip-addresses] [-p|--pro‐
13       tocols   <list>]   [-q|--create-suspicious-packets]  [-r|--refresh-time
14       <number>]   [-s|--no-promiscuous]   [-t|--trace-level   <number>]   [-x
15       <max_num_hash_entries>]  [-w|--http-server  <port>]  [-z|--disable-ses‐
16       sions]   [-A|--set-admin-password   password]   [-B|--filter-expression
17       expression]  [-C  <configmode>]  [-D|--domain  <name>]  [-F|--flow-spec
18       <specs>] [-M|--no-interface-merge] [-N|--wwn-map  <path>]  [-O|----out‐
19       put-packet-path  <path>]  [-P|--db-file-path  <path>] [-Q|--spool-file-
20       path <path>] [-U|--mapper <URL>] [-V|--version]  [-X  <max_num_TCP_ses‐
21       sions>]    [--disable-instantsessionpurge]   [--disable-mutexextrainfo]
22       [--disable-ndpi] [--disable-python] [--instance] [--p3p-cp] [--p3p-uri]
23       [--skip-version-check] [--w3c] [-4|--ipv4] [-6|--ipv6]
24
25       Unix options:
26
27       [-d|--daemon]  [-i|--interface <name>] [-u|--user <user>] [-K|--enable-
28       debug] [-L]  [--pcap_setnonblock]  [--use-syslog=  <facility>]  [--web‐
29       server-queue <number>]
30
31       Windows option:
32
33       [-i|--interface <number|name>]
34
35       OpenSSL options:
36
37       [-W|--https-server <port>] [--ssl-watchdog]
38
39

DESCRIPTION

41       ntop  shows the current network usage. It displays a list of hosts that
42       are currently using the network and reports information concerning  the
43       (IP  and non-IP) traffic generated and received by each host.  ntop may
44       operate as a front-end collector (sFlow and/or netFlow plugins) or as a
45       stand-alone  collector/display  program.  A  web  browser  is needed to
46       access the information captured by the ntop program.
47
48       ntop is a hybrid layer 2 / layer 3 network monitor, that is by  default
49       it  uses the layer 2 Media Access Control (MAC) addresses AND the layer
50       3 tcp/ip addresses.  ntop is capable of associating the two, so that ip
51       and non-ip traffic (e.g. arp, rarp) are combined for a complete picture
52       of network activity.
53
54

COMMAND-LINE OPTIONS

56       @filename
57        The text of filename is copied -  ignoring  line  breaks  and  comment
58        lines  (anything following a #) - into the command line.  ntop behaves
59        as if all of the text had simply been typed directly  on  the  command
60        line.   For example, if the command line is "-t 3 @d -u ntop" and file
61        d contains just the line '-d', then the effective command line is -t 3
62        -d  -u  ntop.   Multiple  @s are permitted. Nested @s (an @ inside the
63        file) are not permitted.
64
65        Remember, most ntop options are "sticky", that is  they  just  set  an
66        internal  flag.  Invoking  them  multiple  times doesn't change ntop's
67        behavior. However, options that set a value,  such  as  --trace-level,
68        will  use  the  LAST value given: --trace-level 2 --trace-level 3 will
69        run as --trace-level 3.
70
71        Beginning with 3.1, many command-line options may also be set via  the
72        web  browser  interface.  These changes take effect on the next run of
73        and on each subsequent run until changed.
74
75
76
77       -a | --access-log-file
78        By default ntop does not maintain a log of HTTP requests to the inter‐
79        nal  web server.  Use this parameter to request logging and to specify
80        the location of the file where these HTTP requests are logged.
81
82        Each log entry is in Apache-like style.  The only  difference  between
83        Apache and ntop logs is that an additional column has been added which
84        has the time (in milliseconds) that ntop needed to serve the  request.
85        Log entries look like this:
86
87        192.168.1.1 - - [04/Sep/2003:20:38:55 -0500] - "GET / HTTP/1.1" 200 1489 4
88        192.168.1.1 - - [04/Sep/2003:20:38:55 -0500] - "GET /index_top.html HTTP/1.1" 200 1854 4
89        192.168.1.1 - - [04/Sep/2003:20:38:55 -0500] - "GET /index_inner.html HTTP/1.1" 200 1441 7
90        192.168.1.1 - - [04/Sep/2003:20:38:56 -0500] - "GET /index_left.html HTTP/1.1" 200 1356 4
91        192.168.1.1 - - [04/Sep/2003:20:38:56 -0500] - "GET /home_.html HTTP/1.1" 200 154/617 9
92        192.168.1.1 - - [04/Sep/2003:20:38:56 -0500] - "GET /home.html HTTP/1.1" 200 1100/3195 10
93        192.168.1.1 - - [04/Sep/2003:20:38:56 -0500] - "GET /About.html HTTP/1.1" 200 2010 10
94
95        This  parameter is the complete file name of the access log.  In prior
96        releases it was erroneously called --access-log-path.
97
98
99       -b | --disable-decoders
100        This parameter disables protocol decoders.
101
102        Protocol decoders examine and collect information about layer 2 proto‐
103        cols  such as NetBIOS or Netware SAP, as well as about specific tcp/ip
104        (layer 3) protocols, such as DNS, http and ftp.
105
106        This support is specifically coded for each protocol and is  different
107        from  the  capability  to count raw information (packets and bytes) by
108        protocol specified by the -p | --protocols parameter, below.
109
110        Decoding protocols is a significant consumer of resources. If the ntop
111        host  is  underpowered or monitoring a very busy network, you may wish
112        to disable protocol decoding via  this  parameter.   It  may  also  be
113        appropriate  to  use this parameter if you believe that ntop has prob‐
114        lems handling some protocols that occur on your network.
115
116        Even if decoding is disabled, ftp-data traffic  is  still  decoded  to
117        look for passive ftp port commands.
118
119
120       -c | --sticky-hosts
121        Use  this  parameter to prevent idle hosts from being purged from mem‐
122        ory.
123
124        By default idle hosts are periodically purged from  memory.   An  idle
125        host is identified when no packets from or to that host have been mon‐
126        itored  for  the  period   of   time   defined   by   the   value   of
127        PARM_HOST_PURGE_MINIMUM_IDLE in globals-defines.h.
128
129        If  you use this option, all hosts - active and idle - are retained in
130        memory for the duration of the ntop run.
131
132        P2P users, port scans, popular web servers  and  other  activity  will
133        cause ntop to record data about a large number of hosts.  On an active
134        network, this will consume a significant - and always growing - amount
135        of  memory.   It  is  strongly  recommended  that  you use a filtering
136        expression to limit the hosts which are stored if  you  use  --sticky-
137        hosts.
138
139        The idle purge is a statistical one - a random selection of the eligi‐
140        ble hosts will be purged during each cycle.  Thus it is possible on  a
141        busy  system  for an idle host to remain in the ntop tables and appear
142        'active' for some considerable time after it is truly idle.
143
144
145       -d | --daemon
146        This parameter causes ntop to become a daemon, i.e. a task which  runs
147        in  the  background without connection to a specific terminal.  To use
148        ntop other than as a casual monitoring tool, you probably will want to
149        use this option.
150
151        WARNING:  If  you are running as a daemon, the messages from ntop will
152        be 'printed' on to stdout and thus dropped.  You probably  don't  want
153        to do this.  So remember to also use the -L or --use-syslog options to
154        save the messages into the system log.
155
156
157       -e | --max-table-rows
158        This defines the maximum number of lines that  ntop  will  display  on
159        each generated HTML page. If there are more lines to be displayed than
160        this setting permits, only part of the data will be displayed.   There
161        will  be page forward/back arrows placed at the bottom of the page for
162        navigation between pages.
163
164
165       -f | --traffic-dump-file
166        By default, ntop captures traffic from network interface cards  (NICs)
167        or from netFlow/sFlow probes.  However, ntop can also read data from a
168        file - typically a tcpdump capture or the output from one of the  ntop
169        packet capture options.
170
171        if  you specify -f, ntop will not capture any traffic from NICs during
172        or after the file has been read.  netFlow/sFlow capture - if enabled -
173        would still be active.
174
175        This option is mostly used for debug purposes.
176
177
178       -g | --track-local-hosts
179        By  default,  ntop tracks all hosts that it sees from packets captured
180        on the various NICs.  Use this parameter to tell ntop to capture  data
181        only  about  local  hosts.   Local  hosts  are  defined  based  on the
182        addresses of the NICs and those networks identified as local  via  the
183        -m | --local-subnets parameter.
184
185        This  parameter  is  useful  on  large networks or those that see many
186        hosts, (e.g. a border router  or  gateway),  where  information  about
187        remote hosts is not desired/required to be tracked.
188
189
190       -h | --help
191        Print help information for ntop, including usage and parameters.
192
193
194       -i | --interface
195        Specifies  the  network interface or interfaces to be used by ntop for
196        network monitoring.
197
198        If multiple interfaces are used (this feature  is  available  only  if
199        ntop  is  compiled  with thread support) their names must be separated
200        with a comma. For instance -i "eth0,lo".
201
202        If not specified, the default is the first Ethernet device, e.g. eth0.
203        The specific device that is 'first' is highly system dependent.  Espe‐
204        cially on systems where the  device  name  reflects  the  driver  name
205        instead of the type of interface.
206
207        By  default,  traffic  information  obtained  by all the interfaces is
208        merged together as if the traffic was seen by only one interface.  Use
209        the -M parameter to keep traffic separate by interface.
210
211        If you do not want ntop to monitor any interfaces, use -i none.
212
213        Under  Windows, the parameter value is either the number of the inter‐
214        face or its name, e.g.   {6252C14C-44C9-49D9-BF59-B2DC18C7B811}.   Run
215        ntop -h to see a list of interface name-number mappings (at the end of
216        the help information).
217
218
219       -l | --pcap-log
220        This parameter causes a dump file to be created of the network traffic
221        captured  by  ntop  in tcpdump (pcap) format.  This file is useful for
222        debug, and may be read back into ntop by the -f |  --traffic-dump-file
223        parameter.   The dump is made after processing any filter expression (
224        never even sees filtered packets).
225
226        The output file will  be  named  <path>/<log>.<device>.pcap  (Windows:
227        <path>/<log>.pcap  ),  where  <path>  is defined by the -O | --output-
228        packet-path parameter and <log> is defined by  this  -l  |  --pcap-log
229        parameter.
230
231
232       -m | --local-subnets
233        ntop  determines  the ip addresses and netmasks for each active inter‐
234        face.  Any traffic on those networks is considered local.  This param‐
235        eter  allows  the  user  to define additional networks and subnetworks
236        whose traffic is also considered local  in  ntop  reports.  All  other
237        hosts are considered remote.
238
239        Commas  separate multiple network values.  Both netmask and CIDR nota‐
240        tion   may   be   used,   even   mixed    together,    for    instance
241        "131.114.21.0/24,10.0.0.0/255.0.0.0".
242
243        The  local  subnet  - as defined by the interface address(es) - is/are
244        always local and do not need to be specified.  If you do give the same
245        value as a NIC's local address, a harmless warning message is issued.
246
247
248       -n | --numeric-ip-addresses
249        By  default,  ntop resolves IP addresses using a combination of active
250        (explicit)  DNS  queries  and  passive  sniffing.   Sniffing  of   DNS
251        responses  occurs  when  ntop receives a network packet containing the
252        response to some other user's DNS query.  ntop captures this  informa‐
253        tion  and  enters  it into ntop's DNS cache, in expectation of shortly
254        seeing traffic addressed to that host.  This  way  ntop  significantly
255        reduces the number of DNS queries it makes.
256
257        This  parameter  causes  ntop  to  skip  DNS  resolution, showing only
258        numeric IP addresses instead of the symbolic names.  This  option  can
259        useful when the DNS is not present or quite slow.
260
261
262       -p | --protocols
263        This parameter is used to specify the TCP/UDP protocols that ntop will
264        monitor. The format is <label>=<protocol  list>  [,  <label>=<protocol
265        list>],  where  label  is  used to symbolically identify the <protocol
266        list>. The format of <protocol list> is <protocol>[|<protocol>], where
267        <protocol>  is  either a valid protocol specified inside the /etc/ser‐
268        vices file or a numeric port range (e.g. 80, or 6000-6500).
269
270        A simple example is --protocols="HTTP=http|www|https|3128,FTP=ftp|ftp-
271        data",  which  reduces  the  protocols  displayed on the "IP" pages to
272        three:
273
274        Host                      Domain Data          HTTP   FTP   Other IP
275        ns2.attbi.com             <flag>  954 63.9 %      0     0        954
276        64.124.83.112.akamai.com  <flag>  240 16.1 %    240     0          0
277        64.124.83.99.akamai.com   <flag>  240 16.1 %    240     0          0
278        toolbarqueries.google.com <flag>   60 4.0 %      60     0          0
279
280        If the <protocol list> is very long you may store it in  a  file  (for
281        instance  protocol.list).   To do so, specify the file name instead of
282        the <protocol list> on the command line.  e.g.  ntop -p protocol.list
283
284        If the -p parameter is omitted the following default value is used:
285
286          FTP=ftp|ftp-data
287          HTTP=http|www|https|3128     3128 is Squid, the HTTP cache
288          DNS=name|domain
289          Telnet=telnet|login
290          NBios-IP=netbios-ns|netbios-dgm|netbios-ssn
291          Mail=pop-2|pop-3|pop3|kpop|smtp|imap|imap2
292          DHCP-BOOTP=67-68
293          SNMP=snmp|snmp-trap
294          NNTP=nntp
295          NFS=mount|pcnfs|bwnfs|nfsd|nfsd-status
296          X11=6000-6010
297          SSH=22
298
299          Peer-to-Peer Protocols
300          ----------------------
301          Gnutella=6346|6347|6348
302          Kazaa=1214
303          WinMX=6699|7730
304          DirectConnect=0      Dummy port as this is a pure P2P protocol
305          eDonkey=4661-4665
306
307          Instant Messenger
308          -----------------
309          Messenger=1863|5000|5001|5190-5193
310
311        NOTE: To resolve protocol names to port numbers, they must  be  speci‐
312        fied  in  the  system  file  used to list tcp/udp protocols and ports,
313        which is typically /etc/services file.  You will  have  to  match  the
314        names  in  that  file, exactly.  Missing or unspecified (non-standard)
315        ports must be specified by number, such as 3128 in our examples above.
316
317        If you have a file named /etc/protocols, don't get confused by it,  as
318        that's  the Ethernet protocol numbers, which are not what you're look‐
319        ing for.
320
321
322       -q | --create-suspicious-packets
323        This parameter tells ntop to create a dump file of suspicious packets.
324
325        There are many, many, things that cause a  packet  to  be  labeled  as
326        'suspicious', including:
327
328          Detected ICMP fragment
329          Detected Land Attack against host
330          Detected overlapping/tiny packet fragment
331          Detected traffic on a diagnostic port
332          Host performed ACK/FIN/NULL scan
333          Host rejected TCP session
334          HTTP/FTP/SMTP/SSH detected at wrong port
335          Malformed TCP/UDP/ICMP packet (packet too short)
336          Packet # %u too long
337          Received a ICMP protocol Unreachable from host
338          Sent ICMP Administratively Prohibited packet to host
339          Smurf packet detected for host
340          TCP connection with no data exchanged
341          TCP session reset without completing 3-way handshake
342          Two MAC addresses found for the same IP address
343          UDP data to a closed port
344          Unknown protocol (no HTTP/FTP/SMTP/SSH) detected (on port 80/21/25/22)
345          Unusual ICMP options
346
347        When  this  parameter  is  used,  one file is created for each network
348        interface where suspicious packets are found. The file is  in  tcpdump
349        (pcap)  format and is named <path>/ntop-suspicious-pkts.<device>.pcap,
350        where <path> is defined by the -O | --output-packet-path parameter.
351
352
353       -r | --refresh-time
354        Specifies the delay (in seconds) between automatic screen updates  for
355        those  generated HTML pages which support them.  This parameter allows
356        you to leave your browser window open and have  it  always  displaying
357        nearly real-time data from ntop.
358
359        The default is 3 seconds.  Please note that if the delay is very short
360        (1 second for instance), ntop might not be able to process all of  the
361        network traffic.
362
363
364       -s | --no-promiscuous
365        Use  this parameter to prevent from setting the interface(s) into pro‐
366        miscuous mode.
367
368        An interface in promiscuous mode  will  accept  ALL  Ethernet  frames,
369        regardless  of  whether they directed (addressed) to the specific net‐
370        work interface (NIC) or not.  This is an essential  part  of  enabling
371        ntop  to  monitor  an entire network.  (Without promiscuous mode, ntop
372        will only see traffic directed to the specific host it is running  on,
373        plus broadcast traffic such as the arp and dhcp protocols.
374
375        Even if you use this parameter, the interface could well be in promis‐
376        cuous mode if another application enabled it.
377
378        ntop passes this setting on to libpcap, the  packet  capture  library.
379        On  many systems, a non-promiscuous open of the network interface will
380        fail, since the libpcap function on most systems require it to capture
381        raw  packets  ( ntop captures raw packets so that we may view and ana‐
382        lyze the layer 2 - MAC - information).
383
384        Thus on most systems, ntop must probably still be started as root, and
385        this  option  is  largely  ornamental.   If  it  fails, you will see a
386        ***FATALERROR*** message referring to  pcap_open_live()  and  then  an
387        information  message,  "Sorry,  but  on  this system, even with -s, it
388        appears that ntop must be started as root".
389
390
391       -t | --trace-level
392        This parameter specifies the 'information' level of messages that  you
393        wish  ntop to display (on stdout or to the log).  The higher the trace
394        level number the more information that is displayed.  The trace  level
395        ranges between 0 (no trace) and 5 (full debug tracings).
396
397        The default trace value is 3.
398
399        Trace  level  0  is  not quite zero messages. Fatal errors and certain
400        startup/shutdown messages are always displayed.  Trace level 1 is used
401        to  display  errors  only,  level  2 for both errors and warnings, and
402        level 3 displays error, warning and informational messages.
403
404        Trace level 4 is called 'noisy' and it is - generating  many  messages
405        about  the  internal functioning of ntop.  Trace level 5 and above are
406        'noisy' plus extra logs, i.e. all possible messages, with a  file:line
407        tag prepended to every message.
408
409
410       -u | --user
411        Specifies the user ntop should run as after it initializes.
412
413        ntop must normally be started as root so that it has sufficient privi‐
414        leges to open the  network  interfaces  in  promiscuous  mode  and  to
415        receive  raw  frames.   See  the  discussion  of -s | --no-promiscuous
416        above, if you wish to try starting ntop as a non-root user.
417
418        Shortly after starting up, ntop becomes the  user  you  specify  here,
419        which  normally has substantially reduced privileges, such as no login
420        shell.  This is the userid  which  owns  ntop's  database  and  output
421        files.
422
423        The  value  specified  may  be either a username or a numeric user id.
424        The group id used will be the primary group of the user specified.
425
426        If this parameter is not specified, ntop will try to switch  first  to
427        'nobody' and then to 'anonymous' before giving up.
428
429        NOTE:  This  should not be root unless you really understand the secu‐
430        rity risks. In order to prevent this by accident, the only way to  run
431        ntop as root is to explicitly specify -u root.  Don't do it.
432
433
434       -x
435
436       -X
437        ntop creates a new hash/list entry for each new host/TCP session seen.
438        In case of DOS (Denial Of Service) an attacker can easily exhaust  all
439        the  host  available memory because ntop is creating entries for dummy
440        hosts. In order to avoid this you can set an upper limit in  order  to
441        limit the memory ntop can use.
442
443
444       -w | --http-server
445
446       -W | --https-server
447        ntop offers an embedded web server to present the information that has
448        been so painstakingly  gathered.   An  external  HTTP  server  is  NOT
449        required  NOR  supported.   The  ntop  web server is embedded into the
450        application.  These parameters specify the port  (and  optionally  the
451        address (i.e. interface)) of the ntop web server.
452
453        For  example,  if  started with -w 3000 (the default port), the URL to
454        access ntop is http://hostname:3000/.  If started with a full specifi‐
455        cation,   e.g.   -w   192.168.1.1:3000,  ntop  listens  on  only  that
456        address/port combination.
457
458        If -w is set to 0 the web server will not listen for  http://  connec‐
459        tions.
460
461        -W  operates similarly, but controls the port for the https:// connec‐
462        tions.
463
464        Some examples:
465
466        ntop -w 3000 -W 0 (this is the default setting) HTTP requests on  port
467        3000 and no HTTPS.
468
469        ntop  -w 80 -W 443 Both HTTP and HTTPS have been enabled on their most
470        common ports.
471
472        ntop -w 0 -W 443 HTTP disabled, HTTPS enabled on the common port.
473
474        Certain sensitive, configuration pages of the ntop web server are pro‐
475        tected  by  a  userid/password.   By  default,  these are the user/URL
476        administration, filter, shutdown and reset  stats  are  password  pro‐
477        tected
478         and  are  accessible initially only to user admin with a password set
479        during the first run of ntop.
480
481        Users can modify/add/delete users/URLs using ntop  itself  -  see  the
482        Admin tab.
483
484        The  passwords,  userids and URLs to protect with passwords are stored
485        in a database file.  Passwords are stored in an encrypted form in  the
486        database  for further security.  Best practices call for securing that
487        database so that only the ntop user can read it.
488
489        There is a discussion in docs/FAQ  about  further  securing  the  ntop
490        environment.
491
492
493       -z | --disable-sessions
494        This  parameter disables TCP session tracking.  Use it for better per‐
495        formance or when you don't really need/care to track sessions.
496
497
498       -A | --set-admin-password
499        This parameter is used to start ntop ,  set  the  admin  password  and
500        quit. It is quite useful for installers that need to automatically set
501        the password for the admin user.
502
503        -A and --set-admin-password (without a value) will prompt the user for
504        the password.
505
506        You  may  also use this parameter to set a specific value using --set-
507        admin-password=value.  The = is REQUIRED and no spaces are permitted!
508
509        If you attempt to run ntop as a daemon without setting a  password,  a
510        FATAL ERROR message is generated and ntop stops.
511
512
513       -B | --filter-expression
514        Filters  allows  the user to restrict the traffic seen by ntop on just
515        about any imaginable item.
516
517        The filter expression is set at run time by this parameter, but it may
518        be changed during the ntop run on the Admin | Change Filter web page.
519
520        The basic format is -B filter , where the quotes are REQUIRED
521
522        The syntax of the filter expression uses the same BPF (Berkeley Packet
523        Filter) expressions used by other packages such as tcpdump
524
525        For instance, suppose you are interested only in  the  traffic  gener‐
526        ated/received  by  the  host  jake.unipi.it.  ntop can then be started
527        with the following filter:
528
529        ntop -B src host jake.unipi.it or dst host jake.unipi.it
530
531        or in shorthand:
532
533        ntop -B host jake.unipi.it or host jake.unipi.it
534
535        See the 'expression' section of the tcpdump man page - usually  avail‐
536        able at http://www.tcpdump.org/tcpdump_man.html - for further informa‐
537        tion and the best quick guide to BPF filters currently available.
538
539        WARNING: If you are using complex filter expressions, especially those
540        with  =s or meaningful spaces in them, be sure and use the long option
541        format, --filter-expression="xxxx" and not -B "xxxx".
542
543
544
545       -C |
546        This instruments ntop to be used in two configurations: host and  net‐
547        work  mode.  In  host  mode  (default)  ntop  works  as  usual: the IP
548        addresses received are those of  real  hosts.  In  host  mode  the  IP
549        addresses  received  are  those  of  the  C-class network to which the
550        address belongs. Using ntop in network mode is extremely  useful  when
551        installed  in  a traffic exchange (e.g. in the middle of the Internet)
552        whereas the host mode should be used when ntop  is  installed  on  the
553        edge  of  a network (e.g. inside a company). The network mode signifi‐
554        cantly reduces the amount of work ntop has to perform and it has to be
555        used  whenever  ntop is used to find out how the network traffic flows
556        and not to pin-point specific hosts.
557
558
559
560       -D | --domain
561        This identifies the local domain suffix, e.g.  ntop.org.   It  may  be
562        necessary, if ntop is having difficulty determining it from the inter‐
563        face.
564
565
566       -F | --flow-spec
567        It is used to specify network flows similar to more powerful  applica‐
568        tions  such  as NeTraMet.  A flow is a stream of captured packets that
569        match a specified rule. The format is
570
571        <flow-label>='<matching expression>'[,<flow-label>='<matching  expres‐
572        sion>']
573
574        ,  where the label is used to symbolically identify the flow specified
575        by the expression.  The expression is a bpf (Berkeley  Packet  Filter)
576        expression.  If  an expression is specified, then the information con‐
577        cerning flows can be accessed following the HTML link named 'List Net‐
578        Flows'.
579
580        For  instance  define  two  flows  with the following expression Luca‐
581        Hosts='host jake.unipi.it or  host  pisanino.unipi.it',GatewayRoutedP‐
582        kts='gateway gateway.unipi.it' .
583
584        All    the   traffic   sent/received   by   hosts   jake.unipi.it   or
585        pisanino.unipi.it is collected by ntop  and  added  to  the  LucaHosts
586        flow,  whereas  all  the packet routed by the gateway gateway.unipi.it
587        are added to the GatewayRoutedPkts flow. If the  flows  list  is  very
588        long you may store in a file (for instance flows.list) and specify the
589        file name instead of the actual flows list (in the above example, this
590        would be 'ntop -F flows.list').
591
592        Note  that the double quotations around the entire flow expression are
593        required.
594
595
596       -K | --enable-debug
597        Use this parameter to  simplify  application  debug.   It  does  three
598        things: 1. Does not fork() on the "read only" html pages.  2. Displays
599        mutex values on the configuration (info.html) page.  3. (If  available
600        - glibc/gcc) Activates an automated backtrace on application errors.
601
602
603       -L | --use-syslog=facility
604        Use  this  parameter to send log messages to the system log instead of
605        stdout.
606
607        -L and the simple form --use-syslog  use  the  default  log  facility,
608        defined as LOG_DAEMON in the #define symbol DEFAULT_SYSLOG_FACILITY in
609        globals-defines.h.
610
611        The complex form, --use-syslog=facility will set the log  facility  to
612        whatever value (e.g. local3, security) you specify.  The = is REQUIRED
613        and no spaces are allowed!
614
615        This setting applies both to  ntop  and  to  any  child  fork()ed  for
616        reporting.   If  this  parameter  is not specified, any fork()ed child
617        will use the default value and will log it's messages  to  the  system
618        log  (this  occurs because the fork()ed child must give up it's access
619        to the parents stdout).
620
621        Because various systems do not make the permissible  names  available,
622        we  have  a  table at the end of globals-core.c.  Look for myFacility‐
623        Names.
624
625
626       -M | --no-interface-merge
627        By default, ntop merges the data collected from all of the  interfaces
628        (NICs) it is monitoring into a single set of counters.
629
630        If you have a simple network, say a small LAN with a connection to the
631        internet, merging data is good as it gives you a better picture of the
632        whole  network.   For  larger,  more complex networks, this may not be
633        desirable.  You may also have other reasons  for  wishing  to  monitor
634        each interface separately, for example DMZ vs. LAN traffic.
635
636        This  option  instructs ntop not to merge network interfaces together.
637        This means that ntop will collect statistics for  each  interface  and
638        report them separately.
639
640        Only  ONE  interface  may  be  reported on at a time - use the Admin |
641        Switch NIC option on the web  server  to  select  which  interface  to
642        report upon.
643
644        Note  that  activating  either  the  netFlow and/or sFlow plugins will
645        force the setting of -M.  Once enabled, you cannot go back.
646
647
648       -N | --wwn-map
649        This options names the file providing the map of WWN to FCID/VSAN ids.
650
651
652       -O | --output-packet-path
653        This  parameter  defines  the  base  path  for  the   ntop-suspicious-
654        pkts.XXX.pcap and normal packet dump files.
655
656        If  this parameter is not specified, the default value is the config.h
657        parameter CFG_DBFILE_DIR, which is set  during  ./configure  from  the
658        --localstatedir=  parameter.   If --localstatedir is not specified, it
659        defaults to the --prefix value plus /var (e.g. /usr/local/var).
660
661        Be aware that this may not be what you expect when running ntop  as  a
662        daemon or Windows service. Setting an explicit and absolute path value
663        is STRONGLY recommended if you use this facility.
664
665
666       -P | --db-file-path
667
668       -Q | --spool-file-path
669        These parameters specify where ntop stores database files.
670
671        There are two types, 'temporary' - that is  ones  which  need  not  be
672        retained  from  ntop  run  to ntop run, and 'permanent', which must be
673        retained (or recreated).
674
675        The 'permanent' databases are the preferences, "prefsCache.db" and the
676        password  file, "ntop_pw.db".  These are stored in the -P | --db-file-
677        path specified location.
678
679        Certain plugins use the -P |  --db-file-path  specified  location  for
680        their  database  ("LsWatch.db")  or  (as  a  default  value) for files
681        (.../rrd/...).
682
683        The 'temporary' databases are the  address  queue,  "addressQueue.db",
684        the  cached  DNS resolutions, "dnsCache.db" and the MAC prefix (vendor
685        table), "macPrefix.db".
686
687        If only -P | --db-file-path is specified, it is used for both types of
688        databases.
689
690        The  directories  named must allow read/write and file creation by the
691        ntop user.  For security, nobody else should have even read access  to
692        these files.
693
694        Note  that the default value is the config.h parameter CFG_DBFILE_DIR.
695        This is set during ./configure from  the  --localstatedir=  parameter.
696        If --localstatedir is not specified, it defaults to the --prefix value
697        plus /var (e.g. /usr/local/var).
698
699        This may not be what you expect when running ntop as a daemon or  Win‐
700        dows service.
701
702        Note that on versions of ntop prior to 2.3, these parameters defaulted
703        to "." (the current working directory, e.g.  the value returned by the
704        pwd  command)  and  caused havoc as it was different when ntop was run
705        from the command line, vs. run via cron, vs. run from  an  initializa‐
706        tion script.
707
708        Setting an explicit and absolute path value is STRONGLY recommended.
709
710
711       -U | --mapper
712        Specifies the URL of the mapper.pl utility.
713
714        If  provided,  ntop  creates  a clickable hyperlink on the 'Info about
715        host xxxxxx' page to this URL by appending ?host=xxxxx.  Any  type  of
716        host  lookup  could  be  performed, but this is intended to lookup the
717        geographical location of the host.
718
719        A cgi-based mapper interface to http://www.multimap.com is part of the
720        ntop distribution [see www/Perl/mapper.pl]).
721
722
723       -V | --version
724        Prints ntop version information and then exits.
725
726
727       -W | --https-server
728        (See the joint documentation with the -w parameter, above)
729
730
731       --disable-instantsessionpurge
732        ntop sets completed sessions as 'timed out' and then purge them almost
733        instantly, which is not the behavior you might expect from the discus‐
734        sions  about purge timeouts.  This switch makes ntop respect the time‐
735        outs for completed sessions.  It is NOT the default because a busy web
736        server  may  have  100s  or 1000s of completed sessions and this would
737        significantly increase the amount of memory ntop uses.
738
739
740       --disable-mutexextrainfo
741        ntop stores extra information about the locks and unlocks of the  pro‐
742        tective  mutexes  it  uses. Since ntop uses fine-grained locking, this
743        information is updated frequently.  On some  OSes,  the  system  calls
744        used  to  collect  this  informatio  (getpid() and gettimeofday()) are
745        expensive.  This option disables the  extra  information.   It  should
746        have no processing impact on ntop
747         -  however  should ntop actually deadlock, we would lose the informa‐
748        tion that sometimes tells us why.
749
750
751       --disable-ndpi
752        ntop is started without nDPI support thus  application  protocols  are
753        not recognized.
754
755
756       --disable-python
757        ntop  is  started  without the Python interpreter. Beware as some ntop
758        reports are based on python,  thus  disabling  it  will  prevent  some
759        reports to work properly.
760
761
762       --instance
763
764        You  can  run  multiple instances of ntop simultaneously by specifying
765        different -P values (typically through separate ntop.conf files).   If
766        you  set  a  value  for  this parameter (available only on the command
767        line), you (1) display the 'instance' name on every web page  and  (2)
768        alter the log prefix from "NTOP" to your chosen value.
769
770        If  you want to make the tag more obvious, create a .instance class in
771        style.css, e.g.:
772
773           .instance {
774             color: #666666;
775             font-size: 18pt;
776           }
777
778        Note (UNIX): To run completely different versions of the ntop  binary,
779        you need to compile and install into a different library (using ./con‐
780        figure --prefix) and then specify the LD_LIBRARY_PATH before invoking,
781        e.g.
782
783        LD_LIBRARY_PATH=/devel/lib/ntop/:... /devel/bin/ntop ...args...
784
785        If  present,  a file of the form <instance>_ntop_logo.gif will be used
786        instead of the normal ntop_logo.gif.  This is tested for ONLY once, at
787        the  beginning  of  the run.  The EXACT word(s) of the --instance flag
788        are used, without testing if they make a proper file name.  If  -  for
789        any reason - the file is not found, an informational message is logged
790        and the normal logo file is used.  To construct your own logo, make it
791        a 300x40 transparent gif.
792
793        NOTE: On the web pages, ntop uses the dladdr() function.  The original
794        Solaris routine had a bug, replicated in FreeBSD (and  possibly  other
795        places)  where  it uses the ARGV[0] value - which might be erroneous -
796        instead of the actual file name.  If the 'running  from'  value  looks
797        bogus but the 'libaries in' value looks ok, go with the libarary.
798
799
800       --p3p-cp
801
802       --p3p-uri
803
804        P3P is a W3C recommendation - http://www.w3.org/TR/P3P/ - for specify‐
805        ing personal information a site collects and what  it  does  with  the
806        information.  These parameters allow to return P3P information.  We do
807        not supply samples.
808
809
810       --pcap_setnonblock
811        On some platforms, the ntop web server will hang or appear to hang (it
812        actually  just  responds incredibly slowly to the first request from a
813        browser session), while the rest of ntop runs just fine. This is known
814        to be an issue under FreeBSD 4.x.
815
816        This  option  sets the non-blocking option (assuming it's available in
817        the version of libpcap that is installed).
818
819        While this works around the problem  (by  turing  an  interupt  driven
820        process into a poll), it also MAY signifcantly increases the cpu usage
821        of ntop.  Although it does not actually  interfere  with  other  work,
822        seeing  ntop use 80-90% or more of the cpu is not uncommon - don't say
823        we didn't warn you.
824
825        THIS OPTION IS OFFICIALLY UNSUPPORTED and used at your own risk.  Read
826        the docs/FAQ write-up.
827
828
829       --skip-version-check
830        By  default,  ntop accesses a remote file to periodically check if the
831        most current version is running.  This  option  disables  that  check.
832        Please  review  the privacy notice at the bottom of this page for more
833        information.  By default, the recheck period is slightly more than  15
834        days.   This  can be adjusted via a constant in globals-defines.h.  If
835        the result of the initial check indicates that the ntop version  is  a
836        'new  development'  version  (that  is newer than the latest published
837        development version), the recheck is disabled.  This is because  which
838        fixes and enhancements were present/absent from the code.
839
840        NOTE: At present, the recheck does not work under Windows.
841
842
843       --ssl-watchdog
844
845        Enable  a watchdog for webserver hangs. These usually happen when con‐
846        necting with older browsers. The user  gets  nothing  back  and  other
847        users can't connect. Internally, packet processing continues but there
848        is no way to access the data through the web server or  shutdown  ntop
849        cleanly.   With  the  watchdog,  a timeout occurs after 3 seconds, and
850        processing continues with a log message. Unfortunately, the user  sees
851        nothing - it just looks like a failed connection. (also available as a
852        ./configure option, --enable-sslwatchdog)
853
854
855       --w3c
856        By default, ntop generates displayable but not great html.  There  are
857        a  number  of tags we do not generate because they cause problems with
858        older browsers which are still commonly used or are important to  look
859        good  on  real-world browsers.  This flag tells ntop to generate 'BET‐
860        TER' (but not perfect) w3c compliant html 4.01 output. This in no  way
861        addresses  all  of the compatibility and markup issues.  Over time, we
862        would like to make ntop more compatible, but it will  never  be  100%.
863        If you find any issues, please report them to ntop-dev.
864
865
866       -4 | --ipv4
867        Use IPv4 connections.
868
869
870       -6 | --ipv6
871        Use IPv6 connections
872
873

WEB VIEWS

875       While  ntop  is running, multiple users can access the traffic informa‐
876       tion using their web browsers.  ntop does not generate 'fancy' or 'com‐
877       plex'  html,  although  it does use frames, shallowly nested tables and
878       makes some use of JavaScript and Cascading Style Sheets.
879
880       Beginning with release 3.1,  the  menus  are  cascading  dropdowns  via
881       JSCookMenu.  With release 3.2, this extends to plugins.
882
883       We do not expect problems with any current web browser, but our ability
884       to test with less common ones is very limited.   Testing  has  included
885       Firefox  and Internet Explorer, with very limited testing on other cur‐
886       rent common browsers such as Opera.
887
888       In documentation and this man page, when we refer to  a  page  such  as
889       Admin | Switch NIC, we mean the Broad category "Admin" and the detailed
890       item "Switch NIC" on that Admin menu.
891
892

NOTES

894       ntop requires a number of external  tools  and  libraries  to  operate.
895       Certain  other  tools  are optional, but add to the program's capabili‐
896       ties.
897
898
899       --webserver-queue
900        Specifies the maximum number of web server  requests  for  the  tcp/ip
901        stack  to  retain  in  it's  queue  awaiting  delivery to the ntop web
902        server.  Requests in excess of this queue may be dropped (allowing for
903        retransmission)  or rejected at the tcp/ip stack level, depending upon
904        the OS.  Whatever happens, happens at the OS level, without any infor‐
905        mation being delivered to ntop
906
907        Required libraries include:
908
909        libpcap from http://www.tcpdump.org/, version 0.7.2 or newer. 0.8.3 or
910        newer is strongly recommended.
911
912        The Windows version makes use of WinPcap (libpcap for  Windows)  which
913        may be downloaded from http://winpcap.polito.it/install/default.htm.
914
915        WARNING: The 2.x releases of WinPcap will NOT support SMP machines.
916
917        gdbm from http://www.gnu.org/software/gdbm/gdbm.html
918
919        ntop  requires  a  POSIX  threads library. As of ntop 3.2, the single-
920        threaded version of ntop is no longer available.
921
922        The gd 2.x library, for  the  creation  of  png  files,  available  at
923        http://www.boutell.com/gd/.
924
925        The  libpng 1.2.x library, for the creation of png files, available at
926        http://www.libpng.org/pub/png/libpng.html.
927
928        ntop should support both gd 1.X and libpng 1.0.x  libraries  but  this
929        has  not  been  tested.   Note that there are incompatibilities if you
930        compile with one version of these libraries  and  then  run  with  the
931        other.   Please  read  the discussion in docs/FAQ before reporting ANY
932        problems of this nature.
933
934        (if an https:// server is desired) openSSL from  the  OpenSSL  project
935        available at http://www.openssl.org.
936
937        The  rrdtool  library  is required by the rrd plugin.  rrdtool creates
938        'Round-Robin databases' which are used to store and  graph  historical
939        data  in a format that permits long duration retention without growing
940        larger  over   time.    The   rrdtool   home   page   is   http://peo
941        ple.ee.ethz.ch/~oetiker/webtools/rrdtool/
942
943        ntop includes a limited version of rrdtool 1.0.49 in the myrrd/ direc‐
944        tory.  Users of ntop 3.2 should not need to specifically install  rrd‐
945        tool.
946
947        The  sflow  Plugin  is courtesy of and supported by InMon Corporation,
948        http://www.inmon.com/sflowTools.htm.
949
950        There are other optional libraries.  See the output of ./configure for
951        a fuller listing.
952
953        Tool  locations  are  current as of August 2005 - please send email to
954        report new locations or dead links.
955
956

SEE ALSO

958       top(1), tcpdump(8).  pcap(3).
959
960

PRIVACY NOTICE

962       By default at startup and at periodic intervals, the ntop program  will
963       retrieve  a  file  containing current ntop program version information.
964       Retrieving this file allows this ntop instance to confirm  that  it  is
965       running the most current version.
966
967       The  retrieval is done using standard http:// requests, which will cre‐
968       ate log records on the hosting system.  These log  records  do  contain
969       information  which  identifies  a specific ntop site.  Accordingly, you
970       are being notified that this individually identifiable  information  is
971       being transmitted and recorded.
972
973       You  may  request - via the --skip-version-check run-time option - that
974       this check be eliminated.  If you  use  this  option,  no  individually
975       identifiable information is transmitted or recorded, because the entire
976       retrieval and check is skipped.
977
978       We ask you to allow this retrieval and check, because it benefits  both
979       you and the ntop developers.  It benefits you because you will be auto‐
980       matically notified if the ntop program  version  is  obsolete,  becomes
981       unsupported  or  is  no  longer current.  It benefits the developers of
982       ntop because it allows us  to  determine  the  number  of  active  ntop
983       instances,  and  the  operating  system/versions that users are running
984       ntop under.  This allows us to focus development resources  on  systems
985       like those our users are using ntop on.
986
987       The  individually  identifiable  information  is  contained  in the web
988       server log records which are automatically created each time  the  ver‐
989       sion  file  is retrieved.  This is a function of the web server and not
990       of ntop , but we do take advantage of it.  The log record shows the  IP
991       address  of  the  requestor (the ntop instance) and a User-Agent header
992       field.  We place information in the User-Agent header as follows:
993
994           ntop/<version>
995           host/<name from config.guess>
996           distro/<if one>
997           release/<of the distro, also if one>
998           kernrlse/<kernel version or release>
999           GCC/<version>
1000           config() <condensed parameters from ./configure>
1001           run()    <condensed flags - no data - from the execution line>
1002           libpcap/<version>
1003           gdbm/<version>
1004           openssl/<version>
1005           zlib/<version>
1006           access/<http, https, both or none>
1007           interfaces() <given interface names>
1008
1009       For example:
1010
1011           ntop/2.2.98 host/i686-pc-linux-gnu  distro/redhat  release/9  kern‐
1012       rlse/2.4.20-8smp
1013           GCC/3.2.2  config(i18n) run(i; u; P; w; t; logextra; m; instantses‐
1014       sionpurge;
1015           schedyield; d; usesyslog=; t) gdbm/1.8.0 openssl/0.9.7a zlib/1.1.4
1016           access/http interfaces(eth0,eth1)
1017
1018       Distro and release information is determined at compile time  and  con‐
1019       sists  of  information typically found in the /etc/release (or similar)
1020       file. See the ntop tool linuxrelease for how this is determined.
1021
1022       gcc compiler version (if available) is the internal version #s for  the
1023       gcc compiler, e.g. 3.2.3.
1024
1025       kernrlse  is  the  Linux  Kernel  version or the xBSD 'release' such as
1026       4.9-RELEASE and is determined from the uname data (if it's available).
1027
1028       The ./configure parameters are stripped of directory paths, leading -s,
1029       etc.  to  create a short form that shows us what ./configure parameters
1030       people are using.
1031
1032       Similarly, the run time parameters are stripped of data and paths, just
1033       showing which flags are being used.
1034
1035       The  libpcap,  gdbm,  openssl  and  zlib versions come from the strings
1036       returned by the various inquiry functions (if they're availabe).
1037
1038       Here's a sample log record:
1039
1040       67.xxx.xxx.xxx  -  -  [28/Dec/2003:12:11:46  -0500]  "GET  /version.xml
1041       HTTP/1.0"
1042         200  1568  www.burtonstrauss.com "-" "ntop/2.2.98 host/i686-pc-linux-
1043       gnu
1044         distro/redhat release/9 kernrlse/2.4.20-8smp GCC/3.2.2 config(i18n)
1045         run(i; u; P; w; t; logextra; m; instantsessionpurge; schedyield; d;
1046         usesyslog=)   libpcap/0.8   gdbm/1.8.0   openssl/0.9.7a    zlib/1.1.4
1047       access/http
1048         interfaces(eth0,eth1,eth2)" "-"
1049
1050

USER SUPPORT

1052       Please  send  bug  reports  to the ntop-dev <ntop-dev@ntop.org> mailing
1053       list. The ntop <ntop@ntop.org> mailing list is used for discussing ntop
1054       usage issues. In order to post messages on the lists a (free) subscrip‐
1055       tion is required to limit/avoid spam. Please do NOT contact the  author
1056       directly unless this is a personal question.
1057
1058       Commercial  support is available upon request. Please see the ntop site
1059       for further info.
1060
1061       Please send code patches to <patch@ntop.org>.
1062
1063

AUTHOR

1065       ntop's author is Luca Deri (http://luca.ntop.org/) who can  be  reached
1066       at <deri@ntop.org>.
1067
1068

LICENCE

1070       ntop is distributed under the GNU GPL licence (http://www.gnu.org/).
1071
1072

ACKNOWLEDGMENTS

1074       The  author  acknowledges  the  Centro Serra of the University of Pisa,
1075       Italy (http://www-serra.unipi.it/) for hosting the ntop sites (both web
1076       and mailing lists), and Burton Strauss <burton@ntopsupport.com> for his
1077       help  and  user  assistance.  Many  thanks  to   Stefano   Suin   <ste‐
1078       fano@ntop.org>  and  Rocco Carbone <rocco@ntop.org> for contributing to
1079       the project.
1080
1081
1082
1083                            August 2005 (ntop 3.2)                     NTOP(8)
Impressum