网络原来如此之防火墙应用网关技术

2023-06-07 22:22:03 来源:清一色财经

打印 放大 缩小

​当前我行科技发展迅猛,各种新技术、新架构不断出现,防火墙的安全隔离作为数据中心内部安全管控的必要手段,一方面要保障数据中心安全稳定运行,另一方面也要以快捷、稳定的方式支持应用系统发展,进而赋能我行业务高速发展。​


(资料图片)

1、ALG产生背景

在应用层协议中,部分协议有多个通道用于信息交互,例如FTP、SIP、SQLNET等,类似通信网中的“七号信令”。这种多通道的协议首先需要建立控制通道,然后在控制通道中协商数据通道的地址和端口,根据协商结果临时创建一个或多个数据通道,使用的端口通常不能预先确定,同时数据通道连接建立的方向也不能预先确定,防火墙的安全策略(Policy)和网络地址转换规则(NAT)无法准确描述这些数据通道。因此这种多通道协议在经过防火墙时往往会出现控制通道可以建立连接,数据通道不能完整建立连接,或没有反向策略,会导致数据通道通信失败。对于多通道的应用层协议,由于防火墙无法检测上层协商的数据通道端口,而且也不能提前于应用预先知道数据通道的端口,更无法配置适当的安全策略。

另外在NAT的应用场景中,防火墙的NAT功能仅对IP网络层报文的报文头进行IP地址的识别和转换,对于应用层协商过程中报文载荷携带的地址信息无法进行识别和转换,因此在NAT的应用场景中,多通道的协议的数据通道也不能建立。

2、什么是ALG

ALG(Application Level Gateway)全称应用网关,ALG技术可以识别典型多通道应用协议IP报文数据载荷中携带的地址和端口信息,结合严格安全策略控制特性可支持动态通道的检测功能,以及对应用层的状态检测功能:多通道协议的报文交互过程中协商动态通道的地址和端口,在安全访问策略的控制下,可以通过开启pinhole来完成数据通道的连接。

3、ALG实现原理介绍

防火墙通过Policy使网络安全和可控,而防火墙的Policy和NAT规则只能对传输层的控制做静态的描述,却不能对应用层做控制描述。传输层只是应用层信息传输的网络通道(TCP/IP连接),许多应用使用知名端口做控制连接,而数据传输使用动态、临时协商建立起来的动态连接,不是预先确定的,防火墙无法准确描述这些动态连接,能否穿越防火墙就不确定。

(1)ALG通过以下手段解决应用层动态连接穿越防火墙问题

1)提供动态连接访问外网所需的外网地址和端口以及地址端口转换关系;

2) pinhole对动态建立的session进行处理,确保连接建立成功。

(2)ALG模块定义了一个与应用层动态连接相对应的pinhole对象来为动态连接在防火墙中建session,用来实现防火墙穿越。pinhole描述了动态连接的session信息、外网地址和端口资源,但pinhole不是session。

(3)防火墙工作处理流程

防火墙需要应用网关去分析应用层的内容,如果应用层要协商和发起数据连接,那么应用层将要建立的连接用expect flow描述,将expect flow用作参数调用相应的ALG APIs生成和安装pinhole。pinhole生成后,有数据连接所需的外网地址和端口,必要时应用代理修改应用的内容,转换协商的地址和端口。

数据连接发起报文到达防火墙的时候,会先匹配pinhole,然后从pinhole建session。如果pinhole没有匹配上,则匹配Policy建session。

4、FTP协议及FTP ALG应用网关详解

4.1FTP协议交互过程

(1)主动模式(Port)

在主动模式下,FTP客户端从任何非特殊端口(例如源端口N=1024)连接到FTP服务器-port 21的命令端口。然后客户端在N+1(N+1=1025)端口监控,通过N+1(N+1=1025)端口向FTP服务器发送命令(PORT=1025)。服务器使用源端口20连接到FTP客户端在本地指定的数据端口(1025)。交互过程如下:

控制连接:客户端>1024端口—>服务器21端口

数据连接:客户端>1025端口<—服务器20端口

图1

(2)被动模式(PASV)

在被动模式下,控制通道和数据通道都由客户端发起。当打开一个FTP连接时,FTP客户端打开两个任意的非特权本地端口(N=1024和N+1=1025)。第一个端口连接到服务器的端口21,但与主动模式下的文件传输协议不同,客户端不会提交port命令并允许服务器来连接其数据端口,而是提交PASV命令。因此,服务器将开放一个任意的非特定端口(P=1034),并向客户端发送端口PASV命令。然后客户端启动从本地端口N +1到服务器端口P的连接,以传输数据。交互过程如下:

