Relative Content

K4NZDROID

category

「NETWORKING」- 流量统计

基于流量统计,可以分析如下问题: 流量是否到达设备入口,进而判断上游设备是否丢包; 流量是否被转发到设备出口,进而判断设备是否丢包; 流量在设备入口二三层信息是否正确,进而判断上游设备转发封装是否正常; 流量在设备出接口二三层信息是否正确,进而判断设备转发封装是否正常; 是否存在MAC漂移、路由变化、IP冲突等导致的流量瞬间漂移。
流量统计的配置步骤: 配置ACL规则,匹配需要统计的流量。 配置流分类,根据ACL规则匹配不同的流量,从而区分不同数据流量。 配置流行为,在流行为中配置流量统计。 配置流策略,绑定以上流分类和流行为,实现对不同用户报文的流量统计。 在接口出方向或入方向调用流策略。

[R3] acl 3000
[R3-acl-adv-3000]rule 5 permit ip source 192.168.12.1 0 destination 192.168.56.6 0

[R3]traffic classifier trafficSta
[R3-classifier-trafficSta]if-match acl 3000

[R3]traffic behavior trafficSta
[R3-behavior-trafficSta]statistic enable

[R3]traffic policy trafficSta
[R3-trafficpolicy-trafficSta]classifier trafficSta behavior trafficSta

[R3]interface GigabitEthernet0/0/2.35
[R3-GigabitEthernet0/0/2.35]traffic-policy trafficSta outbound[……]

READ MORE

「Network Security」- 网络安全

问题描述
该部分笔记将记录:提升网络安全的方法,以及常见问题解决方案。
相关内容
Authentication
Kerberos: The Network Authentication Protocol Aauth2 Proxy / Nginx reverse proxy setup for Kibana[……]

READ MORE

「Huawei VRP」- 访问控制列表,ACL,Access Control List

问题描述
随着网络的飞速发展,网络安全和网络服务质量(QoS,Quality of Service)问题日益突出;
需要实现流量过滤: 1)某公司为保证财务数据安全,禁止研发部门访问财务服务器,但总裁办公室不受限制; 2)来自互联网的不安全流量需要屏蔽
解决方案
访问控制列表(ACL, Access Control List)是与其紧密相关的一个技术;
原理简述
1)ACL 是由系列 permit 或 deny 语句组成的、有序规则的列表; 2)ACL 是个匹配工具,能够对报文进行匹配和区分;
特性特征
ACL 可以通过对网络中报文流的精确识别,与其他技术结合,达到控制网络访问行为、防止网络攻击和提高网络带宽利用率的目的,从而切实保障网络环境的安全性和网络服务质量的可靠性;
应用场景
1)匹配 IP 流量 2)在 Traffic-filter 中被调用 3)在 NAT(Network Address Translation)中被调用 4)在路由策略中被调用 5)在防火墙的策略部署中被调用 6)在 QoS 中被调用 7)其他……[……]

READ MORE

「ACL」- 概念术语

语法规则(ACL Syntax)
语法概述: 1)ACL 由若干条 permit 或 deny 语句组成; 2)每条语句就是该 ACL 的一条规则。每条语句的 permit 或 deny 就是与这条规则相对应的处理动作;
第一步、定义 ACL 规则

# acl number 2000

// 2000:访问控制列表的编号

第二步、定义 ACL 条目

# rule 5 permit source 1.1.1.0 0.0.0.255
# rule 10 deny source 2.2.2.0 0.0.0.255

# rule 4294967294 deny # 在 ACL 末尾,由系统定西隐含(默认)的规则

// 5,10:规则编号。用于给规则排序;
// permit,deny:动作。允许或拒绝;
// source 1.1.1.0 0.0.0.255,2.2.2.0 0.0.0.255:匹配规则。用于匹配地址;

规则编号(Rule ID): 1)一个 ACL 中的每一条规则都有一个相应的编号; 2)取值范围:0~4294967294 3)所有规则均按照规则编号从小到大进行排序;
步长(Step): 1)步长是系统自动为 ACL 规则分配编号时,每个相邻规则编号之间的差值,缺省值为 5; 2)步长的作用是为了方便后续在旧规则之间,插入新的规则;
规则编号(Rule ID)的分配规则: 1)系统为 ACL 中首条未手工指定编号的规则分配编号时,使用步长值(例如 Step=5,首条规则编号为 5)作为该规则的起始编号; 2)为后续规则分配编号时,则使用大于当前 ACL 内最大规则编号,且是步长整数倍的最小整数作为规则编号;
通配符(Wildcard) 1)通配符是一个 32 比特长度的数值,用于指示 IP 地址中,哪些比特位需要严格匹配,哪些比特位无需匹配; 2)通配符通常采用类似网络掩码的点分十进制形式表示,但是含义却与网络掩码完全不同; 3)匹配规则:“0”表示“匹配”;“1”表示“随机分配”;
分类:基本 ACL;高级 ACL;
通过 acl number 2000 能够定义规则集合。但是数值 2000 并非任意的,不同区间的数值由不同含义
分类,编号范围,规则定义描述
1)基本 ACL,2000-2999,仅使用报文的源 IP 地址、分片信息和生效时间段信息来定义规则;
2)高级 ACL,3000-3999,可使用 IPv4 报文的源 IP 地址、目的 IP 地址、IP 协议类型、ICMP 类型、TCP 源 / 目的端口号、UDP 源 / 目的端口号、生效时间段等来定义规则;
3)二层 ACL,4000-49[……]

READ MORE

「ACL」- 场景及方案

配置使用(Huawei)
创建基本 ACL 规则

# 使用编号(2000~2999)创建一个数字型的基本 ACL,并进入基本 ACL 视图;
[Huawei] acl [ number ] acl-number [ match-order config ]

# 使用名称创建一个命名型的基本 ACL,并进入基本 ACL 视图;
[Huawei] acl name <acl-name> { basic | acl-number } [ match-order config ]

配置基本 ACL 规则

# 在基本 ACL 视图下,通过此命令来配置基本 ACL 的规则;
[Huawei-acl-basic-2000] rule [ rule-id ] { deny | permit } [ source { source-address source-wildcard | any } | time-range time-name ]

