0x01 前言
因为我没有用路由器拨号,每次想查看网关流量都需要通过SSH登录到系统使用iftop查看。而且得到的信息也不够全面。最近我又找到一款开源软件ntopng,在过去的几天我都使用它来监控我的网关流量。
0x02 准备
首先是官网:http://www.ntop.org/products/traffic-analysis/ntop/
然后是GitHub:https://github.com/ntop/ntopng
0x02.1 依赖包
yum install libpcap-devel glib2-devel GeoIP-devel libxml2-devel libxml2-devel redis wget sqlite-devel mariadb-devel -y
0x02.2 获取
#获取nDPI git clone https://github.com/ntop/nDPI.git #获取ntopng git clone https://github.com/ntop/ntopng.git
0x03 安装
0x03.1 安装nDPI:
#进入nDPI文件夹 cd nDPI #生成configure文件 ./autogen.sh #configure配置 ./configure #编译 make #安装 make install
0x03.2 安装ntopng:
#进入ntopng文件夹 cd ntopng #生成configure文件 ./autogen.sh #configure配置 ./configure #编译 make #安装 make install #安装GeoIP库 make geoip
0x04 配置
配置ntopng
#新建文件夹 mkdir /etc/ntopng #新建文件并写入内容 vim /etc/ntopng/ntopng.start #写入一下内容 --local-networks "192.168.1.0/24" --interface 1 #新建文件并写入内容 vim /etc/ntopng/ntopng.conf #写入以下内容 -G=/var/run/ntopng.pid
0x05 启动
#立即启动redis systemctl start redis #将redis设为开机启动 systemctl enable redis #启动ntopn /usr/local/bin/ntopng > /dev/null 2>&1
如果你想开机启动,还需要将启动ntopn的命令添加到rc.local文件中:
#打开文件 vim /etc/rc.local #添加以下内容 /usr/local/bin/ntopn > /dev/null 2>&1
0x06 防火墙
ntopn默认使用TCP 3000端口,我的服务器默认将所有传入数据丢弃,那就需要手动放行:
#对内网IP放行TCP 3000端口 iptables -A INPUT -t tcp --dport 3000 -s 10.1.1.0/24 -j ACCEPT #保存规则到文件 service iptables save #重新加载iptables service iptables reload
0x07 访问
我们可以通过IP:3000或foo.com:3000进行访问。
默认用户名和密码都是admin。
登录后就可以看到酷炫的界面啦:
0x08 结语
这开源软件的界面很酷炫,如果你仔细观察,还能发现所有访问Google的数据都被判定为SYN攻击。这是因为Google回传的数据包被众所周知的原因所丢弃了,也有可能根本没有到达Google服务器。