=====Ubuntu 18 - NfSen=====
Install and configure NfSen on Ubuntu 18 server
* NfSen 1.3.8
* nfdump 1.6.17
{{:rrdgraph.php.png?nolink|}}
=====Installation=====
* Download NfSen [[http://nfsen.sourceforge.net/]].
* Clone nfdump from git [[https://github.com/phaag/nfdump]]. git clone https://github.com/phaag/nfdump
* Extract files. tar zxf nfsen-1.3.8.tar.gz
* Install development tools. apt-get update
apt-get upgrade
apt-get install build-essential
* Install prerequisites. add-apt-repository universe
apt-get install autoconf rrdtool librrds-perl librrdp-perl librrd-dev libmailtools-perl apache2 libapache2-mod-php php bison flex libsocket6-perl liburi-perl libnet-idn-encode-perl libtool m4 automake pkg-config libbz2-dev
* Create user netflow. useradd netflow
* Add user netflow to apache group. usermod -G www-data netflow
* Create seperate /opt filesystem (for lots of data).
* Compile and install nfdump. cd nfdump
./autogen.sh
./configure --prefix=/opt/nfdump --enable-nfprofile
make
make install
* Install nfsen. cd nfsen-1.3.8
cd etc
cp nfsen-dist.conf nfsen.conf
vi nfsen.conf
$BASEDIR = "/opt/nfsen";
$HTMLDIR = "/opt/nfsen/www/";
$PREFIX = '/opt/nfdump/bin';
$WWWUSER = "www-data";
$WWWGROUP = "www-data";
$MAIL_FROM = 'nfsen@yourdomain.tld';
$SMTP_SERVER = 'fqdn.mail.server';
%sources = (
'source1' => { 'port' => '9995', 'col' => '#0000ff', 'type' => 'netflow' },
'source2' => { 'port' => '9996', 'col' => '#cc3333', 'type' => 'netflow' },
'source3' => { 'port' => '9997', 'col' => '#99ff33', 'type' => 'netflow' },
);
# OR
%sources = (
'ccr1016' => { 'port' => '9995', 'IP' => 'x.x.x.x', 'col' => '#0000ff', 'type' => 'netflow' },
'apfloor1' => { 'port' => '9995', 'IP' => 'x.x.x.x', 'col' => '#8B0000' },
'apfloor2' => { 'port' => '9995', 'IP' => 'x.x.x.x', 'col' => '#DC143C'},
'apfloor3' => { 'port' => '9995', 'IP' => 'x.x.x.x', 'col' => '#FF7F50'},
);
cd ..
sudo ./install.pl ./etc/nfsen.conf
* Add apache config.
AllowOverride None
Require all granted
Alias /nfsen "/opt/nfsen/www"
* Enable and start apache: systemctl enable apache2
systemctl start apache2
* Start nfsen. /opt/nfsen/bin/nfsen start
=====Auto start at boot=====
* Create **/etc/systemd/system/nfsen.service**:
[Unit]
Description=NfSen Service
After=network.target
[Service]
Type=forking
PIDFile=/opt/nfsen/var/run/nfsend.pid
ExecStart=/opt/nfsen/bin/nfsen start
ExecStop=/opt/nfsen/bin/nfsen stop
Restart=on-abort
[Install]
WantedBy=multi-user.target
* Enable service:systemctl enable nfsen
systemctl start nfsen
* Open NfSen: [[http://localhost/nfsen/nfsen.php]]
{{tag>[nfsen network centos7 linux netflow]}}