dedecms最安全设置方法防止制作好的网站被黑

一、基础篇(60分)

只要完成基础篇的设置,那么恭喜你,你的织梦安全已经及格了,相反,如果你没有按照基础篇的做,那么你的网站岌岌可危。

1 删除不必要的目录

安装好织梦后,需要立即删除install目录,如果不需要使用会员、专题(99%的用户都用不到),可以直接删除member、special目录。

2 删除不必要的文件

plus文件建议只保留如下文件:ad_js.php,count.php,list.php,search.php,view.php,其余的删除。

plus文件夹中的文件功能如下表,如果没用到可以删除。

 

文件名 文件说明 建议
guestbook文件夹 留言板 删除
img文件夹 图片 删除
task文件夹 计划任务 删除
     
advancedsearch.php、heightsearch.php 高级搜索,一般只用到search.php 删除
arcmulti.php 异步方式调用指定的tag列表,用不到,删除吧 删除
bookfeedback.php、bookfeedback_js.php 图书评论和评论调用文件,存在注入漏洞,不安全 删除
car.php、posttocar.php、carbuyaction.php 购物车 删除
comments_frame.php 调用评论,存在安全漏洞(现在一般都用第三方评论,不再用织梦自带的评论) 删除
digg_ajax.php、digg_frame.php 文章的顶踩功能 删除
disdls.php、download.php 下载次数统计、下载功能 删除
erraddsave.php 文章纠错 删除
feedback.php、feedback_ajax.php、feedback_js.php 评论相关功能 删除
flink.php、flink_add.php 友情链接、友情链接添加(建议删除,否则容易暴露模板路径) 删除
freelist.php 自由列表 删除
guestbook.php 留言 删除
mytag_js.php 自定义标签js调用方式(如果没用到后台的自定义宏标记,请删除) 删除
qrcode.php 生成二维码 删除
recommend.php 信息推荐 删除
rss.php RSS列表页 删除
search.php 搜索 保留
showphoto.php 显示大图片(图集模型会用到) 删除
stow.php 收藏文章 删除
vote.php 投票 删除
ad_js.php 调用广告,如果你的广告不是通过后台“广告管理”设置的,可以删除该文件 保留
diy.php 自定义表单 保留
count.php 统计文章阅读次数 保留
list.php 动态浏览栏目页 保留
view.php 动态浏览文章 保留

3 修改默认后台文件夹名称

默认的后台通过域名/dede访问,请修改为其他名称,越不容易被猜出来越好,可以使用英文+数字等形式。修改方式为直接重命名dede文件夹的名称即可。

4 后台新建新的管理员账户,删除默认的admin用户

4.1 新建管理员账户

 

点击系统->系统用户管理->增加管理员,填写登录账户及密码等信息,用户组选择‘超级管理员’

4.2 删除默认的admin用户

点击系统->SQL命令行工具,运行SQL命令:delete from dede_admin where id = 1;



二、迁移data目录到web目录外或者换一个data的名称

data目录存在比较严重的安全隐患,很有必要将data目录移动到站点目录以外。

实在没有条件迁移到站外的同学,也请一定要将data目录改一个名字。

现在DEDECMS最新的5.7版本和5.7SP1版本后台都有个安全检测,data目录如果使用默认的名称,那么DEDE系统的安全肯定会大打折扣。相信大家都看到这样的提示:强烈建议将data目录搬移到Web根目录以外。

  但是对于虚拟主机来说,有些虚拟主机限制,不给移动到web目录以外,那么为了最大限度的减少网站被攻击的可能,我们可以将data目录改名,这样也进一步减少了攻击的可能。具体操作如下:

1、修改include目录下的common.inc.php这个文件。打开文件,找到第16行:

define('DEDEDATA', DEDEROOT.'/data');

  把data修改成为您要改的目录名,如:改为asdfg,那么则改为:

define('DEDEDATA', DEDEROOT.'/asdfg');

2、用FTP把data目录改名asdfg,也就是跟第一步改的文件名一样。

3、在网站后台,系统-系统基本参数-性能选项,“模板缓存目录:”改为:/asdfg/tplcache。

  这样就基本改完成了,不过现在还有些问题。打开网站目录你会发现,自己跳到安装文件了。不用急,修改一下网站根目录的index.php这个文件,把文件最前面的几行注释掉,注释如下,也就是在代码前面加//:

//if(!file_exists(dirname(__FILE__).'/data/common.inc.php')) //{ //    header('Location:install/index.php'); //    exit(); //}

  这样,你的网站就可以正常打开了。在后台更新的时候,还是有问题,网站地图跟RSS、JS这几项更新有问题,那么我们只需要在网站根目录下新建个data目录,然后data目录下再分别新建rss和js两个目录,这样就可以了,再更新一下看看,是不是都正常了呢?

注:上面提到的更改目录为asdfg,其中asdfg可以自由更换成你想要的目录名称。


 

将DedeCMS根目录下的data目录迁移到web以外目录方法

data目录是系统缓存和配置文件的目录,一般都有可以读写的权限,只要是能够写入的目录都可能存在安全隐患,很多站长甚至给予这个目录可执行的权限,更是非常危险,所以我们建议将这个data目录搬移出Web可访问目录之外。本篇将介绍如何将data目录搬移出Web访问目录。

注意:
本操作需要用户对DedeCMS系统有较高的了解,如果您感觉自己不太掌握,可以考虑选择织梦管理员之家的相关服务。

1.将data目录转移到非Web目录

我们这里举例“D:dedecmsv57”为我们系统的根目录,我们需要将目录下的data文件夹(如图1)迁移要上一级目录(非Web目录),简单的办法直接剪切或者拷贝即可。

我们移动上一级目录中,注意观察文件路径。

2.修改DEDEDATA目录的配置常量

找到系统目录下/include/common.inc.php文件,修改DEDEDATA常量为你的系统目录。

3.配置tplcache缓存文件目录

进入系统后台,在配置中修改tplcache目录为你想对目录。

 

4.修改根目录下的index.php文件

第9行,将/data/改为:/../data/

 

好了,这样我们就将data目录顺利迁移出去了。

注意:
本操作目前仅在V57系统中测试有效,其他版本系统可能需要进行调整。

 

二、高级篇(30分)

安装并安装织梦安全助手

通过该插件进行可疑文件扫码及文件夹权限设置,更加提高安全性。