Bandwidthd-pgsql 是一个Linux下免费的流量统计工具,在局域网使用可以很直观的显示每个IP的流量使用情况。
0. 安装linux,本教程使用Ubuntu-budgie这个发行版, 安装完后更新。
sudo apt-get update
sudo apt-get upgrade
1. 安装Apache2
sudo apt-get install apache2 #安装完基本上不用改动
测试: 浏览器访问http://Ubuntu的IP,出现It Works!网页。
查看状态: service apache2 status/start/stop/restart
Web目录: /var/www/html
安装目录: /etc/apache2/
全局配置: /etc/apache2/apache2.conf
监听端口: /etc/apache2/ports.conf
虚拟主机: /etc/apache2/sites-enabled/000-default.conf
2.安装PHP
sudo apt-get install php7.0 libapache2-mod-php7.0 #安装php 和 apache模块
sudo /etc/init.d/apache2 restart #重启apache服务
写一个测试php文件info.php #放在/var/www/html目录下
hello php
<?php
phpinfo();
?>
在浏览器中输入http://127.0.0.1/info.php,可以看到php的信息
3.安装postgresql数据库, 目前是9.5版本
sudo apt-get install postgresql
sudo apt-get install php7.0-pgsql php7.0-gd #给php安装pgslq模块
4.安装phppgadmin #数据库的可视化管理器
sudo apt-get install phppgadmin # 安装完成后可以直接用浏览器打开http://127.0.0.1/phppgadmin,不过数据库暂时不能登录
5.修改phppgadmin的登录文件/etc/phppgadmin/config.inc.php
$conf['extra_login_security'] = true; 将true改成false
6.修改数据库的/etc/postgresql/9.5/main/pg_hba.conf文件
在最后一行添加host all all 0.0.0.0 0.0.0.0 md5 #允许所有IP通过md5密码验证方式访问
7.修改数据库的/etc/postgresql/9.5/main/postgresql.conf文件,将地址改为*
listen_addresses = '*'
8.重启数据库,让刚刚修改的配置文件生效
/etc/init.d/postgresql restart
9.给Postgresql的管理员账号 postgres配置密码,以便远程用户可以访问. PS:PostgreSQL数据默认会创建一个postgres的数据库用户作为数据库的管理员,密码是随机的
第一步:PostgreSQL登录(使用psql客户端登录)
# sudo -u postgres psql //其中,sudo -u postgres 是使用postgres 用户登录的意思,进入到数据库理
第二步:修改PostgreSQL登录密码:
postgres=# ALTER USER postgres WITH PASSWORD 'postgres'; //postgres=#为PostgreSQL下的命令提示符
ALTER USER postgres PASSWORD 'postgres'; // 或者用这个语法
第三步:退出PostgreSQL psql客户端
postgres=# \q
10.进入数据库的方法:
sudo -u postgres psql -p 5432 // -u 后面带的是用户名,-p后面带的是端口后5432是默认端口后
有时候,发现同一台ubuntu 上面有两个postgres server 的实例, 可以用 sudo service postgresql status 查询
11. 然后就可以在http://127.0.0.1/phppgadmin中,选择server,用postgres/postgres登录数据库
12.先创建Bandwidthd数据库和账号
sudo -u postgres psql -p 5432
CREATE USER bandwidthdpgsql;
ALTER USER bandwidthdpgsql PASSWORD '123456';
create database bandwidthdpgsql;
13.安装Bandwidthd-pgsql软件
sudo apt-get install bandwidthd-pgsql //安装中会提示监控的网卡,网段,数据库地址(选localhost),密码可以直接回车或输入刚才设置的123456,建议直接回车。
14.修改 /etc/bandwidthd/bandwidthd.conf 配置文件
可以设置subnet,如果在安装的时候输入的不对
subnet 10.0.0.0 255.0.0.0
subnet 192.168.0.0 255.255.0.0
subnet 172.16.0.0 255.255.0.0
可以修改数据库的连接信息,因为安装的时候已经设置过,一般不用改动
pgsql_connect_string "user = bandwidthdpgsql password = 123456 dbname = bandwidthdpgsql host = localhost"
网卡工作模式改为“混杂模式”
promiscuous true
#promiscuous false
15. /etc/init.d/bandwidthd restart #重启bandwidthd服务
启动后2~3分钟,用pgadmin工具看看数据库,就可以看到数据了。
16.在/var/www/html下做一个软连接到bandwidthd页面地址
sudo ln -s /var/lib/bandwidthd/htdocs/ /var/www/html/bandwidthd
17.在浏览器输入127.0.0.1/bandwidthd/sensors.php 就可以看到信息了
或者把/var/lib/bandwidthd/htdocs/目录下的sensors.php 改名为index.php,直接通过127.0.0.1/bandwidthd/访问。
流量统计的结果如下:
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。