PHPCMS v9 安全设置、防范教程
脚本之家
一、目录权限设置很重要:可以有效防范黑客上传木马文件.
如果通过 chmod 644 * -R 的话,php文件就没有权限访问了。
如果通过chmod 755 * -R 的话,php文件的权限就高了。
所以就需要分开设置目录权限和文件权限:
linux 服务器权限:经常要用到的命令:
find /path -type f -exec chmod 644 {} \; //设置文件权限为644
find /path -type d -exec chmod 755 {} \; //设置目录权限为755
设置完成后,再通过命令:chown root:root * -R 将目录和文件的所有者改为root。
这样就更加安全了。
FTP用户,确定使用的是linux主机。windows需要登录到服务器中设置。
进入到phpcms 安装根目录,选取所有文件:
设置数字值为:755,同时选定:选择递归处理子目录,只应用到目录
同样再选择所有文件,数字值为:644,选择递归处理子目录,只应用到文件
如果设置错了,重新再设置就可以了。
二、Linux find命令 查找可疑的木马文件
查找:30天内被修改的文件
find ./ -mtime -30 -type f -exec ls -l {} \;
找到目录下所有的txt文件
find ./ -name "*.txt" -print
找到目录下所有的txt文件并删除
find ./ -name "*.txt" -exec rm -rf {} \;
找到目录下所有的php文件 并且在30天之类被修改的文件
find ./ -name "*.php" -mtime -30 -typef -exec ls -l {} \;
找到目录下所有的php文件,同时,满足 30天以内,1天之前的
find ./ -name "*.php" -mtime -30 -mtime +1 -type f -execls -l {} \;
三、通过apache配置限定:
1、apache 下 禁止目录执行php
通过目录下面放置 .htaccess文件来限制权限。
该方法会将php文件当做附件并下载。同时,可以通过浏览器访问到文件。
php_flag engine off
使用场景:在下面目录放置
\uploadfile\
\statics\
\html\
\phpsso_server\uploadfile\
\phpsso_server\statics\
2、禁止通过浏览器访问所有文件
通过目录下面放置 .htaccess文件来限制权限。
RewriteEngine on
RewriteRule ^(.*) /index.html
使用场景:
\caches\
\phpsso_server\caches\
3、禁止php跨目录浏览权限配置:
虚拟主机配置样例:
<VirtualHost *:80>
ServerAdmin root@phpip.com
DocumentRoot /data/wwwroot/www
ServerName www.phpip.com
<Directory /data/wwwroot/www>
Options FollowSymLinks
AllowOverride Options FileInfo
Order allow,deny
Allow from all
php_admin_value open_basedir /data/wwwroot/www/:/var/tmp/
DirectoryIndex index.htm index.html index.php
</Directory>
ErrorLog "| /usr/sbin/rotatelogs /data/logs/%m_%d_www.phpip.com-error_log 86400 480"
CustomLog "| /usr/sbin/rotatelogs /data/logs/%m_%d_www.phpip.com-access_log 86400 480" common
</VirtualHost>
4、按天存放apache日志:
参考上面配置文件:
ErrorLog "| /usr/sbin/rotatelogs /data/logs/%m_%d_www.phpip.com-error_log 86400 480"
CustomLog "| /usr/sbin/rotatelogs /data/logs/%m_%d_www.phpip.com-access_log 86400 480" common
文件权限
安装文件
删除/install安装目录
文件权限
PHPCMS安装结束以后,在您不需要对系统核心配置文件进行修改时,请将phpcms文件夹属性修改为644(windows服务器下登录服务器直接修改时请设置为“只读”)
虚拟主机控制面板-安全设置-设置执行/写入权限 web/phpcms取消此目录的执行、写入权限 关闭网站即web的写入权限ftp将无法上传或修改任何文件,同时网站无法再发文缓存,遭受恶劣攻击时可以这么做。因为虚拟主机服务器上有非常多的网站空间,如果别人没有取消权限,黑客或许可以找到漏洞进行跨站修改。
读取权限就点击查看权限,写入权限就是上传东西到ftp的权限,执行权限就是asp和php脚本的权限,如非必要不必开启,为了网站安全考虑。
在线编辑
caches\configs\system.php
'tpl_edit'=>1,//是否允许在线编辑模板
将1改为0取消后台在线编辑模板
错误提示
caches\configs\system.php
'debug' => 1, //是否显示调试信息
1修改为0
开了就是如果前台出现了sql错误等信息 就不显示具体的错误代码 用一行文字代替
不会暴露程序信息
后台设置
帐户安全:将后台地址admin.php改为自定义,用户名不要使用常见用户名,密码字母数字组合,用户名密码不重复包含。在前台发布的文章的编辑和作者中不要显示真实的用户名。
安全配置:设置-安全配置(后台登陆次数、间隔、域名<慎用>)
角色权限:设置-角色管理(成员、权限、栏目)
口令验证:设置-管理员管理-口令卡,设置后登录时需要输入动态密码(选用)
木马查杀:扩展-木马查杀
操作日志:扩展-后台操作日志
前台安全
会员系统
注册:用户-会员模块配置(是否允许注册、邮箱手机验证、验证码等)
权限:用户-管理会员组(组别权限)
投稿:一级栏目修改-权限设置,应用到子栏目(游客不允许);工作流:一级审核
会员中心:在线投稿,删除转向链接
前台文章:作者昵称(管理员显示站名)
友情链接
后台模块配置不允许申请,首页删除申请链接入口,防止恶意提交,页脚留QQ就行了
升级补丁
在线升级:做好备份,扩展-在线升级,选中升级,注意不要选中模板,否则你改的模板将全变成默认的,升级后台有些会还原,再次修改即可,升级后根目录会增加install安装目录,将之删除。
手动升级:做好备份,官方补丁下载,比对替换。
保护查杀
保护加速:360网站卫士、安全联盟加速乐
漏洞查杀:360网站检测、安全联盟