Greetings all
I found myself looking for a free netflow monitor – the main condition was that it was web-based. The only ones I could find were commercial, but I eventually stumbled on Netflow Monitor. It’s PHP based with a service component that runs in the background collecting flows directed to it.
Once you register you’ll be given a link to the free version of the software and a plug for the new, commercial version. The instructions are out of date and the .deb version doesn’t work as it relies on php4 dependencies that are no longer in the repository. Installation from the .tar.gz version is simple and only a few steps.
- Install the LAMP server essentials – this provides Apache2, PHP 5 and MySQL. It is advised that you set a MySQL root password.
amason@akari:~$ sudo tasksel install lamp-server
- Create a symbolic link for the MySQL Client library that the Netflow Collector expects to find.
amason@akari:~$ sudo ln -s /usr/lib/libmysqlclient.so.1{6,0} - Install the php5-snmp and php5-gd modules.
amason@akari:~$ sudo apt-get install php5-snmp php5-gd
- Restart the Apache server.
- Extract the contents of the tgz file.
amason@akari:~$ sudo tar -C / -xf netflow_2.0.3-6.tgz
- If you set your MySQL admin password, edit the /etc/netflow/netflow.conf and /etc/netflow/nfc.conf files and set the password.
- Create the database tables.
amason@akari:~$ mysqladmin -u root -p create nf amason@akari:~$ nf_cfgcheck && nf_cfgcheck
- Go to the web interface and log in as admin, password nfadmin.
- Go to Options -> Units, then click Add to add a new unit. Enter the details of your router and click Create.

- Click Collectors, then click Add. Enter details as below (or change the port if you wish) and click Create.

- Start the Netflow Collector (nfc).
amason@akari:~$ sudo /etc/init.d/nfc start
- Go to the home page for the Netflow Monitor, and click Overview. Hit search to view the current flows.
That’s it. Note that this software relies on 32-bit Linux and will not work under 64-bit, even with the 32-bit libraries – a 32-bit MySQL library cannot be installed in that environment, so the only way would be to run the collector in a 32-bit chroot which is beyond the scope of this article. These instructions assume you are running in a 32-bit environment – if you wish to run this in a 64-bit environment you can set up a 32-bit chroot for the collector as it is the only 32-bit native element in this installation.