/ 中存储网

虚拟化及云环境下数据库审计技术探讨

2015-07-09 01:06:39 来源:中存储

首先我们对虚拟化及云平台环境中,传统的数据库审计解决方案在典型的几种场景下的优缺点进行解析:

场景一:应用和数据库的虚拟主机在同一台物理机器上

针对应用和数据库在同一台物理机器上,应用和数据库的交互过程通过内部的Vswitch进行了流量转发,流量并不通过所在的物理机器的宿主主机网卡,因此采用传统的镜像流量根本无法镜像,如下图所示:

 

针对这种情况传统数据库解决方案有三种方法解决:

a、虚拟机虚拟网卡绑定物理网卡

要求宿主主机有多个物理网卡,每个物理网卡和上层交换机直连,虚拟机层面在安装时可以指定将虚拟网卡绑定在对应的宿主主机的物理网卡上,然后使用传统的镜像方式镜像物理网卡的流量完成审计,这种缺点非常明显,要求物理服务器要有多个网卡,实际上大部分PC服务器只有不超过1-4个网卡端口,大部分物理机器上虚拟了几十个虚拟机,因此,在实际部署上并没有那么多网卡可供绑定,存在诸多限制,实际上并无法实施。

b、在VDS上配置流量镜像

Vmware ESX在最新版本中推出的功能,将某虚拟机网卡流量通过GRE封包,直接通过TCP协议发送到某个IP地址上(数据库审计设备),数据库审计设备接收GRE数据包完成审计,但是这种解决方案的缺点如下:

Vmware版本及VDS(分布式虚拟交换机),据官方技术资料只有Vmware 5.5以上版本才支持,目前客户现场主流的4.x、5.0、5.1等版本都不支持,其他非Vmware虚拟化环境就更不支持,因此针对大部分客户现场环境实际并不支持部署。

通过GRE封装做流量镜像对宿主主机的物理网卡性能影响非常严重,所有镜像流量都要通过宿主主机的物理网卡进出,极大影响了物理网卡的性能。

VDS属于虚拟交换机,其对数据包的处理完全依赖于CPU,并不像传统交换机靠硬件进行流量转发,因此对宿主主机的CPU资源占用也非常严重,极大的降低了宿主主机的性能。

c、开启流量广播

这种方式目前是最主流的方式,将数据库审计以虚拟机的方式部署在对应的宿主主机,当做宿主宿主机的一个虚拟机看待,然后开启Vmware的流量广播功能,每个虚拟机都将收到Vswitch上每个端口通信的IP流量,因此DB审计设备只需要采集其虚拟网卡上的流量就可以采集到目标数据库服务器的流量,只需要在采集阶段过滤掉其他流量即可完成审计,如下图所示:

 

这种解决方案的缺点也非常明显:

1、开启流量广播虽然大部分Vswitch都支持,但是这种方式就好比早期的Hub一样,tcp通信能力将明显降低,严重影响整体网络传输的时延及可靠;

2、DB审计可以采集到所有虚拟机的流量,其他虚拟机一样也会采集到所有的流量,这些流量里肯定包含很多未加密的敏感数据如用户名、密码等,假设这些虚拟机中有一台机器被入侵或者非法利用,这样会带来极大的安全问题。

场景二 :应用和数据库的虚拟主机随机的分配在一个虚拟化集群的某个主机上

这种场景其实是场景一和场景二的结合,目前大部分客户为了避免单一硬件的故障,基本上都采用虚拟化集群的方式实现企业的虚拟化,当碰到单一硬件的故障,虚拟机会在整个硬件虚拟化资源池中自动迁移,具体迁移到哪台物理主机上并不确定,因此传统的镜像方式并不能确定虚拟主机此刻在哪个交换机上,如下图所示: