网站安全需要服务器配置、文件权限控制和网站程序三者协同配合。如果要通过修改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的升级可能会变得稍微复杂一些。