发布网友
共3个回答
懂视网
4.2 使用apache自带的rotatelogs实现日志轮循 apache提供了将不把日志直接写入文件,而是通过管道发送给另外 一个程序的能力,这样就大大的加强了对日志进行处理的能力,这个通过管道得到的程序可以是任何程序:如日志分析,压缩日志等。要实现将日志写到管
4.2 使用apache自带的rotatelogs实现日志轮循
apache提供了将不把日志直接写入文件,而是通过管道发送给另外 一个程序的能力,这样就大大的加强了对日志进行处理的能力,这个通过管道得到的程序可以是任何程序:如日志分析,压缩日志等。要实现将日志写到管道只需要将配置中日志文件部分的内容替换为“|程序名“即可,例如:
# compressed logs CustomLog "|/usr/bin/gzip -c >> /var/log/access_log.gz" common |
这样就可以实用apache自带的轮循工具:rotatelogs来对日志文件进行轮循。rotatelogs基本是用来按时间或按大小控制日志的。
CustomLog "|/www/bin/rotatelogs /www/logs/secfocus/access_log 800" common |
上 面的示例中apache访问日志被发送给程序rotatelogs,rotatelogs将日志写入/www/logs/secfocus /access_log,并每隔800秒(一天)对日志进行一次轮循。轮循以后的文件名为/www/logs/secfocus /access_log.nnnn,这里nnn是开始记录日志的时间。因此为了将日志按天对齐就需要在凌晨00:00启动服务,使得每天轮循得到的日志刚 好是完整一天的日志,以提供给访问统计分析程序进行处理。如果是00:00开始生成新的日志,那么轮循得到的日志就是access_log.0000。
4.3 使用cronolog实现日志轮循
首先需要下载和安装cronolog,可以到http://www.cronolog.org下载最新版本的cronolog。下载完毕以后,解压安装即可,方法如下所示:
[root@mail root]# tar xvfz cronolog-1.6.2.tar.gz [root@mail root]# cd cronolog-1.6.2 [root@mail cronolog-1.6.2]# ./configure [root@mail cronolog-1.6.2]# make [root@mail cronolog-1.6.2]# make check [root@mail cronolog-1.6.2]# make install |
这就完成了cronolog的配置和安装,默认情况下cronolog是安装在/usr/local/sbin下。
修改apache日志配置命令如下所示:
CustomLog "|/usr/local/sbin/cronolog /www/logs/secfocus/%w/access_log" combined |
这里%w表示按照日期星期几在不同的目录下保存日志,这种方式会保存一周的日志。为了进行日志分析,需要每天将该日志文件拷贝(或移动,如果不希望保存一周的日志)到一个固定的位置以方便日志分析统计文件进行处理,实用crontab –e,如下添加定时任务:
5 0 * * * /bin/mv /www/logs/secfocus/`date -v-1d +\% w`/access_log /www/logs/secfocus/access_log_yesterday |
这样再使用日志统计分析程序的对文件access_log_yesterday进行处理。
对 于使用负载均衡技术的大型站点,就存在多个服务器的访问日志的合并处理问题.对于这种情况,各个服务器定义或移动日志文件时就不能使用 access_log_yesterday了,就应该带上服务器编号了,例如服务器IP地址等信息以区分。然后在各个服务器上运行网站镜像和备份服务rsyncd(参考文章” 用rsync实现网站镜像和备份”,ttp://www.linuxaid.com.cn/engineer/ideal/article /rsync.htm),然后将每个服务器每天的安装配置文件通过rsync下载到专门进行访问统计分析的服务器上进行合并。
合并多个服务器的日志文件,例如:log1 log2 log3并输出到log_all中的方法是:
sort -m -t " " -k 4 -o log_all log1 log2 log3
-m: 使用 merge优化算法,-k 4表示根据时间进行排序,-o表示将排序结果存放到指定的文件中 |
五、日志统计分析程序webalizer的安装和配置
webalizer是一个高效的、免费的web服务器日志分析程序。其分析结果是HTML文件格式,从而可以很方便的通过web服务器进行浏览。Internet上的很多站点都使用webalizer进行web服务器日志分析。Webalizer具有以下一些特性:
1、是用C写的程序,所以其具有很高的运行效率。在主频为200Mhz的机器上,webalizer每秒钟可以分析10000条记录,所以分析一个40M大小的日志文件只需要15秒。
2、webalizer支持标准的一般日志文件格式(Common Logfile Format);除此之外,也支持几种组合日志格式(CombinedLogfile Format)的变种,从而可以统计客户情况以及客户操作系统类型。并且现在webalizer已经可以支持wu-ftpd xferlog日志格式以及squid日志文件格式了。
3、支持命令行配置以及配置文件。
4、可以支持多种语言,也可以自己进行本地化工作。
5、支持多种平台,比如UNIX、linux、NT, OS/2 和MacOS等。
上图是webalizer生成的访问统计分析报表第一页的内容,这里包含每个月的平均访问量的表格和条形图统计分析情况。点击每个月分,可以得到这个月每天的详细统计信息。
5.1 安装
在安装以前首先需要确保系统已经安装有gd库,可以使用:
[root@mail root]# rpm -qa|grep gdgd-devel-1.8.4-4gdbm-devel-1.8.0-14gdbm-1.8.0-14sysklogd-1.4.1-8gd-1.8.4-4 |
来确认系统已经安装有gd-deve和gd两个rpm包。
安装webalizer有两种方式,一种是下载源代码来安装,一种是直接使用rpm包来安装。
使用rpm包方式安装非常简单,从rpmfind.net找到webalizer包,下载以后:
rpm –ivh webalizer-2.01_10-1.i386.rpm |
即可实现安装。
对于源代码方式首先需要从http://www.mrunix.net/webalizer/下载,然后安装,首先解开源代码包:
tar xvzf webalizer-2.01-10-src.tgz |
在生成的目录中有个lang目录,该目录中保存了各种语言文件,但是只有繁体中文版本,可以自己转换成简体,或者自己重新翻译一下。然后进入生成的目录:
cd webalizer-2.01-10./configuremake --with-language=Chinesemake install |
编译成功后,会在/usr/local/bin/目录下安装一个webalizer可执行文件。
5.2 配置和运行
对webalizer运行的控制可以通过配置文件或者在命令行指定参数的两种方式进行。而使用配置文件方式是比较简单和灵活的,适用于自动web服务器日志统计分析的应用环境。
webalizer的默认配置文件为/etc/webalizer.conf,当启动 Webalizer时没有使用“-f“选项时,Webalizer就会寻找文件/etc/webalizer.conf,也可以使用“-f”来指定配置文 件(当服务器有虚拟主机时,就需要配置多份不同的webalizer配置文件,不同的虚拟主机的webalizer使用不同的配置文件。 Webalizer.conf配置文件中需要修改的配置选项如下:
LogFile /www/logs/secfocus/access_log |
用来指示配置文件的路径信息,webalizer会将该日志文件作为输入进行统计分析;
OutputDir /www/htdocs/secfocus/usage |
用来指示生成的统计报表的保存目录,在前面我们使用alias,使得用户可以使用http://www.secfocus.com/usage/来访问统计报表。
HostName www.secfocus.com |
用来指示主机名,统计报表中会引用该主机名。
其他选项就无需修改,配置文件修改完毕以后,就需要在定时webalizer,每天生成当日的统计分析。
以root身份运行:crontab –e 进入定时运行任务编辑状态,加入如下任务:
5 0 * * * /usr/local/bin/webalizer –f /etc/secfocus.webalizer.conf15 0 * * * /usr/local/bin/webalizer –f /etc/tomorrowtel.webalizer.conf |
我们这里假设系统运行有两个虚拟主机,并分别定义了日志分析配置文件 secfocus.webalizer.conf和tomorrowtel.webalizer.conf。这样我们定义在凌晨00:05对 secfocus的日志进行统计分析;在凌晨00:15对tomorrowtel的日志进行统计分析。
然后第二天分别使用http://www.secfocus.com/usage/和http://www.tomorrowtel.com/usage来察看各自的日志分析报表。
六、保护日志统计分析报告不被未授权用户访问
我们肯定不会希望自己网站访问统计信息随意被别人浏览,因此需要将usage目录保护起来,只允许合法用户访问。这里可以采用apache自带的基本的认证机制,配置以后再连接这个地址就会需要用户提供密码才能访问该页面:
1、条件
在配置文件中对目录"/"应该设置为:
DocumentRoot /www/htdocs/secfocus/AccessFileName .htaccessAllowOverride All |
2、需求
需求:对http://www.secfocus.com/usage/的访问,要求用户认证才能访问。这里设置用户为"admin",口令为"12345678"。
3、使用htpasswd建立用户文件
htpasswd -c /www/.htpasswd admin
此程序会询问用户"admin"的口令,你输入"12345678",两次生效。
4、建立.htaccess文件
用vi在/www/logs/secfocus/usage/目录下建立一个文件.htaccess,写入以下几行:
AuthName admin-onlyAuthType BasicAuthUserFile /www/.htpasswdrequire user admin |
5、测试
这时候通过浏览器访问http://www.secfocus.com/usage就会弹出框请求输入用户名和口令,这时候输入admin、12345678就可以才可以访问访问日志统计分析报表。
热心网友
利用Windows 2003服务器的远程维护功能,并通过IE浏览界面,就能对服务器的日志文件进行远程查看了,不过默认状态下,Windows 2003服务器的远程维护功能并没有开通,需要手工启动。
查看服务器日志文件的作用
网站服务器日志记录了web服务器接收处理请求以及运行时错误等各种原始信息。通 过对日志进行统计、分析、综合,就能有效地掌握服务器的运行状况,发现和排除错误原 因、了解客户访问分布等,更好的加强系统的维护和管理。
对于自己有服务器的朋友或是有条件可以看到服务器日志文件的朋友来说,无疑是了 解搜索引擎工作原理和搜索引擎对网页抓取频率的最佳途径。
通过这个文件,您可以了解什么搜索引擎、什么时间、抓取了哪些页面,以及可以知 道是主搜索蜘蛛还是从搜索蜘蛛抓取了您的网站等的信息。
访问原理
1、客户端(浏览器)和Web服务器建立TCP连接,连接建立以后,向Web服务器发出 访问请求(如:Get),根据HTTP协议该请求中包含了客户端的IP地址、浏览器类型、 请求的URL等一系列信息。
2、Web服务器收到请求后,将客户端要求的页面内容返回到客户端。如果出现错误,那么返回错误代码。
3、服务器端将访问信息和错误信息纪录到日志文件里。
下面我们就对本公司自己服务器其中的一个日志文件进行分析。由于文件比较长,所以我们只拿出典型的几种情况来说明。
#Software: Microsoft Internet Information Services 6.0
#Version: 1.0
#Date: 2006-05-12 03:56:30
#Fields:
date time s-sitename s-ip cs-method cs-uri-stem cs-uri-query s-port
cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status
2006-05-12
03:56:30 三圆三圆三圆** 218.25.92.169 GET / - 80 - 220.181.18.98
Baispider+(+http://www.baidu.com/search/spider.htm) 403 14 5
/* 说明 */
上面定义了在2006年5月12日的3点56分30秒的时候,IP为220.181.18.98的百度蜘蛛通过80端口(HTTP)访问了IP为218.25.92.169的服务器的根目录,但被拒绝。
#Software: Microsoft Internet Information Services 6.0
#Version: 1.0
#Date: 2006-05-12 10:18:39
#Fields:
date time s-sitename s-ip cs-method cs-uri-stem cs-uri-query s-port
cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status
2006-05-12
10:33:36 三圆三圆三圆** 218.25.92.169 GET /***/index.htm - 80 - 10.2.57.6
Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1;+SV1) 200 0 0
2006-05-12
10:33:36 三圆三圆三圆** 218.25.92.169 GET /***/***/***.gif - 80 - 10.2.57.6
Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1;+SV1) 200 0 0
/* 说明 */
上面定义了在2006年5月12日的10点33分36秒的时候,IP为10.2.57.6的用户正常访问了网站三圆三圆三圆**中***目录下的index.htm页和***/***下的***。gif图片。
#Software: Microsoft Internet Information Services 6.0
#Version: 1.0
#Date: 2006-05-12 13:17:46
#Fields:
date time s-sitename s-ip cs-method cs-uri-stem cs-uri-query s-port
cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status
2006-05-12
13:17:46 三圆三圆三圆** 218.25.92.169 GET /robots.txt - 80 - 66.249.66.72
Mozilla/5.0+(compatible;+Googlebot/2.1;++http://www.google.com/bot.html)
404 0 2
2006-05-12 13:17:46 三圆三圆三圆** 218.25.92.169 GET / - 80 -
66.249.66.72
Mozilla/5.0+(compatible;+Googlebot/2.1;++http://www.google.com/bot.html)
403 14 5
/* 说明 */
上面定义了在2006年5月12日的13点17分46秒的时候,IP为66.249.66.72的Google蜘蛛访问了robots.txt文件,但没有找到此文件,有访问了此网站的根目 录,但被拒绝。
现在也有很多日志分析工具,如果您的服务器流量很大的话,作者推荐使用分析工具来分析服务器日志。
热心网友
这些日志信息对计算机犯罪调查人员非常有用。
所谓日志是指系统所指定对象的某些操作和其操作结果按时间有序的集合。每个日志文件由日志记录组成.每条日志记录描述了一次单独的系统事件。通常情况下,系统日志
是用户可以直接阅读的文本文件,其中包含了一个时间戳和一个信息或者子系统所特有的其他信息。日志文件为服务器、工作站、防火墙和应用软件等IT资源相关活动记录必要的、有价值的信息,这对系统监控、查询、报表和安全审汁是十分重要的。日志文件中的记录可提供以下用途:监控系统资源,审汁用户行为,对可疑行为进行报警,确定入侵行为的范围,为恢复系统提供帮助,生成调查报告,为打击计算机犯罪提供证据来源。
在windows操作系统中有一位系统运行状况的忠实记录者,它可以详细记录计算机从开机、运行到关机过程中发生的每一个事件,它就是“事件查看器”。用户可以利用这个系统维护工具,收集有关硬件、软件、系统问题方面的信息,并监视系统安全事件,将系统和其他应用程序运行中的错误或警告事件记录下来,便于诊断和纠正系统发生的错误和问题。
可以双击“控制面板”中“管理工具”中的“事件查看器”,打开事件查看器窗口