环境:运行环境、PHP、Mysql等的安全设置

本篇内容做为安全方面的补充讲解,内容以宝塔面板为核心展开,至于宝塔之外的我们不会过多的给大家赘述,毕竟对于服务器运行环境的安全,需要设置很多项目,有一些是系统更深层的,根据不同的系统版本同样也存在一定的风险,建议大家有些内容可以做为参考,自己也要多尝试,但这一定是建立在数据安全之上的。


1、关于Apache与Nginx防护建议
通常我们在使用宝塔面板时,通过在Apache或Nginx配置项中增加防SQL注入、防XSS攻击等代码有可能会产生异常,比如:误判搜索引擎蜘蛛爬虫、过分过滤正常应用无法运行等多种可能性问题,如果您不是专业的安全运维人员,请尽量使用官方的插件来为运行环境做防护。

(!帮官方做个小广告,个人专业版就可以使用防火墙、宝塔系统加固、网站防篡改程序等插件)

若是您这出现服务器被攻破的情况,可以在排除有危害的脚本后,紧急采用网站防篡改程序,关掉相关文件夹的写权限,然后待服务器排查、整顿完后再恢复,这是最后一关了,朋友们可以考虑应用。

至于通过扩展Apache或Nginx配置文件来实现防护的,给大家推荐参考:

Nginx篇:

参考->新数据在线(转载):Nginx 防止SQL注入、XSS攻击的实践配置方法

Apache篇:

参考->新数据在线(转载):apache的各种优化以及安全配置详解


2、php安全设置之禁用函数
如何在PHP中设置禁用函数呢?

如图(5-5-1)我们可以宝塔面板后台,点击进入软件商店,找到你要禁用函数的php版本,在操作区域点击“设置”,唤起PHP管理页,再点击左侧的禁用函数,在步1处添加要禁止的函数名,点击步2指向的  即可新增需要禁用的函数。

我们一般认为被禁用的函数不安全,其实不是函数本身不安全,诸如,服务器运行环境是不是安全?多个关系层决定函数有可能被恶意利用,既然函数被开发出来是为了让用的,肯定是有必要性的,只是我们禁用了可以免于被恶意的利用,但一旦你布署的项目需要,你也要在禁用列表里去除需要用到的函数。

本来想给大家列一下可能需要安全处理的函数,但一考虑到若是不小心设置了影响到你的项目就得不尝失了,所以朋友们要是有进一步的设置需求,可以在搜索引擎查找一下,然后参考着设置就可以了。


3、若网站程序支持,尽量使用php5.4以上的版本
如题,建议使用PHP的更高版本,版本太低问题也存在的多,使用高版本PHP能增强项目的安全性。尽量不使用php5.4以及以前的版本如:php5.2等。


4、宝塔面板Mysql的使用安全
说到Mysql我们要说的2点:

第一 如果不是特殊原因,尽量不要开放mysql用户权限给所有人;

第二 如果没有外网使用mysql只是本地调用,请在宝塔安全、服务器安全组关闭3306的通行。

安全组设置请参考:

服务器安全组:1-5 服务器安全组(访控列表)设置

宝塔安全组: 2-3 面板安全-防火墙端口设置

本课节就写到这里,不足之处,还会跟进更新!