织梦CMS搭建网站必做的服务器相关安全设置

织梦CMS搭建网站必做的服务器相关安全设置

http://help.dedecms.com/install-use/server/2011/1109/2124.html#printSource

http://www.aliweihu.com/998.html

第一步:精简程序

 

1. member文件夹:不需要会员功能请删除

2. special文件夹:不需要专题功能请删除

3. install文件夹:网站安装后,请删除

4. plus文件夹:保留view.php、list.php、count.php及文件夹 img 即可保证基础功能使用

其他文件选择性保留,如:

diy.php  自定义表单功能

guestbook.php 及 guestbook 文件夹 网站自带留言薄功能

search.php 搜索页

download.php 下载功能

 

第二步:后台安全

 

很多站长建站后连最基础的后台路径 dede 都不修改,并且账号密码也是admin,那么黑客直接就可以进入你的后台了,所以请修改后台路径为比较难猜测到的文件夹,密码请也一定修改掉

 

第三步:服务器安全

 

关闭写入权限:plus 、 include 、后台目录

关闭执行权限:templets、uploads、data

说明:在本站购买的西部数码空间在安全设置里关闭写入权限,在目录保护里关闭执行权限

 

 

网站安全中,对目录的执行权限是非常敏感的,一般来说,可以写入的目录是不能够拥有脚本的执行权限的,像DedeCMS系统,可写入的有两个目录data、uploads,data目录主要是基本配置文件和缓存数据,uploads则是附件上传保存的目录,本篇将针对不同服务器环境来介绍如何取消这两个目录的执行权限,当然我们也建议用户其他一些生成纯静态html的目录,拥有可写入权限的也统统去除执行权限,这样系统会更为安全。

Windows下的IIS

IIS6.0

打开IIS中站点,在站点uploads目录、data目录以及静态html生成目录点击右键,菜单中选择“属性”,在目录属性面板选择执行权限为“无”即可。(如图1)

织梦CMS搭建网站必做的服务器相关安全设置

(图1)

IIS7

IIS7也类似于IIS6.0,选择站点对应的目录,data、uploads及静态html文件目录,双击功能试图面板中的“处理程序映射”(如图2)

织梦CMS搭建网站必做的服务器相关安全设置

(图2)

在“编辑功能权限……”中,我们直接去除脚本的执行权限即可。(如图3)

织梦CMS搭建网站必做的服务器相关安全设置

(图3)

Apache下目录脚本的执行权限设置

独立主机配置

在Apache中,没有Windows 下IIS的图形管理界面,我们需要手工修改下apache的配置文件,来进行目录脚本的执行权限的设定。
首先我们找到apache的配置文件httpd.conf,通常情况下,该配置文件在apache安装目录下的conf文件夹中(如图4)。

织梦CMS搭建网站必做的服务器相关安全设置

(图4)

打开httpd.conf文件,找到内容中如图5的位置:

织梦CMS搭建网站必做的服务器相关安全设置

(图5)

将需要限制执行脚本文件的目录配置添加到下方:

配置内容为:

1 <</code>Directory "DIR">     
2 <</code>FilesMatch ".(php|asp|jsp)$">     
3     Deny from all     
4 </</code>FilesMatch
5 </</code>Directory>

配置内容中的DIR为需要限制执行脚本文件的目录,FilesMatch后的内容为需要限定的执行的脚本后缀名。例如:这里需要禁止测试站点uploads文件夹下的PHP,ASP,JSP脚本的运行,则进行如下图6配置:

织梦CMS搭建网站必做的服务器相关安全设置

(图6)

在配置完成后,重启一下apache,配置便生效!
在操作前,uploads文件夹下我新建了一个index.php文件,图7为未作配置前访问情况

织梦CMS搭建网站必做的服务器相关安全设置

(图7)

图8为重启apache后访问该页面的效果。

织梦CMS搭建网站必做的服务器相关安全设置

(图8)

虚拟主机/空间配置

