站三界导航
首页 建站经验虚拟主机cPanel面板查看服务器的访问日志

虚拟主机cPanel面板查看服务器的访问日志

  • 建站经验
  • 来源:站三界导航
  • 49阅读
  • 2022-04-28

相信大家都在自己的网站上安装了网站统计的代码,如google analytics、量子统计、百度统计、cnzz、51.la等,这些工具可以统计网站的流量,也就是网站上访客可看到的所有页面的访问量,但是这些统计工具都不能统计你主机上资源的原始访问信息,例如某个图片被谁下载了。 


绝大多数收费主机都提供原始访问日志(raw access log),网站服务器会把每一个访客来访时的一些信息自动记录下来,保存在原始访问日志文件中,如果你的主机不提供日志功能,建议你到期后还是换主机吧。日志中记录了网站上所有资源的访问信息,包括图片、css、js、flash、html、mp3等所有网页打开过程载入的资源,同时记录了这些资源都被谁访问了、用什么来访问以及访问的结果是什么等等,可以说原始访问日志记录了主机的所有资源使用情况。 如果你的网站遭到了攻击、非法盗链和不良请求等,通过分析原始访问日志能大概分析出端倪来,例如:今年年初我往我的主机上传了一个mp3,不幸被百度mp3收录,引来大量的盗链,导致我的主机流量猛增,虽然这对我并无大碍,但是心里不爽!通过分析日志,我找出了问题根源,删除了那个mp3,主机流量也降下来了。 不同主机使用的面板不太一样,所以查看原始访问日志的方法也不太一样,但是日志记录的格式都是一样的,具体查看原始访问日志的方法请咨询相关主机客服。下面是cpanel面板,通过点击红色方框中的按钮,接着选择你的网站域名,即可下载原始访问日志,使用文本编辑器打开即可查看: 原始访问日志每一行就是类似以下的记录: 64.10.90.61 - - [04/mar/2001:11:47:26 -0600] "get /intro.htm http/1.1" 200 13947 "http://www.yourdomain.com/" "mozilla/4.0 (compatible; msie 5.0; windows 98; digext)" 下面我们来说说这一行记录的意思: 64.10.90.61 这是访客(也可能是机器人)的ip [04/mar/2001:11:47:26 -0600] 这是访客访问该资源的时间(date),-0600是该时间所对应的时区,即与格林威治时间相差-6个小时 get /intro.htm http/1.1 请求信息,包括请求方式、所请求的资源以及所使用的协议,该语句的意思就是以get方式,按照http/1.1协议获取网页/intro.htm,intro.htm为网站上的某个网页。 200 13947 200为该请求返回的状态码(http code),不同的状态码代表不同的意思,具体请阅读 http 状态代码;13947为此次请求所耗费的流量(size in bytes),单位为byte http://www.yourdomain.com/ 为访客来源(referer)。这一段是告诉我们访客是从哪里来到这一个网页。有可能是你的网站其他页,有可能是来自搜索引擎的搜索页等。通过这条来源信息,你可以揪出盗链者的网页。 mozilla/4.0 (compatible; msie 5.0; windows 98; digext) 为访客所使用的浏览器类型(agent),这里记录了用户使用的操作系统、浏览器型号等 看了以上说明,可能你也大概知道每一行记录到底记录了一些什么东西,可以开始独立分析你的网站原始访问日志了,但是叫你直接看这些杂乱的日志,相信你会很抓狂,不愿意干。cpanle面板中的“latest visitors”提供一种格式化后日志查看方式,看起来比较舒服一些: 上图中host: 218.17.120.205 为访客的ip,可看出该访客在当前时间段发起了三个请求,对应原始访问日志中的3行记录,红色标出的部分为访客请求的资源(也就是访客流量的网页等),其他部分参见以上说明。“latest visitors”中只能显示最近300个ip的访问信息,这里我写了一个原始访问日志的格式化工具,可将原始访问日志格式化成上图所示格式,方便阅读,工具地址:http://ludou.co.tv/logreader/ 以上介绍了如何查看原始访问日志,现在我们来谈谈如何分析日志中的内容: 


 1、注意那些被频繁访问的资源 如果在日志中,你发现某个资源(网页、图片和mp3等)被人频繁访问,那你应该注意该资源被用于何处了!如果这些请求的来源(referer)不是你的网站或者为空,且状态码(http code)为200,说明你的这些资源很可能被人盗链了,通过 referer 你可以查出盗链者的网址,这可能就是你的网站流量暴增的原因,你应该做好防盗链了。请看下图,我网站上的japan.mp3这个文件就被人频繁的访问了,下图还只是日志的一部分,这人极其险恶,由于我早已将该文件删除,它迟迟要不到japan.mp3,在短短一个小时内对japan.mp3发起了不下百次的请求,见我设置了防盗链就伪造来源referer和agent,还不断地更换ip,很可惜它做得都是无用功,根本没有这个文件,请求的状态码http code都是403或者404 2、注意那些你网站上不存在资源的请求 例如下图的4个请求信息。/admin/editor/db/kmoxewebeditor.mdb等几个资源都是不是本站的资源,所以http code不是403就是404,但从名称分析,可能是保存数据库信息的文件,如果这些信息让别人拿走,那么攻击你的网站就轻松多了。发起这些请求的目的无非就是扫描你的网站漏洞,通过漫无目的地扫描下载这些已知的漏洞文件,很可能会发现你的网站某个漏洞哦!


