Yzncms安全防范 服务器+代码安全

作为一款开源的php后台框架,网站安全是一个非常重要的条件,
不论你的网站功能有多强大,多易用,安全不过关,那也是没有任何意义的,
下文我们将分为服务器和代码两个方面细说

服务安全

1.服务器我们推荐Linux+Nginx+Mysql php推荐7.1以上   
2.网站上线后,除runtime目录和public/uploads目录,其余目录设置555或只读权限
3.Nginx配置,,添加到server段中

 ## 禁止敏感文件的直接访问
location ~ ^/(uploads|static)/.*.(php|php3|php4|php5|cgi|asp|aspx|jsp|shtml|shtm|pl|cfm|sql|mdb|dll|exe|com|inc|sh)$ {
   deny all;
}

大家要记住一个原则,那就是:
能执行php程序的目录一定不要开放读写权限,
而可以读写的目录(比如上传)一定不要赋予php执行权限

4.修改php.ini,禁用不安全的函数,配置如

disable_functions = phpinfo,passthru,exec,system,chroot,chgrp,chown,shell_exec,proc_open,proc_get_status,popen,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru


5.配置open_basedir来限制PHP访问文件系统位置,例如:

open_basedir=/项目路径/:/tmp/:/proc/

6.最重要的一点,一定要开启快照或者自动备份,否则真的网站被黑,你会欲哭无泪


代码安全

1.config/app.php中的app_debug和app_trace设置false,关闭调试模式
2.默认是域名绑定在public目录,为唯一对外访问目录,不建议修改,除非是实在不支持域名绑定
3.务必更改默认密码,并不要设置的过于简单,防止暴力破解  (这个新手要切记)
4.利用后台禁止访问IP,可以在设置-网站设置中设置


个人建议:可以的话配合云锁来限制目录权限等等会更好