Windows下PHP安全环境的搭建
笔者一直在Windows环境下搭建PHP的运行环境,大大小小的运行环境用过不少,从开始的WAMP到后来的XAMPP以及PHPnow。WAMP和XAMPP都是继承mysql apache以及PHP库的运行环境,不同的是WAMP运行在Windows下,而XAMPP有Linux的版本。这些环境运行PHP也算是比较稳定的,但是自从网络安全要求提高了以后,被安全扫描软件扫出了好多高危漏洞而一度运行在上面的服务也被上级网络部门限制了访问,特别是今年六月份《网络安全法》颁布实施以来,网络安全的要求是越来越高,笔者工作的单位只要扫描出中级以上的漏洞的服务都是要停止整顿的。而上述环境默认情况下(未进行安全配置)满足不了安全要求,而就在笔者焦头烂额的时候发现了一款可以运行PHP的安全运行环境UPUPW,其官方网站为:http://www.upupw.net /。它分为好多个版本,大家根据需要运行的PHP版本的不同可以选择下载。这款软件只要下载成功,可以绿色运行,将PHP网站放在其目录的htdocs文件夹下就可以访问,提供一个可配置的界面,看起来还有点黑客的feel,只要启动了所有服务,并且运行了Apache的守护程序,基本上绿盟的扫描软件是扫描不出来中级以上漏洞的。其配置界面如下图所示:

运行这个程序后,只需要输入s1,开启所有服务——包括Apache Mysql PHP支持等常用的PHP运行环境以及Apache的守护程序,选择16可以配置安全防护功能。这些一般情况下就可以满足PHP环境安全运行的需求,除非使用Memcache,下面就来说说当使用memcache的时候的安全措施。
UPUPW集成了memcache的使用环境,在UPUPW根目录下有个memcached文件夹,里面有个配置文件memcachedConfig文件如下图所示:
按理来说编辑MemcachedConfig文件可以对Memcache的使用进行配置,而笔者百度了很久也没找到配置的方法,该文件中只有以下内容
[MEMCACHED]
MaxMem=128
Port=11211
ServiceName=UPUPW_MemCached_A
可以配置Memcache的最大使用内存,端口和服务进程的名称,而使用Memcache最大的安全问题是一般都是通过Root权限进行访问,存在认证不充分的漏洞,外网用户可以通过该权限直接读取Memcached中的敏感信息。所以绿盟等扫描软件会认为它存在高危漏洞,而你的服务器很可能因为这个原因被网络监管部门封停。下面来说说解决办法。
虽然不大清楚在memcachedConfig中如何设置安全措施,但是其中的一条设置很重要,就是Port------端口号,memcache的默认端口号是11211,既然知道了它的端口号就好办了,我们可以通过设置Windows防火墙的入站规则来限制外网对该端口号的访问,或者如果外网用户不需要使用Memcache服务,而只有本机使用的话我们可以设置一个禁止外网访问该端口号的规则.
通过一番努力,设置了端口号11211的入站规则,Windows防火墙入站规则的设置请参考配置Windows 2008 R2防火墙入站规则,禁止了除了本机以外的所有外网主机的访问,memcache服务终于可以放心使用了,这使用使用UPUPW搭建的PHP环境就不用怕漏洞扫描软件的扫描了,网络安全部门也没理由封停你的服务了。
Windows下PHP安全环境的搭建的更多相关文章
- windows下STM32开发环境的搭建
一.概述 1.说明 笔者已经写了一篇Linux下STM32开发环境的搭建 ,这两篇文章的最区别在于开发环境所处的系统平台不一样,而其实这个区别对于开发环境的搭建其实影响不大,制作局部上的操作上发生了改 ...
- Andriod 安全之Windows下CTS自动化测试环境的搭建
原文出处:http://blog.csdn.net/sk719887916/article/details/48050997 安卓应用离不开性能测试,也离不开安全测试,CTS是常用的安全测试工具,开发 ...
- windows下vue开发环境的搭建
一 介绍: vue.js是什么? Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计.Vue 的核心库 ...
- windows下php开发环境的搭建
环境搭建软件组合为:Apache2.2.9+mysql5.2.32+php5.2.6 下载地址如下 http://download.csdn.net/detail/xttxqjfg/5670455 ...
- [转贴]Windows下gSoap交叉编译环境的搭建
本人直接就用过gSoap,它是用以C/C++写webservice的利器 交叉编译的时候,有两个很关键的程序: soapcpp2.exe wsdl2h.exe ...
- Windows下Android模拟环境的搭建
- 2-3 Windows下一站式开发环境anaconda搭建
D:\Users\ZHONGZHENHUA\Anaconda3\Scripts\activate.bat https://www.geforce.com/hardware/notebook-gpus/ ...
- windows下的python环境安装
windows下python开发环境的搭建还是很方便的 python本体的下载可以通过官方渠道,也可以通过windows应用商店,这里推荐后者,因为前者还要设置环境变量,而且我设置了之后cmd下也没有 ...
- 在windows下用cygwin和eclipse搭建cocos2dx的android开发环境
在windows下用cygwin和eclipse搭建cocos2dx(2.1.4)的android开发环境,2013-8-1更新. 一.准备工作 需要下载和安装以下内容,请根据自己的操作系统选择x86 ...
随机推荐
- Shader Optimization Tips
Author : http://www.cnblogs.com/open-coder/p/3982999.html During the last few months, I have been wo ...
- LeetCode 中级 - 重新排序得到的幂(105)
从正整数 N 开始,我们按任何顺序(包括原始顺序)将数字重新排序,注意其前导数字不能为零. 如果我们可以通过上述方式得到 2 的幂,返回 true:否则,返回 false. 示例 1: 输入:1 输出 ...
- C++分享笔记:扑克牌的洗牌发牌游戏设计
笔者在大学二年级期间,做过的一次C++程序设计:扑克牌的洗牌发牌游戏.具体内容是:除去大王和小王,将52张扑克牌洗牌,并发出5张牌.然后判断这5张牌中有几张相同大小的牌,是否是一条链,有几个同花等. ...
- keepalived+haproxy 安装配置
1.安装配置keepalived 修改配置文件/etc/keepalived/keepalived.conf ! Configuration File for keepalived global_de ...
- python环境Anaconda的安装
本人最开始的的环境为:win10 + 32位的python 最近想学习一下爬虫,听说某些库需要64的python才能实现(本人也是小白,只是平时喜欢折腾,这里是听说,暂时没有能力解释),无奈之下只好卸 ...
- JDBC中执行sql语句的 增 , 删 , 改 , 查 的方法
executeQuery() : 执行 SELECT 语句,它几乎是使用最多的 SQL 语句 executeUpdate() : 执行 INSERT.UPDATE 或 DELETE 语句以及 S ...
- 前端String转json
1.data = eval("("+data+")");2.JSON.parse(data);
- angular2或angular4中使用ckplayer播放rtmp和m3u8视频直播流
1. 下载ckpalyer整个包并导入, 将ckplayer放到src/assets/下 2. 引入ckplayer.js angular2中,在angular-cli.json中找到script,添 ...
- C#远程连接postgresql数据库
第一次在项目中遇到远程访问postgresql数据库的,当时经常会出现连接数据库的错误,连接字符串出现乱码现象 解决方案 在配置文件中添加连接字符串 <add key="Informa ...
- Centos配置网卡子接口
1.检查OS是否加载802.1q模块: 方法一: [root@rs2 ~]# modinfo 8021q 方法二: [root@rs2 ~]# modinfo -F filename 8021q 方法 ...