创建高级 ACL 规则:

# 使用编号(3000~3999)创建一个数字型的高级 ACL,并进入高级 ACL 视图;
[Huawei] acl [ number ] acl-number [ match-order config ]

# 使用名称创建一个命名型的高级 ACL,进入高级 ACL 视图;
[Huawei] acl name acl-name { advance | acl-number } [ match-order config ]

配置高级 ACL 规则:

# 使当参数 protocol 为 IP 时,高级 ACL 的命令格式为
rule [ rule-id ] { deny | permit } ip [ destination { destination-address destination-wildcard | any } | source { source-address source-wildcard | any } | time-range time-name | [ dscp dscp | [ tos tos | precedence precedence ] ] ]

# 当参数 protocol 为 TCP 时,高级 ACL 的命令格式为
rule [ rule-id ] { deny | permit } { protocol-number | tcp } [ destination { destination-address destination-wildcard | any } | destination-port { eq port | gt port | lt port | range[……]

READ MORE

「Firewall」- 概念、术语

发展历程
纵观防火墙的发展历史,防火墙经历了从低级到高级、从功能简单到功能复杂的过程。网络技术的不断发展和新需求的不断提出,推动着防火墙的发展;
防火墙从包过滤防火墙发展起经历了状态检测、统一威胁管理、NGFW 等到 AI 防火墙,有以下特点:访问控制越来越精细、防护能力越来越强、性能越来越高;

设备形态
防火墙根据设备形态分为,框式防火墙、盒式防火墙、软件防火墙,支持在云上云下灵活部署;

严格意义上,防火墙还有更多的部署形态,例如桌面型防火墙(盒式防火墙的一种)。桌面型防火墙适用于小型企业、行业分支、连锁商业机构等场景;
华为盒式防火墙同时支持传统模式和云管理模式。云管理模式由云端统一管理分支机构的安全接入,支持设备即插即用、业务配置自动化、运维可视化和网络大数据分析;
我们以学习 桌面型防火墙、软件防火墙 为主,后续内容聚焦的框式/盒式硬件防火墙(我们这辈子可能都不会域间框式防火墙);
软件防火墙
iptables 与 firewalld 都不是真正的防火墙,它们都只是用来定义防火墙策略的防火墙管理工具而已,即它们只是种前端服务。
iptables 服务会把配置好的防火墙策略交由内核层面的 netfilter 网络过滤器来处理; firewalld 服务则是把配置好的防火墙策略交由内核层面的 nftables 包过滤框架来处理;
设备对比
以园区网为例: 1)交换机作用是接入终端和汇聚内部路由,组建内部互联互通的局域网; 2)路由器作用是路由的分发、寻址和转发,构建外部连接网络; 3)防火墙作用是流量控制和安全防护,区分和隔离不同安全区域;

防火墙与路由器转发流程对比
防火墙的转发流程比路由器复杂;
以框式设备为例,硬件上除了接口、LPU(Line Processing Unit)、交换网板等外,防火墙还特有 SPU(Service Processing Unit),用于实现防火墙的安全功能;

设备类别
报文过滤防火墙
原理:包过滤防火墙的基本原理是通过 匹配数据包(比如 ACL 匹配)并执行控制策略 来实施数据包的过滤。包过滤是指基于五元组对每个数据包进行检测,根据配置的安全策略转发或丢弃数据包。包过滤防火墙主要基于数据包中的源/目的 IP 地址、源/目的端口号、IP 标识和报文传递的方向等信息;
优势:包过滤防火墙的设计简单,非常易于实现,而且价格便宜;
缺点,包过滤防火墙主要表现以下几点: 1)逐包检测,性能较低; 2)ACL 规则难以适应动态需求。随着 ACL 复杂度和长度的增加,其过滤性能呈指数下降;静态的 ACL 规则难以适应动态的安全要求; 3)通常不检查应用层数据;[……]

READ MORE

「FIREWALL-SOFTWARE」- 概念术语、基础知识

对于那些由服务器发出去的流量
「IPTables rule to allow all outbound locally originating traffic?」

iptables -I OUTPUT -o eth0 -d 0.0.0.0/0 -j ACCEPT
iptables -I INPUT -i eth0 -m state –state ESTABLISHED,RELATED -j ACCEPT

第一条规则并不是必需的。
防火墙工具
在 RHEL/CentOS 中,开始使用 firewalld 管理防火墙; 在 Ubuntu 中,采用 ufw 管理防火墙。
TCP Wrappers
第8章 使用Iptables与Firewalld防火墙 | 《Linux就该这么学》
TCP Wrapper 是在旧版 Linux 系统中默认启用的一款流量监控程序,它能够根据来访主机的地址与本机的目标服务程序做出允许或拒绝的操作。
TCP Wrapper 的使用需要应用程序支持:最初,只有从 Super-Server(例如 inetd 等等)为每个连接生成的服务才使用 tcpd 程序进行包装。现在,最常见的网络服务守护进程可以直接链接到 libwrap,这使得在没有从 Super-Server 派生的情况下运行的守护进程使用,或者在单个进程处理多个连接时使用。
换句话说,在 Linux 中其实有两个层面的防火墙:第一种是常见的基于 TCP/IP 协议的流量过滤工具;另种是 TCP Wrapper 这种能允许或禁止Linux系统提供服务的防火墙,从而在更高层面保护 Linux 系统的安全运行。
TCP Wrapper服务的防火墙策略由两个控制列表文件所控制,用户可以编辑允许控制列表文件来放行对服务的请求流量,也可以编辑拒绝控制列表文件来阻止对服务的请求流量。控制列表文件修改后会立即生效,系统将会先检查允许控制列表文件(/etc/hosts.allow),如果匹配到相应的允许策略则放行流量;如果没有匹配,则会进一步匹配拒绝控制列表文件(/etc/hosts.deny),若找到匹配项则拒绝该流量。如果这两个文件都没有匹配到,则默认放行流量。
在现在 Linux 版本中,它已经被firewalld正式替代。
ipfwadm
更早期的linux内核防火墙。ipfwadm是管理linux内核提供的IP计数和IP防火墙服务的程序。当前的ipfwadm稳定版本是1.2版本,需要linux内核版本为1.2.1或更高版本,ipfwadm的2.3.0版本则需要linux版本1.3.66或更高版本。以前的ipfwadm版本2.0beta1 beta版本之一,适用于[……]