控制连接:客户端>1024端口—>服务器21端口

数据连接:客户端>1025端口—>服务器1034端口

图2

4.2 防火墙ALG FTP详解

(1)FTP主动模式

FTP 客户端主动模式下穿越防火墙的过程可以分为4步,详细过程如下:

图3

Ø控制通道session新建

防火墙收到从客户端到服务器的首包会新建session。因为此时系统中没有pinhole,所以会跳过pinhole查找过程。然后查找Policy,在防火墙配置了Policy允许客户端访问FTP服务,所以能匹配到Policy,新建控制session。

Ø控制连接报文解析

FTP主动模式下载文件时,会先发送PORT命令,其格式为:PORT h1,h2,h3,h4,p1,p2\r\n。防火墙解析到PORT命令时,新建pinhole。如果当前session有SNAT,修改PORT命令中的内容为SNAT后的IP和端口。将报文内容PORT 192,168,1,2,67,131\r\n修改为PORT 192,168,2,1,4,2\r\n,新建图中pinhole。

Ø数据session新建

FTP主动模式的数据连接由服务器主动发起。防火墙收到数据连接首包时,同样进入新建session流程。此时系统中有pinhole,会先查找pinhole。匹配到pinhole,新建数据session。根据FTP协议的特点,每次数据传输都会重新发送PORT命令,每次数据传输使用的端口号也不同,所以FTP协议的pinhole在查找到之后就会删除。

Ø数据连接报文处理

FTP数据连接报文ALG不需要处理。数据传输过程中,数据session的计时器会不断刷新。直到数据传输结束,四次挥手断开连接,数据session拆除。

(2)FTP被动模式

FTP 客户端被动模式下穿越防火墙的过程可以分为4步,详细过程如下:

图4

Ø控制session新建

防火墙收到从客户端到服务器的首包,新建session。因为此时系统中没有pinhole,所以会跳过pinhole查找过程,继而查找Policy。在防火墙配置了Policy允许客户端访问FTP服务,所以能匹配到Policy,新建控制session。

Ø控制连接报文解析

FTP客户端使用被动模式下载文件时,首先发送PASV命令,服务器收到PASV命令报文后,选用临时端口作为数据连接端口,并向客户端返回227响应码,报文格式为:227 Entering Passive Mode. h1,h2,h3,h4,p1,p2\r\n。防火墙解析到227响应报文后,如果当前session有DNAT,修改报文中的IP和端口,并新建pinhole。

Ø数据session新建

FTP被动模式的数据连接由客户端发起。防火墙收到数据连接首包时,同样进入新建session流程。此时系统中有pinhole,会先查找pinhole。匹配到pinhole,新建数据session。

Ø数据连接报文处理

FTP数据连接报文,ALG无需处理。数据传输过程中,数据session的计时器会不断刷新。直到数据传输结束,四次挥手断开连接,数据session拆除。

5、SIP协议及SIP ALG应用网关详解

5.1SIP协议原理

SIP是一种应用层控制协议,用于建立、修改和终止双方或多方多媒体会话,应用在VoIP、多媒体分发、多媒体会议领域。SIP协议栈如图所示。SIP协议通信包括控制信令(signaling)和媒体数据两个信道:控制信令信道用于客户端和服务器之间的请求和响应消息,传输层基于TCP或者UDP,服务器使用端口5060;媒体数据信道用于传输音视频数据,传输层基于UDP,使用动态端口。

表1

SIP协议在网络中的实体包括两种:SIP用户代理(User Agent)和SIP服务器。SIP用户代理是终端用户设备,如 SIP 电话机、SIP客户端软件等,用于发送SIP请求或者接收到请求后进行响应。SIP服务器主要进行请求转发、接收注册请求和提供定位服务。SIP VoIP典型部署如图所示:企业内网部署有SIP服务器和SIP终端Phone B,Phone B和远程SIP终端Phone A之间可以通过SIP协议进行网络电话。

图5

SIP消息分为请求消息和响应消息两种类型。下面是一个呼叫请求消息的实例:

图6

可以看到,SIP消息包括三部分:起始行、消息头和可选的消息体。起始行包括消息类型、请求URI和SIP版本号。常见的消息类型包括INVITE、ACK、OPTIONS、BYE、 CANCEL、REGISTER,其作用见下表所示:

表2

请求URI表示请求的用户或者服务的地址信息。SIP版本号,即所使用的SIP协议的版本号。

SIP消息头部包含多个字段,其含义如下表所示:

表3

一个响应消息的实例如下所示:

图7

