linux – Apache access.log解释

前端之家收集整理的这篇文章主要介绍了linux – Apache access.log解释前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在apache(access.log)的日志文件中,我找到如下所示的日志条目:
10.20.30.40 - - [18/Mar/2011:02:12:44 +0200] 
"GET /index.PHP HTTP/1.1" 404 505 "-" "Opera/9.80 (Windows NT 6.1; U; en) 
Presto/2.7.62 Version/11.01"

其含义是明确的:IP 10.20.30.40的客户端在/index.PHP(即http://mysite.org/index.php)上应用GET HTTP方法,使用Opera作为客户端/浏览器接收状态代码404.我不明白的是以下条目:

174.34.231.19 - - [18/Mar/2011:02:24:56 +0200] 
"GET http://www.siasatema.com HTTP/1.1" 200 469 "-" 
"Python-urllib/2.4"

所以我在这里看到的是某人(IP 174.34.231.19的客户端)访问了http://www.siasatema.com并获得了200个HTTP状态代码(?).这对我来说没有意义……我能想到的唯一解释就是我的apache服务器就像代理一样!以下是一些其他请求没有我的网站作为目的地…

187.35.50.61 - - [18/Mar/2011:01:28:20 +0200] "POST http://72.26.198.222:80/log/normal/ HTTP/1.0" 404 491 "-" "Octoshape-sua/1010120"
87.117.203.177 - - [18/Mar/2011:01:29:59 +0200] "CONNECT 64.12.244.203:80 HTTP/1.0" 405 556 "-" "-"
87.117.203.177 - - [18/Mar/2011:01:29:59 +0200] "open 64.12.244.203 80" 400 506 "-" "-"
87.117.203.177 - - [18/Mar/2011:01:30:04 +0200] "telnet 64.12.244.203 80" 400 506 "-" "-"
87.117.203.177 - - [18/Mar/2011:01:30:09 +0200] "64.12.244.203 80" 400 301 "-" "-"

我相信所有这些都与某种攻击或滥用服务器有关.有人可以解释可能发生的事情以及如何应对这种情况吗?

更新1:

我禁用了mod_proxy以确保我没有开放代理:

# a2dismod proxy

从哪里得到消息:

Module proxy already disabled

我确保在$APACHE / mods-enabled下没有文件proxy.conf.最后,我在我的浏览器(Mozzila)上设置了我的IP作为代理,并尝试访问http://google.com.我没有被重定向到google.com,而是出现了我的网页.尝试访问http://a.b(!)时也是如此.所以我的服务器并没有真正作为代理工作,因为它不转发请求…但我认为如果不知何故我可以配置它返回status code 403会更好.

这是我的apache配置文件

<VirtualHost *:80>
    ServerName mysite.org
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/  
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /var/www/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>

    ErrorLog /var/log/apache2/error.log    
    LogLevel warn    
    CustomLog /var/log/apache2/access.log combined

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>
</VirtualHost>

更新2:

使用块,我限制使用除GET和POST之外的其他方法

<Limit POST PUT CONNECT HEAD OPTIONS DELETE 
  PATCH PROPFIND PROPPATCH MKCOL COPY MOVE LOCK UNLOCK>
  Order deny,allow
  Deny from all
</Limit>
<LimitExcept GET>
  Order deny,allow
  Deny from all
</LimitExcept>

现在禁止GET以外的其他方法(403).我现在唯一的问题是,是否有一些技巧来启动那些如何尝试使用我的服务器作为代理…

解决方法

好吧,我可以使用以下python代码获取确切的日志消息
import urllib
proxies = {'http':'http://myapacheserevr'}
file_handle = urllib.urlopen('http://www.siasatema.com',proxies=proxies)

这给了我日志条目

192.168.0.28 – – [18 / Mar / 2011:14:40:40 0200]“GET http://www.siasatema.com HTTP / 1.0”200 453“ – ”“Python-urllib / 1.17”

我从这里得到的是我默认网页的内容,

所以,是的,通过您的网络服务器进行代理,可能是黑客正在寻找开放,配置错误的代理来连接和滥用其他网站.要阻止它设置: –

ProxyRequests Off

我可以通过这样做来复制另一个人

$nc ubuntuvm 80
telnet 64.12.244.203 80

这使:-192.168.0.28 – – [18 / Mar / 2011:14:58:47 0200]“telnet 64.12.244.203 80”400 505“ – ”“ – ”

原文链接:https://www.f2er.com/linux/400807.html

猜你在找的Linux相关文章