通过观察,可以发现,这些请求所使用的agent差不多都是mozilla/4.0、mozilla/5.0或者libwww-perl/等等非常规的浏览器类型,以上我提供的日志格式化工具已经集成了对这些请求的警报功能。我们可以通过禁止这些agent的访问,来达到防止被扫描的目的,具体方法下面再介绍。 常见的扫描式攻击还包括传递恶意参数等: //header.php?repertoire=../../../../../../../../../../../../../../../proc/self/environ%00  /?_serverdocument_root=http://wdwinfo.ca/logs/.log? 3、观察搜索引擎蜘蛛的来访情况 通过观察日志中的信息,你可以看出你的网站被蜘蛛访问的频率,进而可以看出你的网站是否被搜索引擎青睐,这些都是seo所关心的问题吧。日志格式化工具已经集成了对搜索引擎蜘蛛的提示功能。常见搜索引擎的蜘蛛所使用的agent列表如下: google蜘蛛 mozilla/5.0 (compatible; googlebot/2.1; +http://www.google.com/bot.html) baidu蜘蛛 baiduspider+(+http://www.baidu.com/search/spider.htm) yahoo!蜘蛛 mozilla/5.0 (compatible; yahoo! slurp/3.0; http://help.yahoo.com/help/us/ysearch/slurp) yahoo!中国蜘蛛 mozilla/5.0 (compatible; yahoo! slurp china; http://misc.yahoo.com.cn/help.html) 微软bing蜘蛛 msnbot/2.0b (+http://search.msn.com/msnbot.htm) google adsense蜘蛛 mediapartners-google 有道蜘蛛 mozilla/5.0 (compatible; youdaobot/1.0; http://www.youdao.com/help/webmaster/spider/; ) soso搜搜博客蜘蛛 sosoblogspider+(+http://help.soso.com/soso-blog-spider.htm) sogou搜狗蜘蛛 sogou web spider/4.0(+http://www.sogou.com/docs/help/webmasters.htm#07) twiceler爬虫程序 mozilla/5.0 (twiceler-0.9 http://www.cuil.com/twiceler/robot.html)’ google图片搜索蜘蛛 googlebot-image/1.0 俄罗斯yandex搜索引擎蜘蛛 yandex/1.01.001 (compatible; win16; i) alexa蜘蛛 ia_archiver (+http://www.alexa.com/site/help/webmasters; crawler@alexa.com) feedsky蜘蛛 mozilla 5.0 (compatible; feedsky crawler /1.0; http://www.feedsky.com) 韩国yeti蜘蛛 yeti/1.0 (nhn corp.; http://help.naver.com/robots/) 


4、观察访客行为 通过查看格式化后的日志,可以查看跟踪某个ip在某个时间段的一系列访问行为,单个ip的访问记录越多,说明你的网站pv高,用户粘性好;如果单个ip的访问记录希希,你应该考虑如何将你的网站内容做得更加吸引人了。通过分析访客的行为,可以为你的网站建设提供有力的参考,哪些内容好,哪些内容不好,确定网站的发展方向;通过分析访客的行为,看看他们都干了些什么事,可以揣测访客的用意,及时揪出恶意用户。 