READ MORE

「Firewall」- 安全策略(Security Policy)

安全策略,是控制防火墙对流量转发,及对流量进行内容安全一体化检测的策略;
当防火墙收到流量后,对流量的属性(五元组、用户、时间段等)进行识别,然后与安全策略的条件进行匹配。如果条件匹配,则此流量被执行对应的动作;

策略组成
安全策略的组成有: 1)匹配条件:用于根据条件来匹配数据包; 2)动作:对匹配的数据包所进行的动作: —- 如果为“允许”,则可配置安全配置文件安全配置文件(可选),用于实现内容安全,对内容进行检测; —- 如果为“禁止”,则可配置反馈报文,用于通知发送流量的用户;

动作
如果动作为“允许”,则对流量进行如下处理: 1)如果没有配置内容安全检测,则允许流量通过; 2)如果配置内容安全检测,最终根据内容安全检测的结论来判断是否对流量进行放行。内容安全检测包括反病毒、入侵防御等,它是通过在安全策略中引用安全配置文件实现的。如果其中一个安全配置文件阻断该流量,则防火墙阻断该流量。如果所有的安全配置文件都允许该流量转发,则防火墙允许该流量转发;
如果动作为“禁止”,则对流量进行如下处理: 1)防火墙不仅可以将报文丢弃, 2)还可以针对不同的报文类型选择发送对应的反馈报文(Reset 客户端:防火墙向 TCP 客户端发送 TCP reset 报文;Reset 服务器:防火墙向 TCP 服务器发送 TCP reset 报文;ICMP 不可达:FW 向报文客户端发送 ICMP 不可达报文)。发起连接请求的客户端/服务器收到防火墙发送的阻断报文后,可以快速结束会话,并让用户感知到请求被阻断;
更多详细信息,可以参考文档,“安全策略”章节:https://support.huawei.com/hedex/hdx.do?docid=EDOC1100084128
匹配过程
当配置多条安全策略规则时: 1)安全策略的匹配按照策略列表的顺序执行,即从策略列表顶端开始逐条向下匹配; 2)如果流量匹配某个安全策略,将不再进行下一个策略的匹配。安全策略的配置顺序很重要,需要先配置条件精确的策略,再配置宽泛的策略;
默认禁止:系统默认存在一条缺省安全策略 default。缺省安全策略位于策略列表的最底部,优先级最低,所有匹配条件均为 any,动作默认为禁止。如果所有配置的策略都未匹配,则将匹配缺省安全策略 default;[……]

READ MORE

「Firewall」- 安全区域(Security Zone)

安全区域(Security Zone),简称为区域(Zone),是防火墙的重要概念,一个 Zone 是防火墙若干接口所连网络的集合(注意,防火墙接口不属于安全区域);是一个安全的概念,大部分的安全策略都基于安全区域实施;

防火墙大部分的安全策略都基于 Zone 来实施,一个 Zone 内的用户具有相同的安全属性;防火墙是针对区域来实施安全策略的,控制区域间的互访;
一个安全区域是防火墙若干接口所连网络的集合,这些网络中的用户具有相同的安全属性; 将企业员工网络、公司服务器网络、外部网络划分到不同安全区域,对安全区域间的流量进行检测和保护;
在一台防火墙上不允许创建两个相同安全级别(Priority)的安全区域; 防火墙的接口必须加入一个安全区域,否则不能正常转发流量; 防火墙的一个接口只能属于一个安全区域; 防火墙的一个安全区域可以拥有多个接口; 系统自带的缺省安全区域不能删除,用户可以根据实际需求创建自定义的安全区域;

安全区域特性
安全区域有以下特性:
1)华为防火墙确认已创建四个默认区域,名称均为小写字母,大小写敏感,不能删除,也不允许修改安全优先级;
2)用户可根据自己的需求创建自定义的 Zone;
3)每个 Zone 都必须设置一个安全优先级(Priority),值越大,则 Zone 的安全优先级越高; 在思科中,高优先级可以访问低优先级; 在华为中,区域完全隔离,无法互访,而优先级仅具有字面意义(并无实际用途);
默认安全区域
华为防火墙确认已创建四个默认区域:
1)本地区域(local),Local 区域定义的是设备本身,例如设备的接口。Local 区域是最高安全级别区域,优先级为 100; local 区域定义的是设备本身,包括设备的各接口本身。凡是由设备构造并主动发出的报文均可认为是从 Local 区域中发出,凡是需要设备响应并处理(而不仅是检测或直接转发)的报文均可认为是由 local 区域接收。用户不能改变 local 区域本身的任何配置,包括向其中添加接口。由于 local 区域的特殊性,在很多需要设备本身进行报文收发的应用中,需要开放对端所在安全区域与 local 区域之间的安全策略;
2)受信区域(trust),较高安全级别区域,优先级为 85; 通常用于定义内网终端用户所在区域;
3)非军事化区域(dmz),中等安全级别区域,优先级为 50; 通常用于定义内网服务器所在区域。因为这种设备虽然部署在内网,但是经常需要被外网访问,存在较大安全隐患,同时一般又不允许其主动访问外网,所以将其部署一个优先级比 trust 低,但是比 untrust 高的安全区域中。DMZ(Demilitarized Zone)起源于军方,是[……]

READ MORE

「Firewall」- 会话表(Session Table)

会话表是用来记录 TCP、UDP、ICMP 等协议连接状态的表项,是防火墙转发报文的重要依据;
防火墙采用基于“状态”的报文控制机制:只对首包或者少量报文进行检测就确定一条连接的状态,大量报文直接根据所属连接的状态进行控制。这种状态检测机制迅速提高了防火墙的检测和转发效率。会话表就是为了记录连接的状态而存在的。设备在转发 TCP、UDP 和 ICMP 报文时都需要查询会话表,来判断该报文所属的连接并采取相应的处理措施;

本例中 PC1 向 PC2 发起 HTTP 连接,所以在防火墙会话表中标示出“http”协议和连接信息,并识别出此流量在公共路由表中被转发(图中 VPN:public);
会话表的创建和包处理过程
防火墙状态检测开启情况下,仅流量的首包会创建会话表项,后续包即可直接匹配会话表项;