响应消息与请求消息的不同之处是初始行是状态码。状态码由3位整数组成,第一位用于表示响应类型,后两位用于对响应进一步解释。各响应码类型的含义如下表所示:

表4

5.2防火墙ALGSIP详解

上述对SIP协议的工作过程进行了简单的介绍,下面以典型部署为例介绍SIP协议如何穿越防火墙。假设SIP服务器所在网段为192.168.2.0/24,PhoneA所在的网段为192.168.100.0/24。SIP服务器的IP地址为192.168.2.4,在防火墙配置了DNAT,对外的地址是192.168.100.4。Phone B的IP地址为192.168.2.3,对外的IP地址为192.168.100.3。Phone A的IP地址为192.168.100.2。

条件:防火墙配置策略允许SIP服务流量通过

下面分别介绍SIP注册以及外网SIP终端Phone A呼叫内网终端Phone B的流程和防火墙SIP ALG的实现。

(1)SIP注册流程

SIP协议提供地址发现的能力。当一个用户代理想要建立会话时,将会话请求发送到代理服务器。服务器查询注册信息,得到另一方的地址信息,并将请求转发到对应的地址。

注册请求消息用于用户代理将当前地址信息发送到服务器,Phone A注册报文格式如下所示,其中Contact字段携带了Phone A当前的地址。

图8

注册报文的处理流程如下图所示。防火墙在收到这个注册报文时,也会生成一个绑定关系,即记录Phone A的地址信息192.168.100.2:5060生成一个pinhole,用于其他实体向Phone A发送的会话请求消息能通过防火墙。根据NAT配置修改头部的各个字段,例如在本例中,SIP server在防火墙配置有DNAT,将初始行的请求URI地址由192.168.100.4修改为192.168.2.4。

图9

(2)SIP呼叫流程

Phone A呼叫Phone B的报文交互流程如下图所示:

图10

用户在Phone A拨号222呼叫Phone B。此时Phone A发送INVITE请求消息到SIP server。防火墙收到INVITTE报文,解析其中的c和m字段,本例中c= IN IP4 192.168.100.2,m=audio 5000 RTP。新建pinhole,目的地址为192.168.100.2:5000。每一个RTP通道有一个对应的RTCP通道,通信端口是RTP端口号加1,所以会再为RTCP通道建一个pinhole,目的地址为192.168.100.2:5001。然后根据当前session的NAT配置修改头部字段中的IP地址,本例中SIP server在防火墙配置有DNAT,将初始行的请求URI地址由192.168.100.4修改为192.168.2.4。

SIP server接收到INVITE请求消息,会先返回一个100 tring响应消息,表示消息正在处理。之后根据电话号码222查询注册信息数据库,找到Phone B当前地址,将INVITE请求消息转发到Phone B。

Phone B接收到INVITE请求消息,开始响铃,并返回180 ring响应消息到SIP服务器。SIP服务器转发180 ring响应消息到Phone A,提示用户正在响铃。当Phone B电话被接起,发送200 ok响应消息。200 ok响应消息同样由SIP服务器转发到Phone A。防火墙解析到200 oK响应消息时,同样解析其中的消息体,本例中200IOK响应消息的c= IN IP4 192.168.2.3,m= audio 6000 RTP/AVP,因为PhoneB对外地址是192.168.100.3,修改c字段为c= IN IP4 192.168.100.3,并为RTP信道新建pinhole:0.0.0.0:0 -> 192.168.100.3:6000。同理,将RTP端口号加1作为RTCP通道端口号,并新建pinhole:0.0.0.0:0 -> 192.168.100.3:6001。将头部字段Record-Route从192.168.2.4修改为192.168.100.4。

Phone A接收到200 OK响应消息后,向Phone B发送ACK确认消息。因为SIP服务器向INVITE请求中插入了Record-Route字段,表示之后的请求消息也经过SIP服务器,所以Phone A发送的ACK消息经SIP服务器转发到Phone B。ACK请求消息如下所示:

图11

之后Phone A和Phone B之间媒体通信,防火墙会创建RTP和RTCP session。

通话结束,Phone A挂断电话,发送BYE请求消息,同样由SIP服务器转发到Phone B。Phone B收到BYE请求消息,发送200 OK响应。至此通话结束。

(3)增删NAT及Policy的影响

NAT配置改动,会触发SIP 信令session重新匹配NAT规则。如果不能匹配新的NAT规则,session会被拆除。对数据session无影响。

Policy配置改动,会触发SIP 信令session重新匹配Policy。如果不能匹配新的Policy,session会被拆除。对数据session无影响。

6、ALG支持的其他应用

