首先建立一个密码文件
[code]# touch /www/.discuzpass[/code] php学习之家
建立用户dzadmin www.444p.com
[code]# htpasswd /www/.discuzpass dzadmin[/code]
按照提示输入两遍密码
php学习之家
完成用户创建后,在discuz!的目录里面建立一个.htaccess文件,里面的内容如下:
[code]<Files admincp.php>
AuthUserFile /www/.discuzpass #密码文件存放位置
AuthName "Login pls"
AuthType Basic
require user dzadmin #需要验证用户为dzadmin
</Files>
<Files config.php>
AuthUserFile /www/.discuzpass
AuthName "Login pls"
AuthType Basic
require user dzadmin
</Files>[/code]
设置后从Web访问admincp.php和config.php必须要输入正确的账号和密码 www.444p.com版权所有
进入attachments、customavatars目录,建立.htaccess,里面的内容为:
php_flag engine off php学习之家http://www.444p.com
设置后在附件和用户自定义头像目录就无法执行php文件了。就算discuz!有上传文件的漏洞,被传了webshell,在打开的时候也只是提示下载文件,而不是直接运行。
在其他的敏感目录,比如admin、forumdata、templates等目录,我们可以完全禁止用户的访问。同理,建立一个.htaccess,内容如下:
[code]Options -Indexes
Options +FollowSymLinks
Options -ExecCGI 本文来自 www.444p.com
order deny,allow
deny from all[/code] www.444p.com php学习之家
最后,对templates目录里面的模板全部chmod 644,只有所有者能写,其他用户为只读 php学习之家
通过以上的设置,你的Discuz!已经相对安全了,偷笑一下吧。
经过我的测试,基本市面上的webshell都无效,包括最新的phpspy 2006,也只能在授权目录下面访问。
以上设置针对FreeBSD环境、Apache服务器。其他*nix和Win环境可以参考修改。


