本流程只是一个示意图,展示华为防火墙各个模块的基本处理顺序。实际不同的报文处理并非严格按照此流程图依次进行(若无对应配置),且与具体产品实现相关,更多详细信息建议参考指定型号防火墙产品文档的“报文转发流程”章节;
会话表的老化时间与长连接
防火墙为各种协议设定了会话老化机制。当一条会话在老化时间内没有被任何报文匹配,则会被从会话表中删除。这种机制可以避免防火墙的设备资源被大量无用、陈旧的会话表项消耗;
但是对于某些特殊业务中,一条会话的两个连续报文可能间隔时间很长。例如: 1)用户通过 FTP 下载大文件,需要间隔很长时间才会在控制通道继续发送控制报文; 2)用户需要查询数据库服务器上的数据,这些查询操作的时间间隔远大于 TCP 的会话老化时间; 3)此时如果其会话表项被删除,则该业务会中断;
长连接(Long Link)机制可以给部分连接设定超长的老化时间,有效解决这个问题;
在华为设备中: 1)查看各协议会话的失效时间:display firewall session aging-time 2)[……]

READ MORE

「Firewall」- 防火墙双机:问题、方案

问题描述
随着移动办公、网上购物、即时通讯、互联网金融、互联网教育等业务蓬勃发展,网络承载的业务越来越多,越来越重要。所以如何保证网络的不间断传输成为网络发展过程中急需解决的一个问题;
防火墙部署在企业网络出口处,内外网之间的业务都会通过防火墙转发。如果防火墙出现故障,便会导致内外网之间的业务全部中断,影响到整网业务。由此可见,在这种网络关键位置上如果只使用一台设备的话,无论其可靠性多高,都存在因设备单点故障而导致网络中断的风险。于是,在做网络架构设计时,通常会在网络的关键位置部署两台网络设备,以提升网络的可靠性;
问题:状态数据同步
防火墙是状态检测设备,它会对一条流量的首包进行完整的检测,并建立会话来记录报文的状态信息(包括报文的源 IP、源端口、目的 IP、目的端口、协议等)。而这条流量的后续报文只有匹配会话才能够通过防火墙并且完成报文转发,如果后续报文不能匹配会话则会被防火墙丢弃;
如果在网络出口处部署两台独立的防火墙,则两台防火墙独立运行,需分别进行配置维护。此外,以在防火墙的上行、下行部署 VRRP 为例,由于这两组 VRRP 相互独立,因此容易出现主备状态不一致的情况,此时内网访问外网的往返流量路径不一致,当回程流量抵达 FW2 时,由于 FW2 没有匹配的会话表项,因此这些流量将被丢弃;
所以当防火墙双机部署时需要考虑两台防火墙之间的会话等状态信息的备份;

问题:配置维护成本

解决方案
防火墙双机热备技术用于解决该问题。部署多台防火墙可提升可靠性,需保证设备切换过程中的业务连续性;
原理简述

1)双机热备,需要两台硬件和软件配置均相同的防火墙组成双机热备系统,等于说是一模一样; 2)两台 FW 之间,通过一条独立的链路连接,这条链路通常被称之为“心跳线”。通过心跳线了解对端的健康状况,向对端备份配置和表项(如会话表、IPsec SA 等); 3)当一台防火墙出现故障时,业务流量能平滑地切换到另一台设备上处理,使业务不中断;
特性特征
目前(08/08/2022)只支持两台设备进行双机热备; 主备设备的产品型号和版本必须相同; 主备设备业务板和接口卡的位置、类型和数目都须相同,否则会出现主用设备备份过去的信息,与备用设备的物理配置无法兼容,导致主备切换后出现问题;
应用场景
双机热备直路部署,连接二层设备
防火墙的业务接口工作在三层,上下行连接交换机;

终端可将默认网关设置为 VRRP VRID1 的虚拟 IP 地址。SW3/SW4 配置回程路由时,可将下一跳设置为 VRRP VRID100 的虚拟 IP 地址;
双机热备直路部署,连接三层设备
防火墙的业务接口工作在三层,上下行连接路由器[……]

READ MORE

「Firewall」- 多通道协议的解决方案:Server Map

问题描述
单通道协议,通信过程中只需占用一个端口的协议。比如 WWW 只需占用 80 端口、SSH 只占用 22 端口; 多通道协议,与之相对的是,通信过程中需占用两个或两个以上端口的协议;
大部分多媒体应用协议(如 H.323、SIP)、FTP、netmeeting 等协议使用约定的固定端口来初始化一个控制连接,再动态的协商出端口用于数据传输。端口的选择是不可预测的。其中的某些应用甚至可能要同时用到多个端口。传统的包过滤防火墙可以通过配置 ACL 过滤规则匹配单通道协议的应用传输,保障内部网络不受攻击,但只能阻止一些使用固定端口的应用,无法匹配使用协商出随机端口传输数据的多通道协议应用,留下了许多安全隐患; 以 FTP 为例,它是个典型的多通道协议,在其工作过程中,FTP Client 和 FTP Server 间将会建立两条连接:控制连接和数据连接。控制连接用来传输 FTP 指令和参数,其中就包括建立数据连接所需要的信息。数据连接用来获取服务器目录及传输数据。数据连接使用的端口号是在控制连接中临时协商的。根据数据连接的发起方式 FTP 协议分为两种工作模式:主动模式(PORT 模式)和被动模式(PASV 模式)。主动模式中,FTP Server 20 号端口主动向 FTP Client 随机端口发起数据连接;被动模式中,FTP Server 被动接收 FTP Client 发起的数据连接。模式在一般的 FTP 客户端中都是可以设置的,这里我们以主动模式为例;
当多通道协议存在时,由于防火墙安全策略配置,导致多通道协议无法正常工作。这通常是因为在防火墙上配置严格的单向安全策略,那么防火墙将只允许业务单方向发起访问。而多通道协议第二条链接采用动态协商的端口,而防火墙没有针对该动态端口的放行策略,导致连接失败;
这会导致一些特殊的协议无法工作,例如 FTP。FTP 主动模式传输文件时,首先需要客户端主动向服务器端发起控制连接,然后需要服务器端向客户端发起数据连接。如果设备上配置的安全策略仅允许客户端报文单方向通过,则 FTP 文件传输不能成功; 同 FTP,通信过程中需占用两个或两个以上端口的协议被称为多通道协议。多通道协议都需要考虑此类问题;
解决方案
防火墙配置较为宽泛的安全策略也可以解决协议不可用问题,但是存在安全隐患;
为了解决多通道协议的问题,防火墙需要识别协议在应用层协商的地址和端口,这需要开启 ASPF(Application Specific Packet Filter,针对应用层的包过滤)功能,该特性将识别协议,并针对协议自动创建临时的安全策略(仅能如此理解,实际情况并非如此);
ASPF and Server-Map
ASPF 也称作基于状态的报文过滤,ASPF 功能可以自动检测[……]

