防火墙虚拟系统
虚拟系统概述
多虚一:双机热备、堆叠、虚拟化(思科VSS、华为CSS、锐捷VSU、H3CIRF)
一虚多:防火墙虚拟系统、VMWare、ESXI
虚拟化(Virtualization)的含义很广泛。将任何一种形式的资源抽象成另一种形式,都可以称为虚拟化。虚拟化是资源的逻辑表示,使资源的分配不受物理限制。虚拟化使得在一台物理的服务器上可以跑多台虚拟机,虚拟机共享物理机的CPU、内存、I/O硬件资源,但逻辑上虚拟机之间是相互隔离的。虚拟化可以达到节省硬件成本、能耗和空间的目的。
防火墙虚拟系统是指将一台物理防火墙设备从逻辑上划分为多个虚拟系统。虚拟系统之间相互独立,有自己的接口、地址集、用户/用户组、路由表项以及策略,并可通过虚拟系统的管理员进行配置和管理。
为了实现每个虚拟系统的业务都能够做到正确转发、独立管理和相互隔离,防火墙主要实现了以下方面的虚拟化:
- 资源虚拟化:每个虚拟系统都有独享的资源,包括接口、VLAN、策略和会话等。根系统管理员分配给每个虚拟系统,由各个虚拟系统自行管理和使用。
- 配置虚拟化:每个虚拟系统都拥有独立的虚拟系统管理员和配置界面,每个虚拟系统管理员只能管理自己所属的虚拟系统。
- 安全功能虚拟化:每个虚拟系统都可以配置独立的安全策略及其他安全功能,只有属于该虚拟系统的报文才会受到这些配置的影响。
- 路由虚拟化:每个虚拟系统都拥有各自的路由表,相互独立隔离。目前仅支持静态路由的虚拟化.
虚拟系统基本概念
虚拟系统管理独立
虚拟系统特点:管理独立、资源分配 、流量隔离、配置独立
虚拟系统类型
- 防火墙上存在根系统和虚拟系统两种类型的虚拟系统。
- 根系统(Public) :根系统是防火墙上缺省存在的一个特殊的虚拟系统。即使虚拟系统功能未启用,根系统也依然存在。此时,管理员对防火墙进行配置等同于对根系统进行配置。启用虚拟系统功能后,根系统会继承先前防火墙上的配置。在虚拟系统这个特性中,根系统的作用是管理其他虚拟系统,并为虚拟系统间的通信提供服务。
- 虚拟系统(VSYS):虚拟系统是在防火墙上划分出来的、独立运行的逻辑设备
虚拟系统管理
- 虚拟系统的管理和配置是相互独立的,所对应的管理员也是不同的。根据虚拟系统的类型,管理员分为 根系统管理员 和 虚拟系统管理员。两类管理员的作用范围和功能都不相同
- 根系统管理员
- 启用虚拟系统功能后,设备上已有的管理员将成为根系统的管理员。管理员的登录方式、管理权限、认证方式等均保持不变。根系统管理员负责管理和维护设备、配置根系统的业务。
- 只有具有虚拟系统管理权限的根系统管理员才可以进行虚拟系统相关的配置,如创建、删除虚拟系统,为虚拟系统分配资源等。
- 虚拟系统管理员
- 创建虚拟系统后,根系统管理员可以为虚拟系统创建一个或多个管理员。虚拟系统管理员的作用范围与根系统管理员有所不同:虚拟系统管理员只能进入其所属的虚拟系统的配置界面,能配置和查看的业务也仅限于该虚拟系统;根系统管理员可以进入所有虚拟系统的配置界面,如有需要,可以配置任何一个虚拟系统的业务。
- 为了正确识别各个管理员所属的虚拟系统,虚拟系统管理员用户名格式统一为 “管理员名@@虚拟系统名”
虚拟系统资源分配
合理地分配资源可以对单个虚拟系统的资源进行约束,避免因某个虚拟系统占用过多的资源,导致其他虚拟系统无法获取资源或业务无法正常运行。
防火墙实现虚拟系统业务的基础资源支持 定额分配和手工分配;此外,其他资源使用共享抢占方式进行资源分配。不同资源采用不同的分配方式
定额分配:系统自动分配,不支持手动分配,如安全区域、SSL VPN虚拟网关
手工分配:用户手动分配,如带宽限制
资源抢占:共享抢占资源,如nat地址池、证书、时间段、各种表项等
管理员为虚拟系统手工分配资源时,首先需要配置资源类,并在资源类中指定各个资源项的保证值和最大值,然后将资源类与虚拟系统绑定。虚拟系统可以使用的资源数量受资源类中配置的保证值和最大值控制
- 保证值:虚拟系统可使用某项资源的最小数量。这部分资源一旦分配给虚拟系统,就被该虚拟系统独占。
- 最大值:虚拟系统可使用某项资源的最大数量。虚拟系统可使用的资源能否达到最大值视其他虚拟系统对该项资源的使用情况而定
如果虚拟系统不绑定资源类,则虚拟系统的资源不受限制,虚拟系统和根系统以及其他未绑定资源类的虚拟系统一起共同抢占整机的剩余资源。
虚拟系统流量隔离
- 报文进入防火墙后,先确定报文与虚拟系统的归属关系,若防火墙配置了虚拟系统,则报文仅根据虚拟系统内的策略和表项对报文进行处理;若未配置虚拟系统,则直接根据根系统的策略和表项处理。
- 分流是指确定报文与虚拟系统归属关系的过程。防火墙通过分流将进入设备的报文送入正确的虚拟系统处理,分流方式有以下三种:
- 基于接口分流
- 基于VLAN分流
- 基于VNI分流
虚拟系统配置独立
将虚拟系统视为一台真实的防火墙,这台防火墙不仅有着独立的管理员账号,还有着独立的配置界面。将虚拟系统和物理防火墙的接口绑定后,从划分的接口接收的流量会按照虚拟系统的配置以及独立的路由表项进行数据转发
使用switch vsys vsys-name命令,用来从根系统的系统视图切换到指定的虚拟系统的用户视图
虚拟系统互访
虚拟系统之间 通过虚拟接口实现互访。虚拟接口是创建虚拟系统时系统自动为其创建的一个逻辑接口,作为虚拟系统自身与其他虚拟系统之间通信的接口
虚拟接口名的格式为“Virtual-if + 接口号”,根系统的虚拟接口名为Virtual-if0,其他虚拟系统的Virtual-if 接口号从1开始,根据系统中接口号占用情况自动分配
虚拟接口的链路层和协议层始终是UP的,虚拟接口必须加入安全域,否则无法正常工作,但是不需要配置IP地址(有的型号设备必须配置IP)
虚拟系统间互访
标准模式:最多进行两次转发流程处理,报文经过超过两个虚拟系统即会被丢弃,中间跨根系统不计算转发流程。
扩展模式:最多进行三次转发流程处理,firewall forward cross-vsys extended。
#创建资源类r1,默认根墙自带资源类r0
resource-class r1
#会话表保留1000个,最大2000个
resource-item-limit session reserved-number 1000 maximum 2000
#策略保留100个
resource-item-limit policy reserved-number 100
#用户组数保留10个
resource-item-limit user-group reserved-number 10
#出方向带宽50兆
resource-item-limit bandwidth 50 outbound
int g1/0/1
set public-interface #设置出接口
vsys enable
vsys name vsys1
assign resource-class r1 #关联资源,不填默认关联r0,和根墙共享资源类
assign int g1/0/1 #接口划分进虚墙,接口配置会清空
int g1/0/2
set public-interface
switch vsys vsys1 #切换虚拟系统
aaa
manager-user admin@@vsys1 #创建虚墙管理员用户
password
service-type web telnet ssh
level 15
bind manager-user admin@@vsys1 role system-admin #绑定系统管理员角色
#虚墙访问根墙路由
ip route-static 0.0.0.0 0.0.0.0 public
#根墙访问虚墙路由
ip route-static 10.1.1.0 24 vsys1
#虚墙访问虚墙路由
ip route-statci vpn-instance vsys1 10.1.2.0 24 vpn-instance vsys2