目录
基本概念
多通道协议是指在通信过程中自动协商一些随机端口,占用两个或者两个以上端口进行通信。单纯的包过滤无法进行数据流定义
FTP协议的连接类型与运行模式
FTP使用固定端口21控制端口、固定端口20数据端口、随机数据端口进行通信
FTP连接类型
控制连接:21端口,用于控制命令以及命令执行信息(在FTP会话期间会一直保持打开)
数据连接:20端口或随机端口,用于传输数据(在数据传输完成后就结终止)
FTP运行模式
主动和被动都是针对于服务端而言的
主动模式(PORT):服务端使用21端口与客户端建立控制连接,使用20端口建立数据连接
被动模式(PASV):服务端使用21端口与客户端建立控制连接,使用大于1024的随机端口(客户端给的)建立数据连接
ASPF与ALG
ASPF简介
ASPF全称为针对应用层的包过滤(基于状态的报文过滤),FW通过检测协商报文应用层携带的地址和端口信息,自动生成相应的Server-map表,用于放行后续建立数据通道的报文,相当于自动创建的一条精细的“安全策略”,解决了多通道协议使用随机端口无法过滤的问题。
ALG简介
ALG全称为应用层网关,用于在NAT场景下检测协商报文应用层携带的地址和端口信息,自动生成Server-map表,并自动转换应用层报文载荷中的IP地址和端口信息。
普通的NAT只可以转换IP与端口信息,ALG不仅可以根据应用层信息开放相应的访问规则,同时可以对应用层的数据(TCP/UDP载荷中带有的地址或者端口信息)进行NAT转换。
ASPF和ALG关系
ASPF和ALG功能使用的是同一个配置,只是使用的场景不同,一个是非NAT场景,一个是NAT场景。
知名协议的ASPF/ALG支持列表
以FTP协议做对比观察ASPF和ALG的区别
ASPF
ALG
Server-Map表
简介
Server-map表项可以由NAT、ASPF等建立,主要用于存放一种映射关系,可以是多通道协议协商出来的数据连接关系,保证多通道协议应用的正常,也可以是NAT中的地址映射关系,使得外部网路能透过设备主动访问内部网络
生成Server-Map表的几种情况
动态Server-map表项会老化,静态不会老化
动态Server-map表项
配置ASPF/ALG后,转发FTP、RSTP等多通道协议时生成动态Server-map表项
配置ASPF/ALG后,转发QQ/MSN、TFTP等SSTUN类型协议时生成动态的三元组Server-map表项
配置NAT No-pat时生成动态的Server-map表项
静态Server-map表项
配置NAT Server时生成静态的Server-map表项
配置服务器负载均衡时生成静态的Server-map表项
完成虚拟服务器和实服务器的映射
配置NAT64时生成静态的Server-map表项
Server-map表和安全策略的关系
ASPF/NAT ALG生成的Server-map表项优先级高于安全策略,报文匹配了此类型的Server-map表之后无需再进行安全策略检查
对于NAT Full-cone、NAT64、PCP生成的Server-map表,默认匹配了Server-map表之后还需要进行安全策略检查,如果配置了端点无关过滤功能(firewall endpoint-independent filter enable),报文匹配Server-map表后,根据Server-map表进行地址转换,不再进行安全策略检查
对于其它类型生成的Server-map表,报文匹配了Server-map表后均需要进行安全策略检查