READ MORE

「Huawei Firewall」- 虚拟系统

解决方案

原理简述

特性特征
为了实现每个虚拟系统的业务都能够做到正确转发、独立管理、相互隔离,FW 主要实现了几个方面的虚拟化: 1)资源虚拟化:每个虚拟系统都有独享的资源,包括接口、VLAN、策略和会话等。根系统管理员分配给每个虚拟系统,由各个虚拟系统自行管理和使用; 2)配置虚拟化:每个虚拟系统都拥有独立的虚拟系统管理员和配置界面,每个虚拟系统管理员只能管理自己所属的虚拟系统; 3)安全功能虚拟化:每个虚拟系统都可以配置独立的安全策略及其他安全功能,只有属于该虚拟系统的报文才会受到这些配置的影响; 4)路由虚拟化:每个虚拟系统都拥有各自的路由表,相互独立隔离。目前仅支持静态路由的虚拟化;
通过以上几个方面的虚拟化,当创建虚拟系统之后,每个虚拟系统的管理员都像在使用一台独占的设备;
应用场景
大中型企业的网络隔离
通过防火墙的虚拟系统将网络隔离为研发部门、财经部门和行政部门。各部门之间可以根据权限互相访问,不同部门的管理员权限区分明确;

云计算中心的安全网关
通过配置虚拟系统,可让部署在云计算中心出口的 FW 具备云计算网关的能力,对不同租户流量进行隔离的同时提供安全防护能力;
概念术语
Public vs. VSYS
防火墙上存在两种类型的虚拟系统:
根系统(Public) 缺省即存在的一个特殊虚拟系统。缺省时,管理员对防火墙进行配置等同于对根系统进行配置; 在虚拟系统这个特性中,根系统的作用是管理其他虚拟系统,并为虚拟系统间的通信提供服务;
虚拟系统(VSYS):虚拟系统是在防火墙上划分出来的、独立运行的逻辑设备;
Virtual Interface(虚拟接口)
虚拟接口是创建虚拟系统时设备自动为其创建的一个逻辑接口,作为虚拟系统自身与其他虚拟系统之间通信的接口; 虚拟系统之间通过虚拟接口实现互访,并且虚拟接口必须配置 IP-ADDR 并加入 Security Zone 才能正常工作;
虚拟接口名的格式为“Virtual-if+接口号”: 1)根系统的虚拟接口名为 Virtual-if0; 2)其他虚拟系统的 Virtual-if 接口号从 1 开始,根据系统中接口号占用情况自动分配;

如图所示,各个虚拟系统以及根系统的虚拟接口之间默认通过一条“虚拟链路”连接。如果将虚拟系统、根系统都视为独立的设备,将虚拟接口视为设备之间通信的接口,通过将虚拟接口加入安全区域并按照配置一般设备间互访的思路配置路由和策略,就能实现虚拟系统和根系统的互访、虚拟系统之间的互访;
访问:VSYS ==> 根系统
虚拟系统与根系统互访有两种场景:虚拟系统访问根系统、根系统访问虚拟系统。 这两种场景下,报文转发[……]

READ MORE

「FIREWALL-SOFTWARE」- 概念术语、基础知识

解决方案
从RHEL 7系统开始,firewalld防火墙正式取代了iptables防火墙。
在 RHEL 8 中集成了多款防火墙管理工具,其中firewalld(Dynamic Firewall Manager of Linux systems,Linux系统的动态防火墙管理器)服务是默认的防火墙配置管理工具,它拥有基于CLI(命令行界面)和基于GUI(图形用户界面)的两种管理方式。
特性特征
相较于传统的防火墙管理配置工具,firewalld 支持动态更新技术并加入了区域(zone)的概念。简单来说,区域就是 firewalld 预先准备了几套防火墙策略集合(策略模板),用户可以根据生产场景的不同而选择合适的策略集合,从而实现防火墙策略之间的快速切换。这使得 firewalld 更像防火墙产品。[……]

READ MORE

「firewalld」- 概念术语

区域(ZONE)
在以往,我们需要频繁地手动设置防火墙策略规则,而现在只需要预设好区域集合,然后轻点鼠标就可以自动切换了,从而极大地提升了防火墙策略的应用效率。
常见的区域名称(默认为public)以及相应的策略规则: trusted:允许所有的数据包 home:拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh、mdns、ipp-client、amba-client与dhcpv6-client服务相关,则允许流量 internal:等同于home区域 work:拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh、ipp-client与dhcpv6-client服务相关,则允许流量 public:拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh、dhcpv6-client服务相关,则允许流量 external:拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh服务相关,则允许流量 dmz:拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh服务相关,则允许流量 block:拒绝流入的流量,除非与流出的流量相关 drop:拒绝流入的流量,除非与流出的流量相关
firewall-cmd
是 firewalld 的 CLI(命令行界面)配置管理工具。它的参数通常都是以“长格式”来提供的。
firewall-config
Documentation – Utilities – firewall-config | firewalld
是firewalld防火墙配置管理工具的GUI(图形用户界面)版本,几乎可以实现所有以命令行来执行的操作。
简单操作,易于上手使用。[……]

READ MORE

「Linux」- 安装 iptables 防火墙

问题描述
该笔记将记录:在 Linux 中,安装 iptables 的方法,以及常见问题解决方案。
解决方案
WIP
原理简述
iptables 服务会把配置好的防火墙策略交由内核层面的 netfilter 网络过滤器来处理;
配置案例
从发行版的源中安装

