• *(长期更新)软考网络工程师学习笔记——Section 21 防火墙技术原理


    一、防火墙的概念

    防火墙是一种网络安全设备,用于隔离不同安全级别的网络,控制网络之间的通信。总的来说,防火墙的作用是允许流量通过,外网用户的访问需经过安全策略过滤,其中非法流量无法通过防火墙被隔断,内网用户可以直接通过防火墙对外网进行访问。

    二、防火墙的出厂配置

    华为eNSP中管理网口的接口号一般为GE0/0/0或MEth0/0/0,其IP地址为192.168.0.0/24,可以通过Web登录管理网口,具体操作是首先需将网络管理员PC的IP地址设置为192.168.0.2~192.168.0.254范围内的IP地址,然后在浏览器中输入地址“https://192.168.0.1:8443”,即可通过浏览器登录防火墙设备的Web页面,其默认用户名为admin,默认密码是Admin@123。

    三、防火墙区域

    • 防火墙区域划分可为内网、外网和DMZ三个区域,按照网络安全级别来说,三个区域的级别由高到低为:内网>DMZ>外网。

    1、内网中包括企业网络的所有计算机和客户端等,该区域是可信的,它是防火墙重点保护区域,该区域安全保护级别最高。
    2、外网是防火墙重点防范的区域,需要防范来自外网的风险攻击,同时,经防火墙设定规则过滤的可以允许访问进来,该区域安全保护级别最低。
    3、DMZ区域是一个逻辑区域,它是从内网区域中划分出来的,一般用于服务器,也包含向外网提供服务的服务器集合,例如由Web服务器、DNS服务器、FTP服务器、电子邮件服务器等。DMZ的区域安全保护级别较低。
    在这里插入图片描述

    四、防火墙设备的工作模式

    对于一个防火墙设备而言,若设备的每个接口都配有独立的IP地址,则防火墙工作在路由模式;若接口没有配置IP地址,则工作在透明模式;若部分接口有,部分接口没有,则工作在混合模式

    五、防火墙设备默认区域划分

    对防火墙的接口进行划分,从而可以隔离不同安全级别的网络区域,划分的不同接口所对应的网络即被划分为不同的安全级别。一个接口只能加入一个安全区域,而一个安全区域下可以加入多个接口,另外,防火墙的安全区域按照数字级别划分:1~100。

    如果一台 Cisco PIX防火墙有如下配置:
    PIX(config) #nameif ethernet0 f1 security0
    PIX(config) #nameif ethernet1 f2 security100
    PIX(config) #nameif ethernet2 f3 security50
    则,以下说法中正确的是(C)。
    A )端口 f1 作为外部接口, f2 连接 DMZ , f3 作为内部接口
    B )端口 f1 作为内部接口, f2 连接 DMZ , f3 作为外部接口
    C )端口 f1 作为外部接口, f2 作为内部接口, f3 连接 DMZ
    D )端口 f1 作为内部接口, f2 作为外部接口, f3 连接 DMZ

    解析:可知内部网络的安全级别最高,其次是DMZ区域,然后是外部网络,所以通过命令中每个以太网接口的security后跟的数字可知,端口 f1
    作为外部接口,其security最小, f2 作为内部接口,其security最大, f3 连接 DMZ区域。

    • 以华为设备为例,系统缺省已经有四个安全区域,分别是受信区域(Trust)、非受信区域(Untrust)、非军事化区域(DMZ)和本地区域(Local),另外,网络管理员也可以自定义安全区域,从而实现更加细密的管理控制,自定义的区域安全级别是可以调节的。
    安全区域名称安全级别备注
    Untrust低安全级别,安全级别为5定义ISP的Internet服务区域
    DMZ中等安全级别,安全级别为50定义内网服务器所在区域,其安全级别比Trust低且比Untrust高
    Trust较高安全级别,安全级别为85定义内网终端设备用户所在区域
    Local最高安全级别,安全级别为100代表防火墙本身,其设备接口都属于该区域,这个区域不能添加任何接口

    域与域之间如果不做策略默认是deny的,即任何数据如果不做策略是通不过的,如果是在同一区域的就相当于二层交换机一样直接转发。

    六、安全区域数据流向

    安全区域内的数据流向包括入方向(inbound)和出方向(outbound)入方向表由低优先级安全区域至高优先级安全区域传输,而出方向表示由高优先级安全区域至低优先级安全区域传输。
    在这里插入图片描述

    七、配置防火墙设备的基本步骤

    (一)创建区域和加入安全区域

    1、通过firewall name命令后跟zone-name安全区域名称,创建安全区域,并进入安全区域视图:

    [Huawei]firewall name zone-name
    
    • 1

    2、通过set priority命令后跟security-priority安全级别,为新创建的安全区域配置安全级别,安全级别一旦设置不可更改:

    [Huawei]set priority security-priority
    
    • 1

    3、通过add interface命令后跟interface-type interface-numberj接口名称,将相关的接口加入安全区域:

    [Huawei]add interface interface-type interface-number
    
    • 1

    (二)内网接口配置

    1、通过interface命令进入相关的接口,配置IP地址和子网掩码(例如某内网接口为g1/0/0和g1/0/1,其IP地址、子网掩码分别为192.168.2.1/24和192.168.3.1/24):

    [FW1]int g1/0/0
    [FW1-GigabitEthernet1/0/0]ip address 192.168.2.1 24
    [FW1-GigabitEthernet1/0/0]int g1/0/1
    [FW1-GigabitEthernet1/0/1]ip address 192.168.3.1 24
    [FW1-GigabitEthernet1/0/1]quit
    
    • 1
    • 2
    • 3
    • 4
    • 5

    2、划分内网区域,通过firewall zone trust命令将内网接口加入Trust区域:

    [FW1]firewall zone trust
    [FW1-zone-trust]add interface g1/0/0
    [FW1-zone-trust]add interface g1/0/1
    [FW1-zone-trust]quit
    
    • 1
    • 2
    • 3
    • 4

    (三)外网接口配置

    1、通过interface命令进入相关的接口,配置IP地址和子网掩码(例如某外网接口为g1/0/2,其IP地址、子网掩码为200.10.10.1/30):

    [FW1]int g1/0/2
    [FW1-GigabitEthernet1/0/2]ip address 200.10.10.1 30
    [FW1-GigabitEthernet1/0/2]quit
    
    • 1
    • 2
    • 3

    2、划分外网区域,通过firewall zone untrust命令将外网接口加入Untrust区域:

    [FW1]firewall zone untrust
    [FW1-zone-untrust]add interface g1/0/2
    [FW1-zone-untrust]quit
    
    • 1
    • 2
    • 3

    (四)DMZ接口配置

    1、通过interface命令进入相关的接口,配置IP地址和子网掩码(例如某DMZ接口为g1/0/3,其IP地址、子网掩码为192.168.200.1/24):

    [FW1]int g1/0/3
    [FW1-GigabitEthernet1/0/3]ip address 192.168.200.1 24
    [FW1-GigabitEthernet1/0/3]quit
    
    • 1
    • 2
    • 3

    2、划分DMZ区域,通过firewall zone dmz命令将外网接口加入Untrust区域:

    [FW1]firewall zone dmz
    [FW1-zone-dmz]add interface g1/0/3
    [FW1-zone-dmz]quit
    
    • 1
    • 2
    • 3

    (五)防火墙安全放行策略

    缺省情况下,local区域到其他安全区域的包过滤是开放的,域间安全策略指不同区域之间的安全策略。
    1、配置Trust区域和Untrust区域的防火墙安全放行策略(内网可访问外网,外面不能访问内网)。
    (1)通过security-policy命令进入安全策略配置,然后通过rule name后跟名称创建安全策略(例如创建名称为“trust-untrust”的安全策略):

    [FW1]security-policy
    [FW1-policy-security]rule name trust-untrust
    
    • 1
    • 2

    (2)通过source-zone命令后跟区域名称,配置所创建策略中的源地址区域和目的地址区域(例如源地址区域是trust,目的地址区域是untrust):

    [FW1-policy-security-rule-trust-untrust]source-zone trust 
    [FW1-policy-security-rule-trust-untrust]destination-zone untrust 
    
    • 1
    • 2

    (3)通过source-address命令配置源地址区域的IP地址和反掩码(例如源地址区域trust的IP地址、反掩码为192.168.0.0和0.0.255.255,也可以用any代替):

    [FW1-policy-security-rule-trust-untrust]source-address 192.168.0.0 0.0.255.255
    
    • 1

    (4)通过action permit命令启动安全策略规则:

    [FW1-policy-security-rule-trust-untrust]action permit 
    [FW1-policy-security-rule-trust-untrust]quit
    [FW1-policy-security]quit
    
    • 1
    • 2
    • 3

    2、配置trust区域到DMZ区域的防火墙安全放行策略(内网可访问DMZ区域)。
    (1)通过security-policy命令进入安全策略配置,然后通过rule name后跟名称创建安全策略(例如创建名称为“trust-dmz”的安全策略):

    [FW1]security-policy
    [FW1-policy-security]rule name trust-dmz
    
    • 1
    • 2

    (2)通过source-zone命令后跟区域名称,配置所创建策略中的源地址区域和目的地址区域(例如源地址区域是trust,目的地址区域是DMZ):

    [FW1-policy-security-rule-trust-dmz]source-zone trust 
    [FW1-policy-security-rule-trust-dmz]destination-zone dmz
    
    • 1
    • 2

    (3)通过source-address命令配置源地址区域的IP地址和反掩码(例如源地址区域trust的IP地址、反掩码为192.168.0.0和0.0.255.255,也可以用any代替):

    [FW1-policy-security-rule-trust-dmz]source-address 192.168.0.0 0.0.255.255
    
    • 1

    (4)通过action permit命令启动安全策略规则:

    [FW1-policy-security-rule-trust-dmz]action permit
    [FW1-policy-security-rule-trust-dmz]quit
    [FW1-policy-security]quit
    
    • 1
    • 2
    • 3

    3、配置DMZ区域到trust区域的防火墙安全放行策略(DMZ区域可访问内网)。
    (1)通过security-policy命令进入安全策略配置,然后通过rule name后跟名称创建安全策略(例如创建名称为“dmz-to-trust”的安全策略):

    [FW1]security-policy
    [FW1-policy-security]rule name dmz-to-trust
    
    • 1
    • 2

    (2)通过source-zone命令后跟区域名称,配置所创建策略中的源地址区域和目的地址区域(例如源地址区域是DMZ,目的地址区域是trust):

    [FW1-policy-security-rule-dmz-to-trust]source-zone dmz
    [FW1-policy-security-rule-dmz-to-trust]destination-zone trust 
    
    • 1
    • 2

    (3)通过source-address命令配置源地址区域的IP地址和反掩码(例如源地址区域DMZ的IP地址、反掩码为192.168.0.0和0.0.255.255,也可以用any代替):

    [FW1-policy-security-rule-dmz-to-trust]source-address 192.168.0.0 0.0.255.255
    
    • 1

    (4)通过action permit命令启动安全策略规则:

    [FW1-policy-security-rule-dmz-to-trust]action permit 
    [FW1-policy-security-rule-dmz-to-trust]quit	
    [FW1-policy-security]quit
    
    • 1
    • 2
    • 3

    4、配置DMZ区域到local区域的防火墙安全放行策略(DMZ区域可访问lcoal)。
    同上,具体命令如下:

    [FW1-policy-security]rule name dmz-to-local
    [FW1-policy-security-rule-dmz-to-local]source-zone dmz
    [FW1-policy-security-rule-dmz-to-local]source-zone local
    [FW1-policy-security-rule-dmz-to-local]destination-zone dmz
    [FW1-policy-security-rule-dmz-to-local]destination-zone local
    [FW1-policy-security-rule-dmz-to-local]action permit 
    [FW1-policy-security-rule-dmz-to-local]quit
    [FW1-policy-security]quit
    [FW1]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    5、进入防火墙的相关接口,通过service-manage all permit命令允许所有的协议通过(例如以上是四个接口分别是g1/0/0、g1/0/1、g1/0/2、g1/0/3):

    [FW1]int g1/0/0
    [FW1-GigabitEthernet1/0/0]service-manage all permit 
    [FW1-GigabitEthernet1/0/0]int g1/0/1
    [FW1-GigabitEthernet1/0/1]service-manage all permit 
    [FW1-GigabitEthernet1/0/1]int g1/0/2
    [FW1-GigabitEthernet1/0/2]service-manage all permit 
    [FW1-GigabitEthernet1/0/2]int g1/0/3
    [FW1-GigabitEthernet1/0/3]service-manage all permit 
    [FW1-GigabitEthernet1/0/3]quit
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    *(六)为内网、DMZ区域配置NAT Easy IP地址转换访问外网

    1、通过nat-policy命令在防火墙的CLI中,进入安全策略配置,并通过rule name命令后跟名称设置策略名称为“easy-ip”:

    [FW1]nat-policy 
    [FW1-policy-nat]rule name easy-ip
    
    • 1
    • 2

    2、通过source-zone命令后跟区域名称,配置所创建策略中的源地址区域和目的地址区域(例如这里源地址区域是trust和DMZ区域,目的地址区域是untrust):

    [FW1-policy-nat-rule-easy-ip]source-zone trust 
    [FW1-policy-nat-rule-easy-ip]source-zone dmz
    [FW1-policy-nat-rule-easy-ip]destination-zone untrust 
    
    • 1
    • 2
    • 3

    3、通过source-address命令配置源地址区域的IP地址和反掩码(例如源地址区域trust、DMZ的IP地址、反掩码为192.168.0.0和0.0.255.255,也可以用any代替):

    [FW1-policy-nat-rule-easy-ip]source-address 192.168.0.0 0.0.255.255
    
    • 1

    4、通过action source-nat命令后跟NAT Easy IP名称,启动NAT Easy IP策略:

    [FW1-policy-nat-rule-easy-ip]action source-nat easy-ip
    [FW1-policy-nat-rule-easy-ip]quit
    [FW1]quit
    
    • 1
    • 2
    • 3

    八、访问控制列表(ACL)

    (一)ACL的概念

    访问控制列表也称为接入控制列表,它通过定义一些规则对网络设备接口上的数据包进行控制,这些规则根据传输数据包的源地址、目的地址、端口号等进行描述,并将规则应用到路由器的接口上,从而路由器根据规则判断数据包是否可以接收。

    (二)ACL的分类

    根据用途可分为基本访问控制列表、高级访问控制列表、基于接口的访问控制列表和基于MAC地址的访问控制列表四种,其区分通过编号范围来指定,如下表:

    分类名称ID编号范围
    基于接口的访问控制列表1000~1999
    基本访问控制列表2000~2999
    高级访问控制列表3000~3999
    基于MAC地址的访问控制列表4000~4999

    (三)ACL的匹配方式

    1、ID顺序匹配,ID小的ACL规则会优先匹配;
    2、深度优先顺序,ACL规则的ID由系统自动分配,数据包范围小的会优先匹配。

    (四)基本/高级ACL配置命令

    一个ACL的配置过程可以分为以下步骤:
    1、访问控制列表的创建
    通过acl acl-number命令创建一个访问控制列表,acl-number的数字取值代表了创建的ACL类型。

    [Huawei]acl acl-number (match-order config/auto)
    
    • 1

    后跟match-order config/auto可选参数可以指定ACL的匹配方式,缺省配置是config匹配方式,config将ACL的匹配顺序按照规则的ID来进行,ID小的规则优先匹配;auto是选择使用自动顺序,按照深度优先的匹配顺序。
    在这里插入图片描述
    2、基本/高级ACL规则制定

    • 基本ACL只能过滤源IP地址和时间段来进行流量控制,而高级ACL匹配条件较为全面,可以通过源IP地址、目的IP地址、时间段、协议类型、ICMP报文类型等多种匹配。

    (1)基本ACL规则制定
    基本ACL命令通过rule permit/deny后跟相关参数来进行规则制定,permit表示通过,deny表示丢弃拒绝。

    [Huawei]rule (rule-id) permit/deny (source sour-address sour-wildcard/any)
    
    • 1

    rule-id可选参数,若没有指定,则表示添加一条新的规则;而若指定了rule-id,且该规则已存在,则会对其原有规则进行编辑,若没有则会添加一条新的规则。
    source sour-address sour-wildcard或any可选参数,前者表示指定源地址IP和源地址的反掩码;后者any代表源地址IP为0.0.0.0、反掩码为255.255.255.255。若该参数缺省,则代表报文的任何源地址都会被匹配。

    一个ACL中包括很多这种permit和deny的命令,缺省情况下,若没有配置拒绝数据源的命令,则所有数据都会被放行。

    例如,允许来自192.168.1.0/24网段能通过,rule-id为5,如下命令:
    在这里插入图片描述
    (2)高级ACL规则制定
    高级ACL命令也是通过rule permit/deny后跟相关参数来进行规则制定。

    [Huawei]rule (rule-id) permit/deny protocol (source sour-address sour-wildcard/any) (destination dest-address dest-mask/any)
    
    • 1

    protocol参数后跟名称或数字表示的IP承载的协议类型,名称可以为ip(对任何IP层协议)、icmp(协议号为1)、igmp(协议号为2)、tcp(协议号为6)、udp(协议号为17)、gre(协议号为47)、ospf(协议号为89)等,数字范围为1~255。

    [Huawei]rule 15 deny ip		//不允许IP报文通过
    
    • 1

    destination参数后跟目的地址的IP地址和反掩码,any代表目的地址IP为0.0.0.0、反掩码为255.255.255.255。若该参数缺省,则代表报文的任何目的地址都会被匹配。
    3、将ACL应用到相应接口上

    • 配置好相应的ACL后,需要将ACL应用到相应的接口上才会生效ACL控制,一般来说,为了尽可能提高效率和降低对网络的影响,应将基本ACL尽量部署在靠近目的主机所在区域的接口上,而高级ACL尽量部署在靠近源主机所在区域的接口上。

    首先需通过interface命令进入相应的接口,然后通过traffic-filter inbound/outbound acl acl-number命令过滤某个方向上的流量,其中inbound/outbound表示过滤方向。

    九、eNSP防火墙设备Web界面步骤

    1、打开eNSP,放置防火墙(以USG6000V为例)和Cloud:
    防火墙的设备包,之前的文章中有:
    *(绝对可以安装成功的HUAWEI eNSP模拟器)计算机网络实验(华为eNSP模拟器)——第一章 华为eNSP安装教程
    在这里插入图片描述
    2、启动防火墙FW1,用户名为admin,缺省密码为Admin@123,进入后提示更改密码,其中需要先输入旧密码,然后输入新密码,再次确认:
    在这里插入图片描述
    3、选取一个端口允许使用https和ping,并且设置防火墙的trust区域,该端口与云连接,所以将该端口加入信任区域:
    在这里插入图片描述
    3、配置端口,打开电脑的网络与Internet——高级网络设置——更多网络适配器选项:
    在这里插入图片描述
    4、选择一个VMware Virtual Ethernet Adapter for ……,修改其Internet协议版本设置(这里选取的是VM8):请添加图片描述
    在这里插入图片描述
    防火墙的默认Web管理地址为192.168.0.1,只需将虚拟网卡的IP修改为与其同一网段即可,例如设置里使用下列的IP地址(这里使用的IP地址是192.168.0.2):
    在这里插入图片描述
    然后确定即可。
    5、设置好后,打开云设备,在绑定信息里选择“UDP”,然后点击添加:
    在这里插入图片描述
    在这里插入图片描述
    接下来是添加刚刚修改的那个虚拟网卡,如果发现虚拟网卡对应的IP地址未改变,重新更换设备放置即可:
    在这里插入图片描述
    同样操作,也是添加:
    在这里插入图片描述
    6、将端口映射设置里的出端口编号选择为2,并勾选双向通知,然后点击添加:
    在这里插入图片描述
    右边的端口映射表有相关的提示:
    在这里插入图片描述
    7、将云与防火墙设备连接起来,注意要连接那时已配置安全策略的端口g0/0/0:
    在这里插入图片描述
    8、打开电脑的命令提示符,看是否能ping通网段192.168.0.1:
    在这里插入图片描述
    是可以ping通的,无误:
    在这里插入图片描述
    9、打开浏览器输入https://192.168.0.1:8443,会有提示不安全,直接进去(若有问题,需耐心等待或刷新试试),进去后输入用户名和自己设置的新密码:
    在这里插入图片描述

  • 相关阅读:
    Go 深入解析非类型安全指针
    基于SSM校内二手书籍交易系统的设计与实现
    web--跨域,cors,jsonp,域名接管劫持
    Bugku,Web:都过滤了
    Mysql 基础命令增删改查
    Linux简单shell脚本部署项目
    微服务追踪SQL(支持Isto管控下的gorm查询追踪)
    2024-2-22 作业
    C++ vector 效率之capacity()、resize()、reserve()
    【面试题】如何破坏 JVM的双亲委派机制
  • 原文地址:https://blog.csdn.net/qq_43085848/article/details/127633403