某个目录下禁止解析 php,这个很有用,我们做网站安全的时候,这个用的很多,比如
某些目录可以上传文件, 为了避免上传的文件有木马, 所以我们禁止这个目录下面的访问解
析 php.

安装目录下有个data目录,查看一下他的权限。

ll /data/www/data/

apache运行的用户就是daemon。属主改成daemon因为在daemon下生成文件。

例子:

在论坛里发个帖子,上传本地图片。

查找这个图片。

ls /data/www/data/attachment/forum///

52365dsf89t55s.jpg

data目录可以被用户写,用户上传个木马文件被执行,就会很危险。我们应该做些限制。

打开虚拟机配置文件

vim /usr/local/apache2/conf/extra/httpd-vhosts.conf 

插入

<Directory /data/www/data>
php_admin_flag engine off
<filesmatch "(.*)php">
Order deny,allow
Deny from all
</filesmatch>
</Directory>

说明:php_admin_flag engine off 这个语句就是禁止解析 php 的控制语句,但只这样配
置还不够,因为这样配置后用户依然可以访问 php 文件,只不过不解析了,但可以下载,用
户下载 php 文件也是不合适的,所以有必要再禁止一下。

检测是否正确,重启

apachectl -t
/usr/local/apache2/bin/apachectl restart

在/data/www/data下写一个php文件试试能不能解析

vim /data/www/data/info.php
<?php
phpinfo();
?>

在浏览器里输入

http://www.denny.com/data/info.php

错误403

把禁止解析php的文件写成

<Directory /data/www/data>
php_admin_flag engine off
# <filesmatch "(.*)php">
# Order deny,allow
# Deny from all
# </filesmatch>
</Directory>

用户访问就会下载这个php文件。

如果全部注释掉

#<Directory /data/www/data>
#php_admin_flag engine off
# <filesmatch "(.*)php">
# Order deny,allow
# Deny from all
# </filesmatch>
#</Directory>

用户访问就会解析成功,信息就会泄露。就有被攻击的危险。

LAMP 2.5 Apache禁止解析php的更多相关文章

  1. LAMP 2.6 Apache 禁止指定user_agent

    user_agent 我把它叫做浏览器标识, 目前主流的浏览器有 IE. chrome. Firefox. 360. iphone上的 Safari.Android 手机上的.百度搜索引擎.googl ...

  2. apache禁止php解析--安全

    #禁止解析php <Directory "/data/www/data/"> php_admin_flag engine off <filesmatch &quo ...

  3. Linux centosVMware apache 限定某个目录禁止解析php、限制user_agent、php相关配置

    一.限定某个目录禁止解析php 核心配置文件内容 vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf 先创建.编辑一个php 配置 vim /u ...

  4. Apache配置 10. 访问控制-禁止解析PHP

    (1)简述 对于使用PHP语言编写的网站,有一些目录是有需求上传文件的.如果网站代码有漏洞,让黑客上传了一个用PHP写的木马,由于网站可以执行PHP程序,最终会让黑客拿到服务器权限. 为了避免这种情况 ...

  5. centos LAMP第二部分apache配置 下载discuz!配置第一个虚拟主机 安装Discuz! 用户认证 配置域名跳转 配置apache的访问日志 配置静态文件缓存 配置防盗链 访问控制 apache rewrite 配置开机启动apache tcpdump 第二十节课

    centos    LAMP第二部分apache配置  下载discuz!配置第一个虚拟主机 安装Discuz! 用户认证 配置域名跳转  配置apache的访问日志  配置静态文件缓存  配置防盗链 ...

  6. LAMP第二部分apache配置

    课程大纲:1. 下载discuz! mkdir /data/wwwcd /data/wwwwget  http://download.comsenz.com/DiscuzX/3.2/Discuz_X3 ...

  7. linux安装lamp环境(linux+apache+mysql+php)

    源码安装 本次使用 Centos7.2 MySQL5.7.22 Apache2.4.37 PHP5.6.38 安装Apache 安装httpd和所需依赖:gcc, apr, apr-util,apr- ...

  8. ZH奶酪:Ubuntu 14.04安装LAMP(Linux,Apache,MySQL,PHP)

    (Linux Operating System,Apache Web Server,MySQL database,PHP) 首先,一个三行命令搞定的方法: sudo apt-get update su ...

  9. 限定某个目录禁止解析php 、限制user_agent 、php的配制文件、PHP的动态扩展模块

    1. 限定某个目录禁止解析php(有些目录用户可以上传文件或图片,可能会被恶意者上传其它文件):编辑:/usr/local/apache2.4/conf/extra/httpd-vhosts.conf ...

随机推荐

  1. python 2 到 3 的新手坑

    print 和 input print 我们在课程最开始的时候就讲过 print,在版本2的使用方法是: print 'this is version 2' 也可以是 print('this is v ...

  2. 批量反编译class文件

    首先得进入jad的路径中,一般都放在jdk的安装目录的bin中 进入到该目录中,否则无法使用jad命令. jad -o -r -d F:\src -s java F:\classes\**\*.cla ...

  3. ie 元素兼容性总结

    css 属性元素 2.z-index 正常按自身层级决定显示顺序,在ie6 7 还需要依赖于父级的层级决定,排布在后边的元素排在前面.后来者居上覆盖前者. IE6,7支持inline元素转换成inli ...

  4. The import javax.servlet.jsp.JspWriter cannot be resolved' error

    Add servlet-api.jar and jsp-api.jar from Tomcat 6.0 library to ecipse project.

  5. C语言基础三

    C--数组 一维数组的定义和引用 定义:类型说明符 数组名[常量表达式] int a[ 10 ];他表示定义了一个整形数组,数组名为a,有10个元素. 注意:C语言不允许对数组的大小做动态定义. 一维 ...

  6. 算法练习2---斐波那契数列java版

    古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子, 假如兔子都不死,问每个月的兔子总数为多少? 数列:1   1   2   3   5   8   ...

  7. Windows下载安装虚拟机和CentOS7

    1,想要在Windows系统中安装linux系统,首先需要安装一个虚拟机VMware VMware 12下载地址:https://my.vmware.com/cn/web/vmware/info/sl ...

  8. 【Window Service】关于Window Service的两三事

    引言  Window Service通常用于寄宿WCF服务或者定时作业.下面记录一下它的用法. 创建 创建Window Service项目后,可以看到Program和Service1类.Program ...

  9. LeetCode OJ:Rotate Array(倒置数组)

    Rotate an array of n elements to the right by k steps. For example, with n = 7 and k = 3, the array  ...

  10. KVM-克隆

    kvm虚拟机的克隆分为两种情况,本文也就通过以下两种情况进行克隆,克隆虚拟机为Centos 6.4X64. (1) KVM主机本机虚拟机直接克隆. (2) 通过复制配置文件与磁盘文件的虚拟机复制克隆( ...