# Kali GNU/Linux Rolling
apt-get install iptables

使用源码编译安装
参考BLFS/Iptables-1.6.0中的说明。
安装的可执行程序
iptables/ip6tables,用于设置、维护、检查Linux内核中的IP数据包过滤规则表。该命令是用于配置防火墙的主要命令,对防火墙的操作主要是通过该命令实现的。
iptables-restore/ip6tables-restore,从文件中或者STDIN中读取数据中来恢复IP表。可以用于将多条防火墙配置数据导入到防火墙中。该命令识别的数据格式与iptables-save命令导出的格式相同。
iptables-save/ip6tables-save,将IP表的内容以一种易于解析的格式输出到STDOUT中。或者可以使用SHELL的I/O重定向来输出到文件。该命令可以用于导出防火墙的配置,并且该命令导出的配置可以使用iptables-restore命令再次导入到防火墙中。
iptables-xml/ip6tables-xml,用于将iptables-save的输出转换为XML格式。你可以执行iptables-save | iptables-xml命令看一下输出。
xtables-multi,这是一个二进制文件。它的行为与调用它时所使用的名称相符。比如,创建指向xtables-multi且名为iptables的软链接,那执行该iptables软链接时,它的行为与实际的iptables命令相同。[……]

READ MORE

「iptables」- 概念术语

Table, Chain, Rule, Policy
针对主机触及的数据包: 1)数据包传入主机,确定哪个 Table(表)进行处理; 2)在 Table 中,确定被哪个 Chain(规则链)处理; 3)在 Chain 中,确定被哪条 Rule(规则)处理; 4)在 Rule 中,确定要执行哪个 Policy(策略);
Table(表)
四表(Four Tables)
raw table:确定是否对该数据包进行状态跟踪。 包含两个规则链:PREROUTING;OUTPUT;
mangle table:修改数据包内容,用来做流量整形的,给数据包设置标记。 包含五个规则链:PREROUTING;INPUT;FORWARD;OUTPUT;POSTROUTING;
nat table:负责网络地址转换,用来修改数据包中的源、目标IP地址或端口。 包含三个规则链:PREROUTING;OUTPUT;POSTROUTING;
filter table:负责过滤数据包,确定是否放行该数据包(过滤)。 包含三个规则链:INPUT;FORWARD;OUTPUT;
在iptables 的四个规则表中,mangle table 和 raw table 的应用相对较少;
当数据包到达防火墙时,规则表之间的优先顺序:raw > mangle > nat > filter
Chain(规则链)
规则链,是由多条 Rule 组成的规则集合;
防火墙会按照从上到下的顺序来读取配置的策略规则: 1)在找到匹配项后就立即结束匹配工作,并去执行匹配项中定义的行为(即放行或阻止)。 2)如果在读取完所有的策略规则之后没有匹配项,就去执行默认的策略。
针对默认策略,在设置时: 1)当防火墙的默认策略为拒绝时,就要设置允许规则,否则谁都进不来; 2)如果防火墙的默认策略为允许,就要设置拒绝规则,否则谁都能进来,防火墙也就失去了防范的作用。
五链(Five Chains)
PREROUTING:在进行路由选择前处理数据包,用来修改目的地址,用来做DNAT。相当于把内网服务器的IP和端口映射到路由器的外网IP和端口上
INPUT:处理入站数据包,匹配目标IP为本机的数据包,然后才会交由应用程序进行处理;
OUTPUT:处理出站数据包,通常不在此链上做配置
FORWARD: 处理转发数据包,匹配流经本机的数据包
POSTROUTING: 在进行路由选择后处理数据包,用来修改源地址,用来做SNAT。相当于内网通过路由器NAT转换功能实现内网主机通过一个公网IP地址上网
Rule(规则)
Rule(规则),是 iptables 把用于处理或过滤流量的[……]

READ MORE

「Linux」- 保存防火墙配置

CentOS 6.x
How to configure iptables on CentOS
保存防火墙配置:service iptables save
防火墙配置保存路径:/etc/sysconfig/iptables
重新加载防火墙配置:service iptables restart
Debian 8.x
debian 8 iptables-persistent
在Debian 8(或者衍生发行版)中,可以使用iptables-persistent包来进行防火墙配置的持久化。
注意:这里讨论的”防火墙“指的是Linux内核防火墙的前端工具iptables(8)命令。
安装 iptables-persistent 包

# Kali GNU/Linux Rolling
apt-get install iptable-persistent netfilter-persistent

先保存原有配置
初次安装时,会提示你是否保存当前防火墙规则。如下图:

这一步是为了保存当前防火墙规则。
如果以后要保存防火墙规则,可以执行dpkg-reconfigure iptables-persistent命令来再次进行保存防火墙规则。
持久化的规则文件在/etc/iptables/中。
修改防火墙配置
如果要修改防火墙配置,可以通过修改/etc/iptables/rules.v4和/etc/iptables/rules.v6两个配置文件,一个保存了IPv4的防火墙配置,一个保存了IPv6的防火墙配置。
实际上规则文件的格式为iptables-save的导出格式。
使修改后的配置生效
修改配置文件后,执行systemctl restart netfilter-persistent.service命令来重新加载防火墙配置。
配置信息的备份
执行dpkg-reconfigure iptables-persistent命令时,它会用当前防火墙的配置信息直接覆盖/etc/iptables/rules.vX文件。如果/etc/iptables/rules.vX文件中包含了自定义的配置、注释等信息,则需要先备份。[……]

READ MORE

「Network」- 流量过滤,Traffic Filter

问题描述
为提高网络安全性,用户希望能够控制进入网络的报文,将没有权限进入网络或存在安全隐患的报文隔离在网络边界。
为提高网络安全性,(1)管理人员需要控制进入网络的流量,将不信任的报文丢弃在网络边界。所谓的不信任报文是指对用户来说存在安全隐患或者不愿意接收的报文。(2)同时保证数据访问安全性,企业网络中经常会要求一些部门之间不能相互访问。
解决方案
通过流量过滤(Traffic Filter)技术,我们能够控制网络流量的互访。
注意,流量过滤(Traffic Filter)始终技术,而实现该技术的工具有很多: 1)华为,Traffic-Filter,实现流量过滤(易用,简单); 2)华为,MQC,实现流量过滤(复杂,丰富);
Traffic-Filter 只能应用在接口视图下,而 MQC 能够在多种视图下调用。[……]

