防止黑客上传下载或者攻击Apache,普通用户可以上传图片或者文件到服务器,data目录可写,如果是木马文件,点击后服务器就会被入侵,该怎么避免?不允许用户上传文件不可能,只能上传后不允许用户做任何操作,限制对其进行解析。


1、测试php解析

[root@daixuan data]# pwd

/data/www/data

[root@daixuan data]# vim info.php

<?php

phpinfo();

?>

192.168.101.175的PC机浏览器打开:http://www.test.com/data/info.php,可以看到info.php的详细配置,即对php正常解析。


2.修改配置文件,限制IP解析

[root@daixuan data]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf 

<VirtualHost *:80>

............

   <Directory "/data/www/data">

      php_admin_flag engine off     关闭php引擎

     <filesmatch "(.*)php">        满足以php结尾的文件

        Order deny,allow

        Deny from all           全部不解析

        Allow from 192.168.101.230  允许例外:

        Allow from 127.0.0.1      允许的例外

      </filesmatch>

    </Directory>

............

</VirtualHost >

再次使用192.168.101.175的PC机打开浏览器:http://www.test.com/data/info.php

403 Forbidden

You don't have permission to access /data/info.php on this server.


3、测试白名单IP的正常解析

[root@daixuan data]# curl -x 192.168.101.230:80 -I http://www.test.com/data/info.php

HTTP/1.1 200 OK

Date: Wed, 02 Dec 2015 04:04:12 GMT

Server: Apache/2.2.31 (Unix) PHP/5.4.45