lnmp架构下php安全配置分享

   以往的lamp网站向着lnmp发展, 笔者工作环境使用lnmp多年, 在这里很高兴和大家分享一下多年的lnmp网站的php安全配置,至于lamp安全后续与大家分享,其实内容上八成相同,这边着重讲php安全配置,看内容。

   1. 使用open_basedir限制虚拟主机跨目录访问

[HOST=www.sdfymj.com]
open_basedir=/data/site/www.sdfymj.com/:/tmp/

[HOST=test.ttlsa.com]
open_basedir=/data/site/www.sdfymj.com/:/tmp/

  

如上配置的意思是www.sdfymj.com下的php程序被限制在open_basedir配置的两个目录下, 不可以访问到其他目录。如果没有做以上的配置,那么test.sdfymj.com与www.sdfymj.com的程序可以互相访问.
如果其中一个站点有漏洞被黑客植入了webshell,那么他可以通过这个站点拿下同一台服务器的其他站点,最后挂木马.

注意:目录最后一定要加上/. 比如你写/tmp,你的站点同时存在/tmp123等等以/tmp开头的目录,那么黑客也可以访问到这些目录,另外, php5.3以上支持这个写法,5.2不支持。

  2. 禁用不安全PHP函数

disable_functions = show_source,system,shell_exec,passthru,exec,popen,proc_open,proc_get_status,phpinfo

  禁止php执行以上php函数,以上php程序可以执行linux命令, 比如可以执行ping、netstat、mysql等等.如果你的系统有提权bug,后果你懂得.

原文地址:https://www.cnblogs.com/68xi/p/13447288.html