READ MORE

「Network」- 华为,流量过滤,通过 MQC 实现

在 MQC 中,Traffic Behavior 的 deny 用于拒绝流量。
为匹配 ACL 规则的报文指定报文过滤动作时: 1)如果此 ACL 中的 rule 规则配置为 permit,则设备对此报文采取的动作由 Traffic Behavior 中配置的deny或permit决定; 2)如果此 ACL 中的rule规则配置为 deny,则无论流行为中配置了deny或permit,此报文都被丢弃。[……]

READ MORE

「Network」- 华为,流量过滤,通过 Traffic-Filter 实现

通过 Traffic-Filter 过滤流量,能够灵活地选择部署位置,在流量进入设备(Inbound)或离开设备(Outbound)的接口上执行过滤动作,双向访问的业务禁止其中一个方向即可实现阻断业务的需求。

Traffic-Filter 部署的位置不同,其调用的 ACL 内容也不相同。[……]

READ MORE

「Network」- 华为,流量过滤,通过 Traffic-Filter 实现

案例:通过基本 ACL 过滤数据流量

配置需求: 在 Router上 部署基本ACL后,ACL将试图穿越Router的源地址为 192.168.1.0/24 网段的数据包过滤掉,并放行其他流量,从而禁止192.168.1.0/24网段的用户访问Router右侧的服务器网络。
配置方法:

// 在 Router 上,创建基本 ACL 规则:禁止192.168.1.0/24网段访问服务器网络
// 然后,进入 GE0/0/1 接口,并应用规则:所以在接口GE0/0/1的入方向配置流量过滤

[Router] acl 2000
[Router-acl-basic-2000] rule deny source 192.168.1.0 0.0.0.255
[Router-acl-basic-2000] rule permit source any

[Router] interface GigabitEthernet 0/0/1
[Router-GigabitEthernet0/0/1] traffic-filter inbound acl 2000

案例:通过高级 ACL 限制不同网段的用户互访

配置需求
1)某公司通过Router实现各部门之间的互连。为方便管理网络,管理员为公司的研发部和市场部规划了两个网段的IP地址。 2)现要求Router能够限制两个网段之间互访,防止公司机密泄露。
配置方法

// 创建高级 ACL 3001 并配置 ACL 规则,拒绝研发部访问市场部的报文
// 并从 GE0/0/1 直接阻断去往 10.1.2.0 的流量

[Router] acl 3001
[Router-acl-adv-3001] rule deny ip source 10.1.1.0 0.0.0.255 destination 10.1.2.0 0.0.0.255

[Router] interface GigabitEthernet 0/0/1
[Router-GigabitEthernet0/0/1] traffic-filter inbound acl 3001

// 创建高级ACL 3002并配置ACL规则,拒绝市场部访问研发部的报文:
// 并从 GE0/0/2 直接阻断去往 10.1.1.0 的流量

[Router] acl 3002
[Router-acl-adv-3002] rule deny ip source 10.1.2.0 0.0.0.255 destination 10.1.1.0 0.0.0.255

[Router] interface GigabitEthernet 0/0/2
[Router-GigabitEthernet0/0/2][……]

READ MORE

「NETWORKING」- 企业数据通信解决方案(概览、了解)

问题描述
1946 年,第一台电子计算机的发明,为人类打开的信息化时代的大门,也为信息通信技术的发展奠定了基础;
日新月异的信息通信技术,不断地改变着人们的生活方式,在过去的几年,以物联网、大数据、云计算、人工智能为代表的新一代 ICT 技术逐渐成为驱动社会和经济转型升级的重要引擎,渗透到各行各业中;
万物互联(人与人、人与物、物与物互联,本质是数据的联结和计算),来共同构造数字化世界。到 2025 年,会由 500 亿连接数:90% 数据来自物联传感器,80 亿+ 全球范围的智能电话,5 亿可穿戴设备,1.7 GB 每个连接每天数据消费……
该部分笔记将记录:从整体上了解数通网络环境、其中所采用的技术,以及现有解决方案;
解决方案
数通网络,是“万物” 联结的管道,是实现数据交互的基础设施,是打造数字世界的基石,新的 ICT 技术导致数据流量以及存储爆发式的增长,也为数通网络带来了更大的挑战,为应对挑战,各大厂商不断优化网络解决方案,以匹配数字化转型诉求;

企业数通网络全景概览

从应用领域,企业网络可分为等多个领域: 1)Campus(园区)、WLAN; 2)Data Center(数据中心); 3)WAN(广域网);
我们将从将从解决方案角度学习数通网络在各领域的分类、架构、典型应用场景、趋势挑战以及华为在该领域的解决方案;
数通:是联结领域真正成网的产业,部署在网络的各个层级,犹如江河湖海; 5G 接入和家宽接入:犹如支流,园区网络好比池塘; 城域网:好比长江的大型支流,如金沙江;骨干网好比长江; 核心数据中心:是太平洋,区域数据中心是大型湖泊,如鄱阳湖,接入数据中心是水库;[……]

READ MORE

「Network」- 园区网(Campus Network)、网络架构

问题描述
城市,除了马路,都是园区 —— 园区是一个广义的概念,我们的日常活动多是在园区中进行,在这里“园区”的定义是非常宽泛的,城市中 90%的活动,都发生在园区内,大部分数据从园区汇聚
该笔记将记录:园区网络的总体架构、网络各层次中所使用的常用技术及协议、典型的组网场景;
解决方案
Campus Network(园区网络),通常是指企业或机构的内部网络,与广域互联、数据中心相关。诸如 工厂、政府机关、商场、写字楼、校园、公园 等等,这些场所内为了实现数据互通而搭建的网络,都可以称之为园区网;
建网目的
园区网络的主要目的:使企业或机构的各项业务运作更有效率;
网络规模
园区有大有小,有行业属性的不同,相应地,园区网络也变化多样;
按规模,可以将园区网络划分成: 1)大型园区网络:终端用户数量 > 2000 个;网元数量 > 100 个; 2)中型园区网络:2000 > 终端用户数量 > 200;100 > 网元数量 > 25; 3)小型园区网络:终端用户数量 < 200 个;网元数量 < 25 个;
有些企业还存在不同地域的办公分支机构,每个分支机构网络可看做一个单园区网络;
不同规模的网络,其需求及痛点各不相同;[……]

