网站安全需要服务器配置、文件权限控制和网站程序三者协同配合。如果要通过修改DedeCms网站程序来提升安全性,可以遵循“可执行的文件不允许被修改,可写文件不允许被访问”的原则。以下是一些具体的方法来保护您的DedeCms网站。


1、更改根目录下的data目录名称或将其移出网站目录

data目录是系统频繁写入数据的地方,其中的文件可以通过URL直接访问到。为了防止恶意攻击,建议将此目录改名或移出网站根目录。

a. 将公开内容迁移到pub目录(或其他自定义目录),如rss、sitemap、js、enum等,并调整这些文件的生成路径。

b. 修改引用程序目录。

c. 更改data文件夹名称,并在include/common.inc.php文件中修改"DEDEDATA"的值。同时,在后台系统设置》参数设置中修改模板缓存目录。


2、更改并加固dede管理目录

隐藏后台入口可以有效防止未经授权的访问。

a. 在/dede/config.php中找到如下代码:

//检验用户登录状态
$cuserLogin = new userLogin();
if($cuserLogin->getUserID()==-1)
{
header("location:login.php?gotopage=".urlencode($dedeNowurl));
}

将其更改为:

//检验用户登录状态
$cuserLogin = new userLogin();
if($cuserLogin->getUserID()==-1)
{
//header("location:login.php?gotopage=".urlencode($dedeNowurl));
header("HTTP/1.0 404 Not Found");
exit();
}

b. 修改/dede/login.php的文件名称,并同步修改/dede/templets/login.htm中的表单提交地址。

c. 更改/dede/目录名称。

这样,未登录用户只能访问/dede/login.php改名后的地址,其他地址均会返回404错误。

当然,做了这些安全加固后,以后DedeCMS的升级可能会变得稍微复杂一些。