dedecms 取消服务器/主机空间目录脚本的执行权限方法[图文]
<p>网站安全中,对目录的执行权限是非常敏感的,一般来说,可以写入的目录是不能够拥有脚本的执行权限的,像DedeCMS系统,可写入的有两个目录data、uploads,data目录主要是基本配置文件和缓存数据,uploads则是附件上传保存的目录,本篇将针对不同服务器环境来介绍如何取消这两个目录的执行权限,当然我们也建议用户其他一些生成纯静态html的目录,拥有可写入权限的也统统去除执行权限,这样系统会更为安全。</p>
<span>Windows下的IISIIS6.0</span>
<p>
打开IIS中站点,在站点uploads目录、data目录以及静态html生成目录点击右键,菜单中选择“属性”,在目录属性面板选择执行权限为“无”即可。(如图1)</p>
<p>
<img style="max-width:100%!important;height:auto!important;"title="dedecms 取消服务器/主机空间目录脚本的执行权限方法[图文]" alt="dedecms 取消服务器/主机空间目录脚本的执行权限方法[图文]" src="https://zhuji.jb51.net/uploads/img/20230519/2671e47dfcb8175efdd591b0662392b3.jpg"></p>
<p>
(图1)</p>
<p>
</p>
<span>IIS7</span>
<p>
IIS7也类似于IIS6.0,选择站点对应的目录,data、uploads及静态html文件目录,双击功能试图面板中的“处理程序映射”(如图2)</p>
<p>
<img style="max-width:100%!important;height:auto!important;"title="dedecms 取消服务器/主机空间目录脚本的执行权限方法[图文]" alt="dedecms 取消服务器/主机空间目录脚本的执行权限方法[图文]" src="https://zhuji.jb51.net/uploads/img/20230519/d288402ce09e1056dbbef87d1abaf242.jpg"></p>
<p>
(图2)</p>
<p>
在“编辑功能权限……”中,我们直接去除脚本的执行权限即可。(如图3)</p>
<p>
<img style="max-width:100%!important;height:auto!important;"title="dedecms 取消服务器/主机空间目录脚本的执行权限方法[图文]" alt="dedecms 取消服务器/主机空间目录脚本的执行权限方法[图文]" src="https://zhuji.jb51.net/uploads/img/20230519/1bb00e4c2018a4398c2518999e5d9e49.jpg"></p>
<p>
(图3)</p>
<p>
</p>
<span>Apache下目录脚本的执行权限设置独立主机配置</span>
<p>
在Apache中,没有Windows 下IIS的图形管理界面,我们需要手工修改下apache的配置文件,来进行目录脚本的执行权限的设定。<br>
首先我们找到apache的配置文件httpd.conf,通常情况下,该配置文件在apache安装目录下的conf文件夹中(如图4)。</p>
<p>
<img style="max-width:100%!important;height:auto!important;"title="dedecms 取消服务器/主机空间目录脚本的执行权限方法[图文]" alt="dedecms 取消服务器/主机空间目录脚本的执行权限方法[图文]" src="https://zhuji.jb51.net/uploads/img/20230519/55441c42d9f5a7ec4c18ceb0b6fcd70b.jpg"></p>
<p>
(图4)</p>
<p>
打开httpd.conf文件,找到内容中如图5的位置:</p>
<p>
<img style="max-width:100%!important;height:auto!important;"title="dedecms 取消服务器/主机空间目录脚本的执行权限方法[图文]" alt="dedecms 取消服务器/主机空间目录脚本的执行权限方法[图文]" src="https://zhuji.jb51.net/uploads/img/20230519/306917623688cf1fc399c59fc136b2bc.jpg"></p>
<p>
(图5)</p>
<p>
</p>
<p>
将需要限制执行脚本文件的目录配置添加到下方:</p>
<p>
配置内容为:<br><br>
</p>
<div>
<div>
<span><u>复制代码</u></span>
</div>
代码如下:</div>
<div id="phpcode2">
<br>
<Directory "DIR"> &nbsp;&nbsp;&nbsp; <br>
<FilesMatch ".(php|asp|jsp)$"> &nbsp;&nbsp;&nbsp;&nbsp;<br>
&nbsp;&nbsp;&nbsp; Deny from all &nbsp;&nbsp;&nbsp; <br>
</FilesMatch> <br>
</Directory></div>
<br><br><span> 配置内容中的DIR为需要限制执行脚本文件的目录,FilesMatch后的内容为需要限定的执行的脚本后缀名。例如:这里需要禁止测试站点uploads文件夹下的PHP,ASP,JSP脚本的运行,则进行如下图6配置:</span>
<p>
</p>
<p>
<img style="max-width:100%!important;height:auto!important;"title="dedecms 取消服务器/主机空间目录脚本的执行权限方法[图文]" alt="dedecms 取消服务器/主机空间目录脚本的执行权限方法[图文]" src="https://zhuji.jb51.net/uploads/img/20230519/6d66e88cf266cd78b9a1d5c7da14cdcd.jpg"></p>
<p>
(图6)</p>
<p>
</p>
<p>
在配置完成后,重启一下apache,配置便生效!<br>
在操作前,uploads文件夹下我新建了一个index.php文件,图7为未作配置前访问情况</p>
<p>
<img style="max-width:100%!important;height:auto!important;"title="dedecms 取消服务器/主机空间目录脚本的执行权限方法[图文]" alt="dedecms 取消服务器/主机空间目录脚本的执行权限方法[图文]" src="https://zhuji.jb51.net/uploads/img/20230519/7a07dfc1e1438f89ec44601595f77c20.jpg"></p>
<p>
(图7)</p>
<p>
图8为重启apache后访问该页面的效果。</p>
<p>
<img style="max-width:100%!important;height:auto!important;"title="dedecms 取消服务器/主机空间目录脚本的执行权限方法[图文]" alt="dedecms 取消服务器/主机空间目录脚本的执行权限方法[图文]" src="https://zhuji.jb51.net/uploads/img/20230519/69619f6adbf871ff81bccc5a7e35ce39.jpg"></p>
<p>
(图8)</p>
<span>虚拟主机/空间配置</span>
<p>
<br>
在配置前需要确认你的空间是否支持.htaccess和rewrite,该方法基于.htaccess文件中使用rewrite来达到禁止指定脚本的运行效果。<br>
规则内容如下:<br>
</p>
<div>
<div>
<span><u>复制代码</u></span>
</div>
代码如下:</div>
<div id="phpcode3">
<br>
RewriteEngine on &nbsp;RewriteCond % !^$ &nbsp;<br>
RewriteRule uploads/(.*).(php)$ – &nbsp;<br>
RewriteRule data/(.*).(php)$ – &nbsp;<br>
RewriteRule templets/(.*).(php)$ – </div>
<br><span>针对uploads,data,templets 三个目录做了执行php脚本限制;</span><br><span>将如上内容存储至到.hatccess文件中,将该文件存放到你的站点根目录下,</span>
<p>
</p>
<p>
这样,目录脚本的执行权限就控制好了,规则上传前后的效果同图7,图8。 </p>
<p>
感谢:djks、织梦的鱼参与编辑</p>
頁:
[1]