在配置前需要确认你的空间是否支持.htaccess和rewrite,该方法基于.htaccess文件中使用rewrite来达到禁止指定脚本的运行效果。
规则内容如下:

1 RewriteEngine on  RewriteCond % !^$  
2 RewriteRule uploads/(.*).(php)$ – [F]  
3 RewriteRule data/(.*).(php)$ – [F]  
4 RewriteRule templets/(.*).(php)$ – [F]

针对uploads,data,templets 三个目录做了执行php脚本限制;
将如上内容存储至到.hatccess文件中,将该文件存放到你的站点根目录下,

这样,目录脚本的执行权限就控制好了,规则上传前后的效果同图7,图8。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/113960.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • HttpClient4.X发送带参数的Get请求「建议收藏」

    HttpClient4.X发送带参数的Get请求「建议收藏」HttpClient是apache组织下面的一个用于处理HTTP请求和响应的开源工具。所用jar包为httpclient-4.3.6.jar、httpcore-4.3.3.jar、httpmime-4.3.6.jar、commons-codec-1.6.jar。发送Get请求代码如下:packagecom.zkn.newlearn.httpclient;importjava.

    2022年7月22日
    14
  • arcgis runtime for android 100.13.0 入门系列,一、初步引入与运行

    arcgis runtime for android 100.13.0 入门系列,一、初步引入与运行这是我来到csdn以来写的第一篇文章,希望能通过文字能把我的学习经过与心得分享给大家。我使用的是Kotlin来编写代码,我将默认各位具有一定的Android编程基础。言归正传,我们接下来要做的第一件事情就是使用AndroidStudio来创建一个空的新项目了我接下来的操作都是遵循arcgisandroid官方进行搭建的,读者看到的时候可能已经出了新的版本了,不过应该是小版本,arcgisandroid主体代码结构应该是不会变的,请放心阅读与搭建欢迎加入我们的QQ交流群249819194.

    2022年7月17日
    14
  • eclipse安装android_安卓studio怎么打包apk

    eclipse安装android_安卓studio怎么打包apkEclipseandroid开发更改apk名字有以下几步:第一步,修改工程包名在eclipse里,找到项目包和java包(原则上都一样),就可以按”F2″修改名字,随之,源.java也会得到相应的修改;然而每个.java文件都需要把如下图内容,再额外修改一下第二步,修改AndroidManifest.xml文件AndroidManifest.xml里的内容是android工程的相关配置文件。工程文件的解析具体可参考:某鸟教程.第三步,修改Strings.xml文件然后是…

    2022年10月5日
    4
  • java工作流activity_activity 工作流学习(一)

    java工作流activity_activity 工作流学习(一)启动流程实例什么是流程实例?根据一个流程定义具体的一次执行过程就是一个流程实例,一个流程定义对应多个流程实例(一对多关系)为了演示:在流程图中指定办理人是谁,现在是写死的,表示只能张三能提交请假申请。后面会讲解如何动态指定。//根据流程定义的Id启动一个流程实例(操作ACT_RU_EXECUTION、ACT_RU_TASK、ACT_HI_PROCINST、ACT_HI_ACTINST、ACT_HI…

    2022年6月9日
    57
  • docker学习

    docker学习学习视频:https://www.bilibili.com/video/BV1R4411F7t9?from=search&seid=17327712472204933619准备工作:登录

    2022年7月2日
    27
  • 总结一下SQL语句中引号()、quotedstr()、()、format()在SQL语句中的用法[通俗易懂]

    总结一下SQL语句中引号()、quotedstr()、()、format()在SQL语句中的用法[通俗易懂]ViewCode总结一下SQL语句中引号(”)、quotedstr()、(””)、format()在SQL语句中的用法以及SQL语句中日期格式的表示(#)、(””)在Delphi中进行字符变量连接相加时单引号用(”””),又引号用(””””)表示首先定义变量varAnInt:integer=123;//为了方便在此都给它们赋初值。虽然可能在引赋初值在…

    2022年10月17日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号