什么是AWStats
AWStats是一款功能强大且功能强大的免费工具,可以图形方式生成高级Web,流媒体,ftp或邮件服务器统计信息。此日志分析器用作CGI或命令行, 并在几个图形网页中显示您的日志包含的所有可能信息。
它使用部分信息文件来经常快速地处理大型日志文件。它可以分析来自所有主要服务器工具的日志文件,如Apache日志文件(NCSA组合/ XLF / ELF日志格式或通用/ CLF日志格式),WebStar,IIS(W3C日志格式)以及许多其他Web,代理,wap,流服务器,邮件服务器和一些ftp服务器。
详情介绍
AWStats是在Sourceforge上发展很快的一个基于Perl的WEB日志分析工具。相对于另外一个非常优秀的开放源代码的日志分析工具Webalizer,AWStats的优势在于:
界面友好:可以根据浏览器直接调用相应语言界面(有简体中文版)
基于Perl:并且很好的解决了跨平台问题,系统本身可以运行在GNU/Linux上或Windows上(安装了ActivePerl后);分析的日志直接支持Apache格式 (combined)和IIS格式(需要修改)。Webalizer虽然也有Windows平台版,但目前已经缺乏 维护;AWStats完全可以实现用一套系统完成对自身站点不同WEB服务器:GNU/Linux/Apache和Windows/IIS服务器的统一统计。
效率比较高:AWStats输出统计项目比Webalizer丰富了很多,速度仍可以达到Webalizer的1/3左右,对于一个日访问量 百万级的站点,这个速度都是足够的;
配置/定制方便:系统提供了足够灵活但缺省也很合理的配置规则,需要修改的缺省配置不超过3,4项就可以开始运行,而且修改和扩展的插件还是 比较多的;
AWStats的设计者是面向精确的"Human visits"设计的,因此很多搜索引擎的机器人访问都被过滤掉了,因此有可能比其他日志统计工具统计的数字要低,来自公司内部的访问也可以通过IP过滤 设置过滤掉。
提供了很多扩展的参数统计功能:使用ExtraXXXX系列配置生成针对具体应用的参数分析会对产品分析非常有用。
AWStats 是一个免费的强大而有个性的工具,带来先进的网络,流量,FTP或邮件服务器统计图. 本日志分析器作为CGI或从命令行在数个图形网页中显示你日志中包含的所有可能信息. 它利用一部分档案资料就能经常很快地处理大量日志档案, 它能分析日志文件来自从各大服务器工具 ,如 Apache日志档案 s (NCSA combined/XLF/ELF log format or common/CLF log format), WebStar, IIS (W3C的日志格式)及许多其他网站,Proxy(代理服务器)、Wap、流量服务器、邮件服务器和一些 FTP服务器 .
📝实验配置与实验
拓扑图:
推荐步骤:
在Centos01上安装apache配置网站,修改apache网站根目录/www/设置网站主页
在Centos02上安装DNS使用域名 www.duanjiaxu.com访问日志
在Centos01上安装AWStats监控apache访问
在Centos01配置访问AWstats监控页面使用基本验证防止未经授权用户查看监控后台,在Centos01上配置安装cronolog日志分析工具安装每天生成日志
一、在Centos01上安装apache配置网站,修改apache网站根目录www设置网站主页
1、在Centos01上安装apache
1)从系统光盘切换到云计算光盘
2)挂载云计算光盘
[root@centos03 ~]# mount /dev/cdrom /mnt/ mount: /dev/sr0 写保护,将以只读方式挂载
3)解压httpd程序到/usr/src
[root@centos03 ~]# tar zxf /mnt/httpd-2.2.17.tar.gz -C /usr/src/ [root@centos03 ~]# cd /usr/src/httpd-2.2.17/
4)编译安装
[root@centos01 httpd-2.2.17]# ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi [root@centos01 httpd-2.2.17]# make && make install
5)查看是否安装成功
[root@centos01 httpd-2.2.17]# ls /usr/local/ bin etc games httpd include lib lib64 libexec sbin share src
6)生成服务控制文件
root@centos01 ~]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd //生成服务控制文件 [root@centos01 ~]# chmod +x /etc/init.d/httpd //添加执行权限 [root@centos01 ~]# ln -s /usr/local/httpd/bin/* /usr/local/bin/ //优化命令
2、配置网站
1)设置apache服务开机自启
[root@centos01 ~]# vim /etc/init.d/httpd //进入apache服务控制文件 --- 2 #chkconfig:35 80 21 //运行级 3,5 启动,启动优先权为80,停止优先权为21。 3 #description:Apache Server //描述 --- [root@centos01 ~]# chkconfig --add httpd //添加httpd服务 [root@centos01 ~]# chkconfig --level 35 httpd on //设置开机自启 [root@centos01 ~]# httpd -t //检查配置文件修改是否有误 httpd: Could not reliably determine the server's fully qualified domain name, using fe80::20c:29ff:fe25:91b5 for ServerName Syntax OK
2)配置保持连接
[root@centos01 ~]# cp /usr/local/httpd/conf/httpd.conf /usr/local/httpd/conf/httpd.conf.bak //备份主配置文件,防止修改错误原文件丢失 [root@centos01 ~]# vim /usr/local/httpd/conf/httpd.conf //进入主配置文件 --- 398 Include conf/extra/httpd-default.conf //开启保持连接功能 --- [root@centos01 ~]# vim /usr/local/httpd/conf/extra/httpd-default.conf //修改保持连接 Timeout 3 //超时时间 KeepAlive On //保持连接默认开启 MaxKeepAliveRequests 1000 //最大连接并发量
3)重新启动apache服务
[root@centos01 ~]# systemctl restart httpd
3、修改apache网站根目录/www/设置网站主页
1)新建网站根目录
[root@centos01 ~]# mkdir /www [root@centos01 ~]# echo "www.duanjiaxu.com" > /www/index.html --- 105 DocumentRoot "/www" //修改网站根目录 133 <Directory "/www"> //授权网站根目录 134 Options Indexes FollowSymLinks 135 AllowOverride None 136 Order allow,deny 137 Allow from all 138 </Directory> --- [root@centos01 ~]# httpd -t //检查主配置文件修改是否有误 httpd: Could not reliably determine the server's fully qualified domain name, using fe80::20c:29ff:fe25:91b5 for ServerName Syntax OK [root@centos01 ~]# systemctl restart httpd 重新启动服务
2)配置IP的地址和DNS
[root@centos01 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens32 //进入网卡配置文件 --- TYPE=Ethernet BOOTPROTO=static NAME=ens32 DEVICE=ens32 ONBOOT=yes IPADDR=192.168.100.10 //IP地址 NETMASK=255.255.255.0 //子网掩码 DNS1=192.168.100.20 //DNS --- [root@centos01 ~]# systemctl restart network //重新启动网卡服务 [root@centos01 ~]# cat /etc/resolv.conf //查看DNS是否配置功能 # Generated by NetworkManager nameserver 192.168.100.20
3)使用win10虚拟机验证
二、在Centos02上安装DNS使用域名www.duanjiaxu.com访问日志
1、在Centos02上安装DNS服务
1)配置IP地址和DNS
[root@centos02 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens32 --- TYPE=Ethernet BOOTPROTO=static NAME=ens32 DEVICE=ens32 ONBOOT=yes IPADDR=192.168.100.20 //IP地址 NETMASK=255.255.255.0 //子网掩码 DNS1=192.168.100.20 //DNS --- [root@centos02 ~]# systemctl restart network //重新启动网卡服务 [root@centos02 ~]# cat /etc/resolv.conf //查看DNS是否配置成功 # Generated by NetworkManager nameserver 192.168.100.20
2、安装DNS服务
1)挂载系统光盘
[root@centos02 ~]# mount /dev/cdrom /mnt/ //挂载系统光盘 mount: /dev/sr0 写保护,将以只读方式挂载 [root@centos02 ~]# ls /mnt/ //查看系统光盘是否挂载成功 CentOS_BuildTag GPL LiveOS RPM-GPG-KEY-CentOS-7 EFI images Packages RPM-GPG-KEY-CentOS-Testing-7 EULA isolinux repodata TRANS.TBL
2)安装DNS程序包
[root@centos02 ~]# rpm -ivh /mnt/Packages/bind-9.9.4-50.el7.x86_64.rpm 警告:/mnt/Packages/bind-9.9.4-50.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY 准备中... ################################# [100%] 正在升级/安装... 1:bind-32:9.9.4-50.el7 ################################# [100%] [root@centos02 ~]# rpm -ivh /mnt/Packages/bind-chroot-9.9.4-50.el7.x86_64.rpm 警告:/mnt/Packages/bind-chroot-9.9.4-50.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY 准备中... ################################# [100%] 正在升级/安装... 1:bind-chroot-32:9.9.4-50.el7 ################################# [100%]
3、修改DNS配置文件
1)修改DNS主配置文件
[root@centos02 ~]# echo "" > /etc/named.conf //清空主配置文件 [root@centos02 ~]# vim /etc/named.conf //进入到主配置文件 --- options { listen-on port 53 { any; }; }; zone "duanjiaxu.com" IN { type master; file "var/named/duanjiaxu.com.zone"; }; [root@centos02 ~]# named-checkconf /etc/named.conf //检查主配置文件是否修改正确
2)修改DNS区域配置文件
[root@centos02 ~]# vim /var/named/duanjiaxu.com.zone //进入区域配置文件 --- $TTL 86400 @ SOA duanjiaxu.com. root.duanjiaxu.com. ( 2023020210 1H 15M 1W 1D ) @ NS centos02.duanjiaxu.com. centos02 A 192.168.100.20 www A 192.168.100.10 --- [root@centos02 ~]# named-checkzone duanjiaxu.com /var/named/duanjiaxu.com.zone //检查主配置文件是否修改成功 zone duanjiaxu.com/IN: loaded serial 2023020210 OK --- [root@centos02 ~]# systemctl start named //启动DNS服务 [root@centos02 ~]# systemctl enable named //设置开机自启
4、验证
1)查看DNS服务是否已经启动
[root@centos02 ~]# netstat -anptu | grep named tcp 0 0 192.168.100.20:53 0.0.0.0:* LISTEN 42964/named tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 42964/named tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 42964/named tcp6 0 0 ::1:953 :::* LISTEN 42964/named udp 0 0 192.168.122.1:53 0.0.0.0:* 42964/named udp 0 0 192.168.100.20:53 0.0.0.0:* 42964/named udp 0 0 127.0.0.1:53 0.0.0.0:* 42964/named
2)查看是否能够成功解析域名
[root@centos02 ~]# nslookup www.duanjiaxu.com Server: 192.168.100.20 Address: 192.168.100.20#53 Name: www.duanjiaxu.com Address: 192.168.100.10
3)使用win10虚拟机验证
4)查看日志
[root@centos01 ~]# tail -f /usr/local/httpd/logs/access_log
三、在Centos01上安装AWStats监控 apache访问
1、部署AWStats
1)解压安装AWStats
[root@centos01 ~]# tar zxf /mnt/awstats-7.3.tar.gz -C /usr/src/ //解压AWStats程序 [root@centos01 ~]# mv /usr/src/awstats-7.3/ /usr/local/awstats //剪切到/usr/local/awstats
2)配置工具添加执行权限
[root@centos01 ~]# cd /usr/local/awstats/tools/ [root@centos01 tools]# chmod +x ./* //添加执行权限
3)配置AWStats
[root@centos01 tools]# ./awstats_configure.pl --- >/usr/local/httpd/conf/httpd.conf //加载apache的主配置文件 > www.duanjiaxu.com //访问apache的域名 > http://localhost/awstats/awstats.pl?config=www.duanjiaxu.com //访问AWStats的域名
加载apache的主配置文件
访问apache的域名
访问AWStats的域名
2、修改AWStats的配置文件
1)修改AWStats配置文件
[root@centos01 tools]# vim /etc/awstats/awstats.www.duanjiaxu.com.conf //进入配置文件 --- 51 LogFile="/usr/local/httpd/logs/access_log" //指定apache日志的位置 204 DirData="/var/lib/awstats" //数据存储位置
2)创建AWStats数据存储位置
[root@centos01 tools]# mkdir /var/lib/awstats
3)重新访问apache网站查看日志
3、配置AWStats采集日志
1)更新AWStats日志
2)设置计划任务
[root@centos01 ~]# crontab -e //更新日志计划任务 */2 * * * * /usr/local/awstats/tools/awstats_updateall.pl now
3)配置页面跳转
[root@centos01 ~]# vim /www/awstats.html ---- <html> <head> <meta http-equiv=refresh content="0;url=http://www.duanjiaxu.com/awstats/awstats.pl?config=www.duanjiaxu.com"/> </head> <body></body> </html>
4、访问AWStats监控后台
使用http://www.duanjiaxu.com/awstats.html访问
四、在Centos01配置访问AWStats监控页面使用借本验证防止未经授权的用户查看监控后台
1、使用基本验证防止未授权用户查看监控后台
1)切换到系统关盘然后挂载
[root@centos01 ~]# umount /mnt/ 卸载云计算光盘 [root@centos01 ~]# mount /dev/cdrom /mnt/ 挂载系统光盘 mount: /dev/sr0 写保护,将以只读方式挂载
2)安装验证工具
[root@centos01 ~]# rpm -ivh /mnt/Packages/httpd-tools-2.4.6-67.el7.centos.x86_64.rpm 警告:/mnt/Packages/httpd-tools-2.4.6-67.el7.centos.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY 准备中... ################################# [100%] 正在升级/安装... 1:httpd-tools-2.4.6-67.el7.centos ################################# [100%] 您在 /var/spool/mail/root 中有新邮件 3)生成验证数据库 [root@centos01 ~]# htpasswd -c /usr/local/httpd/password duanjiaxu New password: Re-type new password: Adding password for user duanjiaxu --- root@centos01 ~]# cat /usr/local/httpd/password //查看是否创建成功 duanjiaxu:ukG3goXhhatEE
3)生成验证数据库
[root@centos01 ~]# htpasswd -c /usr/local/httpd/password duanjiaxu New password: Re-type new password: Adding password for user duanjiaxu ---- root@centos01 ~]# cat /usr/local/httpd/password //查看是否创建成功 duanjiaxu:ukG3goXhhatEE
4)修改apache主配置文件加载身份认证
[root@centos01 ~]# vim /usr/local/httpd/conf/httpd.conf <Directory "/usr/local/awstats/wwwroot"> Options None AllowOverride None Order allow,deny Allow from all AuthName "access" AuthType Basic AuthUserFile /usr/local/httpd/password Require valid-user
5)重新启动
[root@centos01 ~]# systemctl restart httpd
2、使用win10虚拟机验证