防火墙虚拟化技术
防火墙虚拟化介绍
什么是虚拟化
- 一虚多:一台物理机上面逻辑划分出多个虚拟机,每个虚拟机有自己的软件和硬件资源。可以提示系统资源利用率、节省硬件成本、能耗、空间等等
- 多虚一:以交换机的虚拟化为例,通过物理连线,将多个交换机堆叠成一个交换机,能提升其可靠性并降低运维成本
防火墙的虚拟化
? 防火墙的虚拟化,就是将一台物理防火墙,从逻辑上划分为多台虚拟防火墙,但是共享CPU、内存等物理资源;不同的虚拟防火墙之间,配置、转发完全隔离,从而实现功能定制、个性化管理以及资源的最大化利用
虚拟防火墙
? 上一代防火墙的虚拟化是完全依赖于***实例实现的。***-instance有独立的安全区域、路由表。通过绑定不同的接口,就相当于有了一台独立的防火墙。防火墙的基本要素,能实现路由转发、能实现基于安全区域的策略配置
虚拟系统
? 下一代防火墙不再是完全依赖于***实例,而是改为了VSYS,即Virtual-system。为什么不叫虚拟防火墙了?因为我们要抛弃防火墙这硬件的概念,用系统这种逻辑概念来定义防火墙的虚拟化
从VFW到VSYS
? 虚拟化就是为了让管理员觉得自己得到了一台真实的防火墙,那如何才能让管理员感受到这点呢
a) 要有自己独立的管理员账号和独立的配置界面。在上一代防火墙上,这一点也勉强算是做到了,但做的不够好。因为很多功能并不能在虚拟防火墙独立的配置界面下完成,而是需要在根防火墙下完成
b) 虚拟防火墙要有自己独立的软件资源,如会话表数、策略数、用户数等等,这样就不用去争抢公共的资源。上一代防火墙仅能分配最大带宽、会话数等少数几个资源项,而到了下一代防火墙,支持分配的资源项则是大大地丰富了
? 上一代防火墙的策略配置时在下一代防火墙上完全变了。以安全策略为例,上一代防火墙配置安全策略时,只能是在根防火墙中,通过指定根防火墙的安全区域和虚拟防火墙的安全区域的域间关系来配置安全策略。这样有两个弊端,一个是所有的策略配置只能由根系统管理员来完成;二是加入虚拟防火墙后的域间关系复杂,不利于理解和配置
? NGFW策略配置不再依赖于复杂的域间关系,你可以像配置物理设备一样来配置虚拟系统!
? 下一代防火墙配置时,如果是由根系统管理员来配置,都是使用switch命令进入相应的虚拟系统的配置视图,然后使用和配置物理防火墙时完全一样的命令来进行配置。这样管理员的配置思路会清晰很多,而且也不需要再记忆两套配置命令
? 将VSYS1视为一台独立的防火墙,使用switch命令进入其独立的命令行配置视图。配置命令和方法和原来的物理防火墙一样。例如,配置源和目的安全区域时,不再需要带上***-instance
? 需要完全抛弃上一代防火墙通过指定域间关系来配置策略的思路!
? 将VSYS1和根系统视为两个完全独立的防火墙,配置安全策略时,按照配置两台独立防火墙的策略的思路来完成
? Virtualif (虚拟接口)
? 默认根墙为virtualif 0, 虚拟系统的虚拟接口是从1开始,系统分配虚拟系统原理
依然存在的***实例
? 上一代的虚拟防火墙是完全依赖于***-instance实现的,而下一代防火墙的虚拟系统不再完全依赖***-instance实现。但不是说下一代的虚拟系统就完全摒弃了***-instance。每个虚拟系统创建的时候,都会对应创建一个同名称的***-instance,这个***-instance就是为了实现各个虚拟系统之间的路由隔离的。也就是说虚拟系统在底层的转发业务上还是依赖于***-instance来实现,但到了上层的业务虚拟化时,就不再依赖于***-instance了
? 创建虚拟系统时,会自动创建一个和虚拟系统同名的***-instance
? 虚拟系统下,不能创建其他的***-instance,也不能删除默认绑定的***-instance
? 根系统下,有一个默认的公网实例(public)
? 根系统下,可以创建其他的***-instance,用于***多实例的应用虚拟系统主要概念
? ***实例: ***实例最初的含义是实现***(Virtual Private Network)报文转发所需的路由、接口等信息的集合,后来在防火墙版本如USGV3R1里,演化成了虚拟防火墙,一个***实例就是一个虚拟防火墙,它包含了路由、策略、系统管理和基本工具等子系统的克隆,是一个比较自为完善的逻辑防火墙。是防火墙虚拟化的基础,一个虚拟防火墙具有一个***实例
? ***实例有VRF-ID和RD(Route Distinguisher)两个属性。***实例通过RD实现地址空间独立,区分不同***使用的相同地址前缀。资源、配置和业务基于这个ID划分实例。 VRF的全称是*** Route Forwarding,它是一种通过路由区分以正确转发***报文的机制
? 在NGFW上,我们缩小了***实例的范畴,使其只负责网络接口、路由和转发的虚拟化,虚拟系统代替***实例来履行配置、上层业务等虚拟化的职责虚拟系统关键技术
? 虚拟化的基础是资源、配置和业务的虚拟化
? 使用ID区分是实现虚拟化的关键技术
? 虚拟化时使用了***实例的ID来区分报文、管理员、配置等等属于哪个虚拟防火墙。NGFW上创建虚拟系统时自动生成的***实例的ID固定为某一段值虚拟系统依赖关系
虚拟系统系统管理
? 根系统
缺省存在的一个特殊的虚拟系统,未配置其他虚拟系统时,根系统就等同于防火墙自身
? 根系统管理员
配置根系统的业务外,还可以创建虚拟系统,并为虚拟系统分配资源和创建虚拟系统管理员
? 虚拟系统
逻辑上划分出来的虚拟设备
? 虚拟系统管理员
配置虚拟系统的业务
? 虚拟系统管理员在设置本系统时,将本系统的VSYS ID置入各业务的配置,用以区分不同虚拟系统的配置信息,即配置虚拟化
? 虚拟系统管理员只能设置和查看本系统的配置;根系统管理员可以切换至虚拟系统来设置和查看虚拟系统的配置
? 虚拟系统和根系统的配置分区域地保存在一个配置文件里虚拟系统资源分配
? 资源是指业务正常运转所必需的硬件、软件表项等各种形态的计算和存储单元。虚拟系统对资源的占用有两种方式:限额使用和共享抢占
? 对于关键资源两种均可选,对于非关键资源只有共享抢占方式
? 关键资源包括会话、一体化策略、用户、用户组、在线用户和带宽,其他为非关键资源
? 资源分配的目的是为了单个虚拟系统抢占了过多的资源,导致其他虚拟系统无法工作
? 限额使用的资源有两种方式
a) 手工分配限额:手工配置数量 如会话、用户、策略等
b) 自动分配限额:虚拟系统创建的时候就固定分配给虚拟系统了 如安全区域在虚拟系统创建时就固定分配8个
? 共享抢占资源:所有虚拟系统+根系统一起抢占,共用整机的资源 =没有做分配
a) 如:地址和地址组、NAT地址池、时间段、各种表项等虚拟系统转发
? 报文在入接口上被打上标记,此标记即为接口所属虚拟系统ID
? 通过虚拟系统ID来查找其对应的FIB表、策略或者规则等,来正确处理报文
? 跨虚拟系统转发主要用于不同虚拟系统管辖的网络间相互通信的场景,流量在物理防火墙内就需要完成转发,虚拟系统间报文的通信像物理防火墙之间通信一样。通过虚拟接口技术可以实现数据包跨虚拟系统的转发
? 虚拟系统和根系统通过虚拟接口通信。虚拟系统间访问通过根系统中转。配置时,将各个虚拟系统当成独立的设备
? 创建虚拟系统时系统自动为其创建的一个虚拟接口,作为虚拟系统自身与其他虚拟系统之间通信的接口。与设备上其他的接口不同的是,虚拟接口不配置IP地址也能生效。虚拟接口名的格式为“Virtualif+接口号”,根系统的虚拟接口名为Virtualif0,其他虚拟系统的Virtualif接口号从1开始,根据系统中接口号占用情况自动分配
? 各个虚拟系统的虚拟接口和根系统的虚拟接口之间默认通过一条“虚拟链路”连接。将虚拟接口加入安全区域并按照配置一般设备间互访的思路配置路由和安全策略,就能实现虚拟系统与根系统之间的互访
? 由于每个虚拟系统和根系统都是连通的,可以将根系统视为一台连接多个虚拟系统的“路由器”,通过这台“路由器”的中转,可以实现两个虚拟系统之间的互访
原文地址:https://blog.51cto.com/13817711/2484839