以上只是我个人总结出来的一些小技巧,可以简单的分析你的日志内容,毕竟我个人见识还是比较短浅,还不能全面地进行日志分析。在cpanel主机控制面板中,还提供了awstats和webalizer两个日志分析工具,它们都是以原始访问日志为基础进行分析,功能强大且丰富,你可以一试,不懂的可以咨询主机客服。 应敌之策 上面说了如何分析你的日志,下面我们来讲讲如何御敌于前千里之外。我们这里以linux主机的.htaccess编写为例来讲解如何防范恶意请求。 


 1、封杀某个ip 如果你不想让某个ip来访问你的网站,可以将其封杀。封杀防范有二:其一,在cpanel面板中有个security – ip deny manager,点击进去填上要封杀的ip即可;其二,在.htaccess中加入以下语句,即可封杀这两个ip 123.165.54.14、123.165.54.15,以及123.165.55这个ip段,多个同理: deny from 123.165.54.14 deny from 123.165.54.15 deny from 123.165.55 2、封杀某个浏览器类型(agent) 通常情况下,如果是使用机器人来扫描或者恶意下载你的网站资源,它们使用的agent差不多都是一个类型,例如我上面所说的mozilla/4.0、mozilla/5.0或者libwww-perl/等。你可以封杀某个agent,来达到防范攻击的目的。在.htaccess中添加以下规则: setenvifnocase user-agent ".*firefox/3\.6\.3.*" bad_agent order allow,deny allow from all deny from env=bad_agent 以上规则封杀了agent中含有firefox/3.6.3的来源,也就是包括以下例子的agent将无法访问你的网站: agent: mozilla/5.0 (windows; u; windows nt 5.1; zh-cn; rv:1.9.2.3) gecko/20100401 firefox/3.6.3 以上只是个例子,切不可用于你的网站,否则使用firefox 3.6.3的用户就不可以访问你的网站了,访问结果http code都是403,他们看到都是403页面,也就是禁止访问页面。这里让我来教你如何编写封杀的规则,以上语句setenvifnocase user-agent ".*firefox/3\.6\.3.*" bad_agent指定了要封杀的规则,核心语句 ".*firefox/3\.6\.3.*" 用于匹配含有 firefox/3.6.3 的来源,写法见正则表达式的写法,这里给出几个正则例子,你可以套用:   通过上表,你差不多也知道了个大概,在正则式子中,所有点 . 一概写成 \. ; ^用于匹配开头, $用于匹配结尾;.* 用于匹配任意长度的字符(包括长度为0的),下面是一个完整例子,你可以套用,相信你也可以写出自己的规则: ## block bad bots by user-agent setenvifnocase user-agent "^libwww-perl" bad_agent setenvifnocase user-agent "^mozilla/4\.0$" bad_agent setenvifnocase user-agent "^mozilla/5\.0$" bad_agent setenvifnocase user-agent "^$" bad_bot order allow,deny allow from all deny from env=bad_bot 3、封杀某个来源(referer) 如果某个网站频繁地对你网站进行盗链,且不听劝,那你可以通过禁止它的referer,来达到防盗链目的,下面举个例子来禁止http://www.google.com这个网站对你网站的盗链,正则的编写跟上面的无异,在.htaccess中添加以下规则: setenvif referer "^http://www\.google\.com" bad_referer order allow,deny allow from all deny from env=bad_referer 4、防盗链 通过对来源(referer)的判断,使用以下代码可以达到简单的防盗链。以下列出的网址,允许访问你网站上后缀名为jpg|gif|png|css|js|bmp|mp3|wma|swf的文件,其余网站全部禁止访问这些文件,正则的写法与上面说的相同,你可以将其中的域名稍作更改,然后应用于你的网站,在.htaccess中添加以下规则: setenvif referer "^http://www\.ludou\.org/" local_referer setenvif referer "^http://cache\.baidu\.com/" local_referer # 将以下语句中的 # 去除,即可允许referer为空的请求,一般设置允许为好 # setenvif referer "^$" local_referer  order deny,allow  deny from all  allow from env=local_referer 


5、文件重命名 即使你网站上的资源被人盗链了,通过文件重命名,同样可以达到防盗链的目的,毕竟盗链者不知道你改了文件名,它也不会整天监视你的文件。 总结 不管怎么说,有防的就有攻,攻防永远都是一对冤家,这样的拉锯永远都不会终止。以上介绍的方法只能达到简单防范的目的,如果有人有意要攻击你的网站,那点东西起不了太大作用,我们只能根据敌手出的招,见招拆招才能免于不测,这样的能力,还需各位站长慢慢学习积累,毕竟做个网站也不是那么简单的。 站三界导航:https://www.zhansanjie.com

本文结束
本文来自投稿,不代表站三界导航立场,如若转载,请注明出处:https://www.zhansanjie.com/article/details/3814.html

版权声明:

1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

2、本站仅提供信息发布平台,不承担相关法律责任。

3、若侵犯您的版权或隐私,请联系本站管理员删除。

4、本文由会员转载自互联网,如果您是文章原创作者,请联系本站注明您的版权信息。

分享
站三界导航
本站声明:本站严格遵守国家相关法律规定,非正规网站一概不予收录。本站所有资料取之于互联网,任何公司或个人参考使用本资料请自辨真伪、后果自负,站三界导航不承担任何责任。在此特别感谢您对站三界导航的支持与厚爱。