除了FTP和SIP以外,一些VoIP 应用在进行NAT 穿越时,由于IP 地址和端口号的改变可能导致VoIP 无法正常工作,ALG 技术在此时将保证NAT 地址转换后,VoIP 应用能够正常通信。因此,应用层网关提供以下功能:

♦在严格的安全策略规则下,利用应用层网关 ALG 技术,保证多通道应用程序正常的通信,如FTP、TFTP、PPTP、RTSP、RSH、MSRPC、SUNRPC 和SQLNET。

♦保证 VoIP 应用,如SIP 和H.323 等,在NAT 模式下的正常工作,并能够根据安全策略要求,进行监控和过滤。

7、总结

当前我行科技发展迅猛,各种新技术、新架构不断出现,防火墙的安全隔离作为数据中心内部安全管控的必要手段,一方面要保障数据中心安全稳定运行,另一方面也要以快捷、稳定的方式支持应用系统发展,进而赋能我行业务高速发展。

关键词:

责任编辑:ERM523

相关阅读

精彩推送

当前聚焦:雷雨大风+冰雹+龙卷!黑龙江省发布龙卷预警 世界新资讯:华为联合IEEE Kazakhstan Subsection共同发布HPC无损以太和AI Fabric网络技术白皮书
华为李捷:创新引领,持续夯实5G高质量网络 环球讯息:赛道大师:Manthey 版Porsche 911 GT3
网络原来如此之防火墙应用网关技术 美股异动 | 游戏驿站涨4% 将于盘后发布财报
世界滚动:美股异动 | Inditex涨超6% Q1净利增长54%超预期 预计全年资本支出16亿欧元 世界快资讯丨彻底爆了!罕见290亿持续抄底!
协会:5月销售各类挖掘机16809台同比下降18.5% 讯息:新型火车票来了:7天内任意时间可乘车 过期退款
每日热闻!什么是千兆以太网 (GBE)? 美三大指数小幅高开,特斯拉涨超3% 全球视讯
长安汽车称“直扣供应商10%货款”不实已报案,“商务函”为何引风波? 地产启示录丨嘉凯城:转型遇阻,24年南柯一梦
最新!它们纷纷调高中国经济增长预测-天天关注 三大上市猪企5月生猪销售均价普遍下降,收入同比均增长_焦点热门
新巨丰拟收购纷美包装股权,深交所下发重组问询函 铁角飞驰怎么去(铁角飞地怎么去 魔兽世界7 0至高岭铁角飞地在哪里)
11年吉林男子欠银行199元,8年后猛增到1.5万,行长:正常涨利息 焦点热议:我的世界神奇宝贝喷火龙怎么mega进化(我的世界神奇宝贝喷火龙配招)
初中女厕精品视频网站(0女厕大小便)|每日热闻 氢气对人体的十大好处 创辉(氢气对人体的作用好处与坏处)
微信电脑版视频打不开怎么回事(微信电脑版视频打不开咋办) 人才流失对港经济影响严重!很难看到的港澳荣景,这个夏天有点冷 每日快讯
打造开放化全场景消费生态 民生银行6.18让消费暖起来 每日聚焦 西力科技:中标1.26亿元国家电网采购项目 快报
苏州相城一企业获批国家博士后科研工作站 新资讯 【天天速看料】比亚迪押中今年高考作文题:网友围观 戏剧性巧合让人感叹
欧盟将对实施“经济勒索”的国家加征关税是针对中国?外交部回应_当前短讯 【收评】燃油日内下跌0.69% 机构称燃油系期货走势跟随原油波动 焦点热门
纽威股份:股东纽威集团拟减持不超2%股份-关注 MR 头显很酷,但苹果缺席了更重要的事儿
宕机超12小时,损失过亿,唯品会基础平台负责人被免职!|焦点简讯 “一行一局一会”明日齐聚上海陆家嘴 同台发声 世界速看料
夏季圈养牲畜的日常管理|全球快资讯 世界要闻:罗博特科06月07日大涨,股价创历史新高
凯美特气:子公司例行停车检修完成并复产|全球快报 【速看料】多图直击!安康高考首日!
天天观点:高考首日逢雨天,奉贤公安全力保障考点周边交通出行 聚焦绿色、智能 中汽中心汽车测评新规程蓄势待发 全球观热点
天天微速讯:亚联发展:目前公司未参与《深圳市加快推动人工智能高质量发展高水平应用行动方案(2023—2024年)》的相关建设 苹果MR开发套件已开放申请 中国开发者期待推动3D内容生态|天天短讯
商务预报:5月29日-6月4日百家农副产品批发市场食用农产品交易量变化情况-天天微头条 全球球精选!“村超”踢出的这记“世界波”:让欧文都为它“打Call”
天天时讯:阿里健康在上海成立数据技术合伙企业 世界视点!商务预报:5月29日至6月4日禽产品零售价格小幅下降
组图|直击邵阳高考首日——时光不负追梦人 天天快讯:鸿博股份06月07日大涨,股价创历史新高
雨湖区法院 走访调研助力高质量发展_全球消息 万家乐热水器怎么样?A3W独创极火微焰技术 打造恒温热水体验 环球看热讯
恩捷股份:公司现有隔膜产品适用于储能电池_天天信息 全球即时看!天源环保:污泥碳化和生物质秸秆碳化研发项目采用了热储能技术
通光线缆:目前暂无产品应用在大模型计算的配套中 世界报道:男子醉驾去医院照顾住院老婆,结果途中发生交通事故
规模最大基金增聘基金经理 4位基金经理共同管理余额宝 盘江股份(600395)6月7日主力资金净买入928.35万元-当前播报
长春高新回应股价跌停:公司经营一切正常 集采对业绩影响“中性偏好”_当前热文 【天天新视野】浙能电力:水系锌离子目前尚未完成结题验收,但性能测试达到项目计划书指标要求
世界讯息:宏达股份(600331)6月7日主力资金净买入6493.61万元 中科星图在安徽5亿成立资本管理公司
扩募环节的打通 REITs一级半市场料将迎来更多的参与机会 盛和资源(600392)6月7日主力资金净卖出1458.87万元-今日看点
【全球新要闻】泰祥股份:江苏宏马零部件最终配套上汽大众、吉利、上汽等新能源汽车品牌 寒锐钴业:2022年度权益分派10派1.5元-全球热闻
焦点快报!航发科技(600391)6月7日主力资金净卖出247.96万元 河南焦作市开展“三夏”期间成品油价格专项检查 全球热点
(经济)江苏出台14条措施推动外贸稳规模优结构 即时焦点:ST海越(600387)6月7日主力资金净买入99.91万元
国旅联合(600358)6月7日主力资金净买入572.62万元 全球微头条丨江山股份(600389)6月7日主力资金净买入236.71万元
世界热消息:汇源通信董秘回复:感谢您对公司的关心与支持!公司目前没有开通微博、微信、抖音等新媒体沟通平台 tfodad 第31章:
环球今日报丨蒙是哪里的牌照(蒙代表哪里的车牌号码?) 窗户178ⅹ146是多少平方(一个窗户有多少平方怎么算)
收评:两市震荡分化沪指小涨 通信服务板块走强-全球快看 新的世界29:过去的记忆(下) 世界热门
焦点观察:东星医疗:吻合器产品目标海外市场主要集中在南美、中东以及欧洲三大区域 环球热议:旋风少女第三季电视剧全集在线观看(旋风少女第三季全集电视剧免费)
每日播报!庄易闲——为什么赌博那么难戒 第四章 失踪
滨江集团:今年截至目前交付的项目已超过10个 瑞典H2 Green Steel官宣与梅赛德斯-奔驰达成欧洲和北美地区供货协议
世界即时:天源环保:公司生产制造的纳滤、反渗透集成装备可用于盐湖提锂过程中的工艺单元 公司尚未涉及该类业务 世界播报:中再资环:全资子(孙)公司、控股子公司收到各类政府补助款项约855万元
全球速看:注意!菲菱科思:特定股东张海燕计划减持不超过100万股 博敏电子:截至本公告披露日 公司及其控股子公司对外担保总额为约26.88亿元 全球快播报
万绮雯的剧(万绮雯三级是哪部)-环球新动态 全球观天下!革斤念什么姓氏(革斤念什么)
鼎信通讯发布重大经营合同中标相关公告 23国君Y1今日发布发行公告
关于净水设备都有哪些?净水设备对日常生活的好处盘点|世界消息 实时:瞄准800亿电梯后市场!“万御电梯”亮相
第三章 危机意识 让AI来写今年的语文作文(星火大模型版) 全球要闻
恶性骨肉瘤一般能活多久(恶性骨肉瘤)|全球快资讯 每日速读!天天亮点!突发,闪崩跌停
建科机械:智能化钢筋加工配套软件和智慧工厂管理软件已在多家大型重点客户和项目使用 道通科技筑牢欧洲市场全解决方案供应商地位-当前快看
2023年3月厦门海关进出口总额及进出口差额统计分析|环球速看 32辆电动车实测:特斯拉Model S跑最远 小鹏G9反向虚标最多_天天热资讯