READ MORE

「Campus Network」- 园区网常见架构

园区网络架构(概览)

数据中心:对内服务的数据,仅内部使用;
DMZ:对外访问的服务;
核心层:转发流量,对性能要求较高;
模块设计

网络扩展

使用 VPN,或者专线网络(价格成本高)来扩充网络;
性能提升

配置优化、设备冗余,来提升网路性能;
安全保障

内部网络安全:防火墙、准入技术(终端设备的访问认证、终端设备的健康检查)
外部网络安全:通过网络设备
网络管理

eSight:华为网关系统,管理所有网络设备;
常见的行业园区网
为了满足不同行业园区的需求,园区网络架构会根据其服务的行业特点进行设计, 最终打造的是带有行业属性的园区网络方案;

企业园区网络
1)关注网络可靠性、先进性,持续提升员工的办公体验,保障运营生产的效率和质量;
下一代企业网结构:
私有云:企业内部部署云服务 公有云:第三方提供的云服务; 混合云:私有云 + 公有云;
校园园区网络
1)分为普教园区和高教园区; 2)高教园区相对复杂,通常存在教研网、学生网,还可能有运营性的宿舍网络; 3)网络可管理性、安全性要求高;对网络先进性亦有要求;
校园网是为学校师生(以及家属、访客等)提供教学、科研和综合信息服务的计算机网络; 高教校园网特指高等教育院校的校园网; 高教园区网一般分为宿舍区 / 生活区 / 教学区 / 公共区等,通过有线、无线的方式提供网络接入服务,帮助校园进入数字化时代,提升学校人才培养及创新能力;

Cernet 一般指中国教育和科研计算机网。中国教育和科研计算机网(China Education and Research Network)简称 CERNET,是由国家投资建设,教育部负责管理,清华大学等高等学校承担建设和管理运行的全国性学术计算机互联网络;
政务园区网络
1)通常指政府机构的内部网络; 2)安全要求极高,通常采用内网和外网隔离的措施保障涉密信息的绝对安全;
商业园区网络
1)商场、超市、酒店、公园等; 2)网络主要用于服务消费者,此外还包含服务内部办公的子网; 3)提供上网服务,并构建商业智能化系统提升用户体验,降低运维成本,提升商业效率,实现价值转移;[……]

READ MORE

「Campus Area Network」- 园区网络常用技术

解决方案
无论如何变化,园区网络一般划分为出口层、核心层、汇聚层及接入层;

终端层(Terminal Layer)
终端层是指接入园区网络的各种终端设备,例如电脑、打印机、IP 话机、手机、摄像头等;
接入层(Access Layer)
为终端用户提供园区网接入功能,是园区网的边界: 1)接入层为用户提供各种接入方式,是终端接入网络的第一层; 2)接入层通常由接入交换机组成,接入层交换机在网络中数量众多,安装位置分散,通常是低端二层交换机; 3)如果终端层存在无线终端设备,接入层需要无线接入点 AP 设备,AP 设备通过接入交换机接入网络;
设备:有线网络、低端二层交换机、无线接入点(AP) ;
协议:VRRP、MSTP、VLAN、Voice VLAN
汇聚层(Aggregation Layer)
处于园区网的中间层次,完成数据汇聚或交换的功能,可以提供一些关键的网络基本功能,如路由、安全等;
设备:三层交换机(负责连接二层与三层)
协议:IGP(OSPF、ISIS)、LLDP、链路聚合、交换机堆叠(iStack)
核心层(Core Layer)
是园区网骨干,是园区数据交换的核心,联接园区网的各个组成部分,如数据中心、管理中心、园区出口等;
设备:高端交换机
协议:IGP(OSPF、ISIS)、LLDP、WLAN AC(802.11)、SNMP、NETCONF(YANG)、
出口区(Campus egress zone)
园区内部网络到外部网络的边界,用于实现内部用户接入到公网,外部用户(包括客户、合作伙伴、分支机构、远程用户等)接入到内部网络;
设备:防火墙、出口路由器
协议:NAT、VPN、EGP(BGP)、
数据中心区(DC zone)
部署服务器和应用系统的区域,为企业内部和外部用户提供数据和应用服务;
网管运维区(Network management zone)
部署网络管理(例如网管系统、认证服务器等)和运维系统的区域;
非军事区(DMZ)
非军事区(DMZ)为外部访客(企业员工以外的人员)提供安全严格控制的接入服务。公共服务器通常部署在DMZ 中。
参考文献
Network Architecture Design – CloudCampus Solution V100R019C10 Deployment Guide for Large- and Medium-Sized Campus Networks (Non-virtualization Scenario) – Huawei[……]

READ MORE

「Network」- 园区网络安全,Campus Netwrok Security

园区边界
通过防火墙设备,实现不同安全区域之间的划分及业务隔离、安全管控; 通过 Anti-DDoS 设备,抵御 DDoS 攻击; 通过 IPS 设备,进行入侵检测及安全态势感知;
网络地址转换(NAT)
内网用户(采用私网 IP 地址)需访问 Internet,需对其源 IP 地址进行转换,转换为公网 IP 地址;
外网用户需访问采用私网 IP 地址的服务器(例如 WEB 服务器) ⇒ 作为辅助手段,避免服务器整个暴露在公网;
核心层、汇聚层
对不同的业务进行隔离部署、互访流量管控; 按需部署网络准入控制; 部署设备本机防攻击,提高设备抗攻击能力;
接入层
建议开启广播风暴控制、DHCP Snooping、IP Source Guard、DAI 等安全功能; 建议部署 Port Isolation(端口隔离),加强用户通信安全; 部署 NAC(网络准入控制),对接入园区的用户的身份或终端进行认证,并根据结果授予网络访问权限; 部署无线空口安全及无线业务安全;[……]

READ MORE