USG配置nat server

更新时间:2024-06-08 08:22:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

配置server-map表

Server-map表是一个通过少量关键元素来记录部分特殊服务连接状态的特殊表项。

ASPF(Application Specific Packet Filter)是指系统为了转发一些多通道协议报文,通过解析报文数据载荷,识别多通道协议自动协商出来的端口号,并自动生成相应的Server-map表项的功能。

目的

在严格包过滤的情况下,设备通常只允许内网用户单方向主动访问外网。但是在使用NAT或ASPF功能的情况下,可能存在外网用户通过随机端口主动访问内网服务器的情况。由于会话表的五元组限制过于严格,会导致这些特殊服务不能正常运行。引入Server-map表是为了解决这一问题。 ASPF是为了解决多通道协议这种特殊服务的转发而引入的。这些协议会在通信过程中自动协商一些随机端口,在严格包过滤的情况下,这些随机端口发出的报文同样不能得到正常转发。通过ASPF功能可以对这些协议的应用层数据进行解析,识别这些协议协商出来的端口号,从而自动为其开放相应的访问规则,解决这些协议不能正常转发的问题。

原理描述

Server-map表的引入

通常情况下,如果在设备上配置严格包过滤,那么设备将只允许内网用户单方向主动访问外网。但在实际应用中,例如使用FTP协议的port方式传输文件时,既需要客户端主动向服务器端发起控制连接,又需要服务器端主动向客户端发起服务器数据连接,如果设备上配置的包过滤为允许单方向上报文主动通过,则FTP文件传输不能成功。

为了解决这一类问题,USG设备引入了Server-map表,Server-map用于存放一种映射关系,这种映射关系可以是控制数据协商出来的数据连接关系,也可以是配置NAT中的地址映射关系,使得外部网络能透过设备主动访问内部网络。

生成Server-map表之后,如果一个数据连接匹配了Server-map表项,那么就能够被设备正常转发,而不需要去查会话表,这样就保证了某些特殊应用的正常转发。

USG设备上生成Server-map表项目前总共有四种情况: ? ? ? ?

配置ASPF后,转发FTP、RTSP等多通道协议时生成的Server-map表项。

配置ASPF后,转发QQ/MSN、TFTP等STUN类型协议时生成的三元组Server-map表项。 配置NAT Server或SLB时生成的静态Server-map。 配置NAT No-PAT时生成的动态Server-map。

下面分别对这四种Server-map表进行介绍。 端口映射

转发多通道协议时生成的Server-map表项

转发FTP、RTSP等多通道协议的数据会生成Server-map表项。

多通道协议会由客户端和服务器之间的控制通道动态协商出数据通道,即通信双方的端口号是不固定的。而在配置ASPF功能后,设备检测到控制通道的协商,根据关键报文载荷中的地址信息动态创建server-map表项,用于数据通道发起连接时进行查找。这个server-map表项包含了多通道协议报文中协商的数据通道的信息。

例如在FTP的port模式中,在FTP客户端随机选择一个数据通道端口号(本例中的2165),并通过控制通道将该端口号发送给FTP服务器后,FTP服务器会直接向该端口发起连接。如果此时配置了ASPF功能,会生成如下Server-map表项: ASPF: 40.0.0.5 -> 40.0.0.10:2165 , Zone: ---

Protocol: tcp(Appro: ftp-data), Left-Time: 00:00:05, Addr-Pool: --- Vpn: public -> public

其中,tcp(Appro: ftp-data)表示该条Server-map表项用于FTP协议的数据通道的转发。40.0.0.5为源IP地址,即发起连接的FTP服务器的IP地址,40.0.0.10为目的IP地址,即FTP客户端的IP地址。

在采用严格包过滤情况下,由于事先没有配置对2165端口允许的包过滤策略,所以如果没有Server-map表项,会导致该连接被阻断。ASPF自动生成Server-map表项后,由于只需要匹配四元组信息,所以就可以实现正常的数据传输了。

转发STUN类型协议时生成的三元组Server-map表项

转发QQ/MSN等STUN(Simple Traversal of UDP over NATs,NAT的UDP简单穿越)类型会生成的三元组Server-map表项。

QQ/MSN等协议中,当用户登录之后,用户的IP地址和端口就固定下来了,可是会向该用户发起对话的另一方的IP地址和端口号是不固定的。通过配置STUN类型的ASPF,当QQ或者MSN等用户连接服务器时,设备会记录下用户的IP地址和端口信息,并动态生成STUN类型的Server-map。这个server-map表项中仅包含三元组信息,即通信一方的IP地址,端口号和协议号。这样其他用户可以直接通过该IP和端口与该用户进行通信。只要有相关的流量存在,STUN动态的server-map就将一直存在。在所有相关流量结束后,server-map表开始老化。 例如:

STUN : ANY -> 40.0.0.10:4967, Zone: ---

Protocol: udp(Appro: qq-derived), Left-Time: 00:00:05,Addr-Pool: --- Vpn: public -> public

在本例中,由于源地址为ANY,即不限制,这样任意用户都可以主动向40.0.0.10的4967端口发起连接,以实现未知用户向内网的QQ/MSN用户发起对话的情况。

配置NAT Server或SLB时生成的静态Server-map

在使用NAT Server功能时,外网的用户向内部服务器主动发起访问请求,该用户的IP地址和端口号都是不确定的,唯一可以确定的是内部服务器的IP地址和所提供服务的端口号。

所以在配置NAT Server成功后,设备会自动生成Server-map表项,用于存放Globle地址与Inside地址的映射关系。设备根据这种映射关系对报文的地址进行转换,并转发。

每个生效的NAT Server都会生成正反方向两个静态的Server-map。用户删除NAT Server时,Server-map也同步被删除。

NAT Server生成的Server-map表项实例如下所示。

Nat Server, ANY -> 202.169.10.2:21[10.1.1.2:21], Zone:--- Protocol: tcp(Appro: ftp), Left-Time:---, AddrPool: --- Vpn: public -> public

Nat Server Reverse, 10.1.1.2[202.169.10.2] -> ANY, Zone:--- Protocol: ANY(Appro: ---), Left-Time:---, AddrPool: --- Vpn: public -> public ? ? ? ? ?

Nat Server表示正向(即外网客户端主动访问内网服务器方向)的Server-map表项。 Nat Server Reverse表示反向(即内网服务器主动访问外网客户端方向)Server-map表项。 Protocol表示配置Nat Server时指定的协议类型。

202.169.10.2表示Nat Server的Globle地址,即对外公布的公网IP地址。 10.1.1.2表示Nat Server的Inside地址,即转换前的私网IP地址。

在SLB功能中,由于需要将内网的多个服务器以同一个IP地址对外发布,所以也会建立与NAT Server类似的Server-map表项,只不过根据内网服务器的个数N,需要建立1个正向表项和N个反向表项。

配置NAT No-PAT时生成的动态Server-map

在使用NAT功能时,如果配置了No-PAT参数,那么设备会对内网IP和公网IP进行一对一的映射,而不进行端口转换。此时,内网IP的所有端口号都可以被映射为公网地址的对应端口,外网用户也就可以向内网用户的任意端口主动发起连接。

所以配置NAT No-PAT后,设备会为有实际流量的数据流建立Server-map表,用于存放私网IP地址与公网IP地址的映射关系。设备根据这种映射关系对报文的地址进行转换,然后进行转发。 NAT No-PAT生成的Server-map表项实例如下所示。 No-Pat: 10.1.1.2[202.169.10.2] -> ANY, Zone: untrust

Protocol: ANY(Appro: ---), Left-Time: 00:00:03, Addr-Pool: 61 Vpn: public -> public

No-Pat Reverse, ANY -> 202.169.10.2[10.1.1.2], Zone: untrust Protocol: ANY(Appro: ---), Left-Time: 00:00:03, Addr-Pool: --- Vpn: public -> public ?

No-Pat表示正向Server-map,即指从私网IP发起的连接。

? No-Pat Reverse表示反向Server-map,即指外网设备通过分配的公网IP来访问私网IP对应设备所发起的连接。

? ?

10.1.1.2表示映射前的私网IP地址。 202.169.10.2表示映射后的公网IP地址。

Server-map表在转发流程中的位置

Server-map表在转发流程中的位置请参考图1。

当一个没有会话表项的报文在通过系统的安全性检查之后,系统准备为其查找路由之前,系统会查询Server-map表。此时查找Server-map表主要是为了两个目的: ?

对该报文所属连接的状态再次检查和确认

由于该报文没有会话表项,所以它有可能是属于需要建立Server-map的特殊业务的报文。通过查询Server-map可以确认这个报文是否属于一个已经存在的连接。如果这个报文既没有会话表项,又不属于一个已经存在的特殊业务,那么在严格包过滤情况下,这个报文就会被丢弃。 ?

根据Server-map表对报文中一些元素进行转换

Server-map表项除了会记录报文的关键元素,还会记录系统对该报文的一些处理措施。对于一个和Serve-map表项匹配的报文,系统在查询Server-map表后,会根据表项中的记录对报文进行转换。例如在NAT Server应用中,系统会将一个访问内部服务器的报文的目的地址从公网地址转换为私网地址。

由于Server-map中并不会记录报文的下一跳等信息,所以Server-map通常只是用检查第一个报文。在这个报文通过检查之后,系统会生成一条会话表用于后续报文的转发。即Server-map只是用于新通道的建立,通道建立后的报文还是根据会话表来转发。

以FTP的Port模式为例。主机A的IP地址是192.168.1.1,使用20000端口向服务器B发起FTP连接。服务器B的IP地址是1.1.1.1,提供服务的端口号是21。系统已经通过配置包过滤允许了192.168.1.1向1.1.1.1的21号端口发起连接。

1. 在发起连接的报文通过后,系统中创建了一条会话表项,通信双方的控制通道也就建立起

来了。

类型 源IP地址 源端口 目会话表 192.168.1.1 20000 1.1.12. 经过控制通道的协商,A随机选择一个数据通道端口号2165,并通过控制通道将该端口号

发送给FTP服务器。系统在获取到这个报文后为其建立Server-map表项。

类型 源IP地址 目的IP地址 类型 源IP地址 目的IP地址 Server-map表 1.1.1.1 192.168.1.1 3. B在收到A的协商报文之后,使用20端口主动向192.168.1.1的2165端口发起连接。这

个连接在会话表中没有对应的表项,如果域间缺省包过滤策略为禁止,则可能会被丢弃。所以此时,系统就会查询Server-map,以确定该报文是否属于特殊业务。

由于这个报文的源IP地址、目的IP地址、目的端口和协议都与Server-map表项符合,系统允许这个报文通过。而且此时这个新的数据通道的五元组都已经确定,所以系统同时创建一条会话表,通信双方的数据通道也就建立起来了。

类型 源IP地址 源端口 目会话表 1.1.1.1 20 192.14. 后续数据通道上传输的数据报文都可以匹配这条会话表项并得到转发,不再需要重新匹配

Server-map表项。Server-map表项由于一直没有报文匹配,经过老化时间后就会被删除。这种机制保证了Server-map表项这种较为宽松的检测条件能够及时被删除,保证了网络的安全性。

ASPF的实现以及ASPF与Server-map表的关系

在上述举例中,A随机选择一个数据通道端口号2165,并通过控制通道将该端口号发送给FTP服务器。“2165”这个端口信息是包含在协商报文的应用层载荷中的。系统在收到这个报文之后,能够将其解析出来,正是因为开启了ASPF功能。

ASPF的主要作用就是对报文的应用层数据进行解析,识别出包含在IP报文数据载荷中的各种协商信息,以供设备自动为其创建相应的访问规则。

由于各种协议的报文结构和协商方式各不相同,所以USG目前只能支持特定种类的协议的识别。 ASPF识别完成之后,系统通常会生成一条Server-map表项来记录识别结果。之所以不直接生成会话表项,是因为识别完成时,通常通信双方都只是在协商阶段,新通道上还没有实际的数据传输,或者新通道的五元组信息还没有完全确定,所以还不能建立会话表。

通过ASPF识别,建立Server-map表项后,当系统收到新通道上的第一个报文,就会生成相应的会话表项。后续该通道上的报文就都可以根据会话表进行转发了。

端口映射

端口映射是指将发往非知名端口的报文识别为知名协议的功能。

目的

应用层协议一般使用知名端口号进行通信。当用户使用非知名端口提供知名服务时的业务时,可以使用端口映射功能对这些业务进行识别。

前提条件

由于端口映射功能通过ACL来匹配流量,所以在配置端口映射之前,需要首先创建用来匹配流量的ACL,且端口映射功能只能使用基本ACL进行匹配。

由于端口映射的主要目的是将发往内网服务器非知名端口的报文识别为知名服务,ACL主要定义的就是内网服务器的IP地址和它所提供的端口。所以在定义的ACL的规则时,应将内网服务器的IP地址作为source-address。在设备实现时,会检测发往source-address的报文。

背景信息

应用层协议一般使用知名端口号进行通信,例如FTP使用20和21端口,Web服务通常使用80端口。但是在某些情况下,内网服务器需要通过其他自定义端口对外提供知名服务时,可以通过端口映射功能来完成相应的转换。

端口映射的原理是,创建一个协议与映射端口的关联表,当收到发往映射端口的报文时,会将其识别为对应的知名服务的报文,并进行相应的应用层识别等功能。

例如,内网服务器A希望使用21000端口对外提供FTP服务。如果不使用端口映射功能,设备将认为发往A的21000端口的报文为普通报文。这时如果组网场景需要使用ASPF功能,即使用户在域间配置了detect ftp命令,还是不能正常提供FTP服务,因为设备并不认为发往21000端口的报文是FTP报文,也就不会进行相应的检测和分析。

所以此时需要通过端口映射功能将21000端口映射为FTP服务。这个映射并不是指设备会将发往21000端口的报文转发给21端口,而是指设备会将发往21000端口的报文认为是FTP协议报文。

操作步骤

1. 执行命令system-view,进入系统视图。

2. 执行命令port-mapping protocol-name port port-number acl acl-number,配置端口映射。

执行该命令后,就会将ACL匹配的流量中,发往port-number端口的报文认为是

protocol-name协议。

配置端口映射时: ? ?

一个协议可以配置多个映射端口。

一个端口可以映射为多个协议,但是必须通过基本ACL进行区分,对匹配不同的基本ACL的报文使用不同的映射关系。在匹配时,会按照ACL的配置顺序进行匹配,先创建的ACL先进行匹配。 ?

如果流量命中的规则的动作是permit,则按该ACL对应的协议进行映射。

? 如果流量命中的规则的动作是deny,则跳出该ACL的匹配,进行下一条ACL的匹配。

? 如果整个ACL中所有规则都没有命中,则进行下一条ACL的匹配。

任务示例

本例中,希望通过端口映射功能将发往10.1.1.1的21000端口的报文按FTP报文处理。 system-view [sysname] acl 2005

[sysname-acl-basic-2005] rule permit source 10.1.1.1 0 [sysname-acl-basic-2005] quit

[sysname] port-mapping ftp port 21000 acl 2005

后续处理

如果查看当前系统已经配置的端口映射表,可以执行命令display port-mapping命令。 [sysname] display port-mapping SERVICE PORT ACL TYPE ------------------------------------------------- ftp 21 system defined smtp 25 system defined http 80 system defined rtsp 554 system defined h323 1719 system defined mgcp 2727 system defined mms 1755 system defined sqlnet 1521 system defined pptp 1723 system defined sip 5060 system defined ftp 21000 2005 user defined

在本例中,存在两个ftp协议的端口映射关系,一个是ftp与21端口的映射,一个是ftp与21000端口的映射。通过TYPE字段可以看出,21端口是系统预定义的映射关系,21000端口是用户自定义的映射关系。

一个协议可以同时与多个端口进行映射,用户自定义的映射关系并不会替代系统预定义的映射关系,而是两者同时有效。区别是系统预定义映射对所有流量有效,用户自定义映射只对ACL所匹配的流量有效。

应用层包过滤

由于某些特殊应用会在通信过程中临时协商端口号等信息,所以需要设备通过检测报文的应用层数据,自动获取相关信息并创建相应的会话表项,以保证这些应用的正常通信。这个功能称为ASPF(Application Specific Packet Filter)。 ?

ASPF简介

ASPF是针对应用层的包过滤。ASPF的原理是通过检测通过设备的报文的应用层协议信息,自动维护相应的Servermap表项,使得某些在基本包过滤功能中没有明确定义要放行的报文也能够得到正常转发。 ?

在域间应用ASPF功能

当需要设备转发多通道协议报文时,需要在域间配置相应的ASPF功能。 ?

配置ASPF举例

在多通道协议和NAT的应用中,ASPF是重要的辅助功能。本例将使用路由口,通过配置ASPF功能,实现内网正常对外提供FTP和TFTP服务,同时还可避免内网用户在访问外网Web服务器时下载危险控件。

ASPF简介

ASPF是针对应用层的包过滤。ASPF的原理是通过检测通过设备的报文的应用层协议信息,自动维护相应的Servermap表项,使得某些在基本包过滤功能中没有明确定义要放行的报文也能够得到正常转发。

ASPF功能不但可以对报文的网络层信息进行检测,也可以对报文的应用层信息进行深度检测,是USG安全规则检查的重要组成部分。ASPF的实现基础是server-map表,关于server-map表的详细信息,请参见配置Server-map表。

ASPF介绍

ASPF是针对应用层的包过滤,即基于状态的报文过滤。ASPF能够检测试图通过设备的应用层协议会话信息,通过维护会话的状态和检查会话报文的协议和端口号等信息,使得某些特殊应用的报文能够正常转发。

ASPF可以对以下协议的流量进行监测: ? ? ? ?

DNS(Domain Name System),域名解析系统。 FTP(File Transfer Protocol),文件传输协议。

H323(H.323 Protocol),用于在计算机网络中实现音频和视频通信。

ICQ,美国在线公司AOL出品的一款软件ICQ使用的通信协议,支持在Internet上聊天、发送消息和文件等。 ?

ILS(Internet Locator Server),Internet定位服务。

? NETBIOS(Network Basic Input Output System),网络基本输入输出系统。NetBIOS定义了一种软件接口以及在应用程序和连接介质之间提供通信接口的标准方法。

? MGCP(Media Gateway Control Protocol),媒体网关控制协议,是一种应用于分开的多媒体网关单元之间的VOIP协议。

? MMS(Microsoft Media Server Protocol),Micosoft多媒体协议,是用来访问并且流式接收Windows Media服务器中.asf文件的一种协议。MMS协议用于访问Windows Media发布点上的单播内容。在线广播电台应用较多。

? MSN(Mircosoft Service Network Protocol),微软网络服务协议,是微软公司提供的即时通信工具MSN Messenger所使用的通信协议。

? PPTP(Point to Point Tunneling Protocol),点到点隧道协议,用于在因特网上建立IP虚拟专用网(VPN)隧道。

? ?

QQ,指腾讯公司提供的即时通信工具QQ所使用的通信协议。

RTSP(Real-Time Streaming Protocol),实时流传输协议,该协议定义了一对多应用程序如何有效地通过IP网络传送多媒体数据。

? SIP(Session initiation Protocol),SIP是一个基于文本的应用层控制协议,独立于底层传输协议TCP/UDP/SCTP,用于建立、修改和终止IP网上的双方或多方多媒体会话。

? ?

SQLNET(SQL.NET Protocol),一种Oracle数据库语言。 IPv6协议,包含FTP、HTTP、RTSP。

多通道协议的检测

对于多通道协议,例如FTP,ASPF功能可以检查控制通道和数据通道的连接建立过程,通过生成server-map表项,确保FTP协议能够穿越设备,同时不影响设备的安全检查功能。 报文处理流程如图1所示。

图1 多通道协议ASPF检测机制

QQ/MSN协议检测

为了节省有限的IP地址资源,绝大部分网络均部署了NAT设备提供地址转换功能。QQ/MSN用户进行纯文本聊天时,由于在QQ/MSN服务器中保存了聊天用户的地址映射信息,信息交互可以顺利地通过QQ/MSN服务器中转。

另一方面QQ/MSN用户可能传送文件或进行音频/视频聊天,如果QQ/MSN服务器中转此类报文将消耗过大资源,无法保证对纯文本聊天报文的正常中转。QQ/MSN服务器希望互相传送信息的两个用户通过网络设备直接交互大流量的文件/音频/视频信息,但是由于一般NAT设备需要转换聊天用户的地址信息,无法实现该需求。

配置NAT功能时,可以在相关域间启动QQ/MSN协议检测功能,设备在QQ/MSN协议启动时则会创建地址映射关系,从而使两个私网用户直接传送文件和进行音频/视频聊天。

ActiveX Blocking和Java Blocking的检测

设备提供以下两种特殊控件的检测功能: ?

Java Blocking

保护网络不受有害Java Applets的破坏。 ?

ActiveX Blocking

保护网络不受有害ActiveX的破坏。

提供这两种控件的ASPF功能是因为它们通常被包含在报文的净载荷中进行传输,只检查报文头信息无法将其识别出来,但是它们又非常容易被制作为木马与病毒,所以必须通过应用层检测将其识别出来,以保护内网主机。

用户自定义的协议检测

在TCP/IP协议族中,通过端口号来判断报文的协议类型。如果用户有某些特殊应用不在上述支持的应用协议范围内,设备不能解析其应用层数据,但是用户又了解该应用的协议原理,可以通过ACL来对某一类流量进行定义,通过自定义协议的ASPF功能自动为其创建STUN类型的server-map表项,以保证报文的转发。

用户自定义的协议检测是一种特殊的ASPF应用。通过该功能根据用户的源地址、源端口创建三元组的server-map,可以解决使用同一个端口的多通道应用的问题——即有些应用其控制通道和数据通道共用客户端的端口号。最典型的应用是TFTP。

例如,在一个TFTP应用中,内网用户A的IP地址为10.1.1.1,它会通过一个随机选择的端口22787向外网服务器B的端口69发起TFTP连接。之后B会重新随机选择一个端口主动向A的22787端口发起连接。 ?

在不开启ASPF功能并且域间缺省包过滤为禁止的情况下,如果包过滤策略只允许A与B的69端口的连接,那么设备会建立一个会话表项以保证这两个端口之间的报文传输。但是B随机选择的端口与A之间的连接不能预先知道,也就没有相应的允许的策略,所以这个连接最终不能建立成功。 ?

在开启自定义的ASPF功能的情况下,管理员可以预先定义一条ACL规则为rule permit udp source 10.1.1.1 0。通过在自定义的ASPF中引用该条ACL,设备会对报文做如下处理: 1. 当内网用户A首先发起连接后,设备将自动识别用户发起连接的端口,并创建一条

server-map表项允许任意IP和端口访问A的22787端口。

2. 当服务器发送的报文到达时,会命中这条server-map表项,设备将解析服务器的IP

与端口号并为这个连接建立一个会话表项 3. 删除之前建立的server-map表项。

这个机制在最大程度保证安全性的基础上,更加精确地保证了业务的运行。

说明:

定义该条ACL规则的原则是其限定的范围约精确越好,这样可以最大限度地降低安全风险。所以在使自定义的ASPF时需要对协议原理有一定的了解。例如在本例中,如果服务器B的IP地址是固定的,为1.1.1.1,那么ACL规则可以更加精确地定义为rule permit tcp source 10.1.1.1 0 destination 1.1.1.1 0。 报文处理流程如图2所示。

图2 TFTP协议ASPF检测机制

父主题: 配置应用层包过滤(ASPF)

在域间应用ASPF功能

当需要设备转发多通道协议报文时,需要在域间配置相应的ASPF功能。

前提条件

配置ASPF功能与配置NAT ALG功能使用的是同一条命令。所以如果已经在域间配置过NAT ALG功能的话,可以不需要再重复配置ASPF功能。 两者的区别在于: ? ?

ASPF功能的目的是识别多通道协议,并自动为其开放相应的包过滤策略。

NAT ALG功能的目的是识别多通道协议,并自动转换报文载荷中的IP地址和端口信息。

在域间执行detect命令,将同时开启两个功能。

在配置用户自定义的ASPF的时候,需要首先定一条基本ACL规则或高级ACL规则用于匹配流量。

其中规则的动作应设置为permit才能让设备对该条流量进行应用层检测。关于ACL的详细信息请参见《配置指南 防火墙》。

在配置ASPF的包过滤的时候,需要首先定义一条基本ACL或高级ACL用于判断是否为流量生成三元组Server-map表项。其中规则的动作应设置为deny才能让设备不为该条流量生成三元组Server-map表项。没有生成三元组server-map表项的多通道协议流量是不能得到正常转发的。

背景信息

配置detect msn时请注意: ?

MSN用户使用私有协议MSNP进行通信。MSNP的通话端口是随机分配的。在严格包过滤情况下,设备开放的端口很少,当外网向内网发起呼叫请求时,由于设备无法解析MSNP协议,不能获得外网主机的IP地址,会导致业务不通。这时需要在包过滤中配置允许端口号为1000~9999的UDP数据流通过设备,以便设备能够获得MSN的外网主机地址,使MSN会话能够顺利进行。 ?

由于MSN同时使用1863和443号端口作为登录和文字聊天的通道,故需要在包过滤中配置允许端口号为1863和443的数据流通过,使MSN会话顺利进行。

操作步骤

1. 执行命令system-view,进入系统视图。 2. 执行命令firewall

interzone [ vpn-instance vpn-instance-name ] zone-name1 zone-name2,进入安全域间视图。

3. 根据需要进行检测的应用层协议类型,执行以下命令:

?

如果需要检测设备目前支持的知名协议,执行命令detect [ ipv6 ] protocol。 对于USG2110-X/2100/2200/5100,缺省情况下,已开启dns、ftp、h323、icq、ils、mgcp、mms、msn、netbios、pptp、qq、rtsp、sip、sqlnet协议的该功能;对于USG2100/2200/5100 BSR/HSR、USG5500,缺省情况下,不开启任何协议的该功能。 ?

如果需要检测自定义协议,执行命令detect

user-defined acl-number { inbound | outbound },配置自定义协议的ASPF功能。 其中引用的ACL应当预先创建完成,创建ACL的原则可以参考ASPF简介。所应用的方向应该是首次发起连接的报文的方向。

说明:

由于自定义协议的ASPF是通过生成Server-map表项来实现报文转发的。在执行命令undo detect user-defined后,只能阻止新表项的生成,不能立即删除已经生成的表项,所以已经建立起来的业务只有当相应的Server-map表项老化后才会被中断。

? 如果需要检测并阻断下载ActiveX控件或Java控件,执行命令detect { activex-blocking | java-blocking }。

4. 可选:需要对QQ、MSN、User-define等STUN类型协议的ASPF作用范围进行一步限定的

情况下,可以通过执行aspf packet-filter acl-number { inbound | outbound },配置命中三元组Server-map表的报文过滤规则。

说明:

该命令只对STUN类型协议有效。关于STUN类型协议的详细信息,请参见Server-map表简介。

请严格定义ACL规则的匹配范围,对命中三元组ServerMap表的报文进行过滤,实现更精细化的包过滤控制。

该条命令的功能与包过滤功能类似。包过滤功能可以通过检测报文的五元组信息决定是否转发报文和建立会话,aspf packet-filter则可以对命中Server-map表的数据进行ACL包过滤,将不允许通过的报文丢弃。

由于ASPF功能建立的Server-map表项放宽了会话的五元组限制,在保证了业务得到转发的同时,也使得某些端口的访问被放开,存在一定的安全隐患。所以一方面,在配置ASPF功能的时候,用于匹配流量的ACL应配置得越精确越好,另一方面,对于已经建立了Server-map表项的报文,虽然不会进行包过滤规则的检查,但是通过aspf packet-filter命令,也可以阻止其中的一部分报文被转发。

该条命令所应用的方向和选取原则与包过滤一致,对于动作为permit的流量会正常转发,对于动作为deny的流量,会进行丢弃。例如,希望阻止Trust区域的用户1.1.1.1与Untrust区域的QQ通信,则可以将ACL规则设计为rule deny source 1.1.1.1 0,然后通过aspf packet-filter命令将其应用在Trust区域的Outbound方向上。

后续处理

由于ASPF功能决定了很多特殊协议能够得到正常转发,所以当这些业务出现问题时,可以通过以下两种方式来进行问题定位: ? ?

执行命令display interzone查看域间的配置,核对域间是否正确配置了ASPF功能。 执行命令display firewall server-map查看当前设备上已经创建的Server-map表项,详细信息请参见查看Server-map表。 ?

执行命令display firewall ipv6 server-map查看当前设备上已经创建的IPv6 server-map表项。

配置FTP深度映射功能

当需要严格控制内部FTP用户的get或put的操作权限时,需要配置FTP深度检测功能。

前提条件

配置域间防火墙策略或域间缺省包过滤规则。 在域间配置ASPF功能。

背景信息

内部网络用户连接到外部的FTP服务器时,可以下载或上传文件。为了安全和管理,网络管理员需要限制用户FTP操作的权限。例如,配置某些用户只有get权限或只有put权限,其他用户两种权限都没有。

此时,可以在网络出口配置一台USG,并配置FTP深度检测功能。当某些未授权的用户访问外部FTP服务器,并企图进行FTP put或get操作时,USG将禁止该用户的相应FTP操作,达到保障信息安全和管理内部用户的目的。

操作步骤

1. 执行命令system-view,进入系统视图。

2. 执行命令deep-inspection group group-id,创建并进入深度检测服务组视图。 3. 执行命令add { ftp-get | ftp-put },配置关键字认证。 4. 执行命令quit,退回系统视图。 5. 执行命令firewall

interzone [ vpn-instance vpn-instance-name ] zone-name1 zone-name2或者firewall interzone zone-name1 [ vpn-instance vpn-instance-name ] zone-name2,进入安全域间视图。

6. 执行命令firewall deep-inspection group-id { inbound | outbound },配置域间应用

深度检测组。

后续处理

配置完FTP深度检测功能之后,可以通过命令display deep-inspection { all | group group-id }检查配置结果。

[USG]display deep-inspection all deep inspection group 1 add ftp-get

Total 1 deep-inspection groups

配置对报文的分片处理

由于链路类型的不同,网络中不同链路可以传输的最大报文是不同的,所以有可能存在报文在转发过程中必须被分片才能通过整个网络的情况。通过对设备处理分片报文的方式进行配置,可以保证分片报文的正确转发。 ?

报文分片原理

报文分片的目的是为了能够通过网络中的不同网段,了解报文分片的原理,可以为判断如何对分片报文进行处理提供依据。 ?

配置分片丢弃功能

缺省情况下,设备将对分片报文进行缓存。但是有时分片报文可以利用来做一种攻击手段,所以如果不希望转发分片报文,则可以配置对分片报文全部丢弃。 ?

配置分片报文直接转发功能

缺省情况下,设备将对分片报文进行缓存。但是如果在不进行NAT转换的情况下,设备可以直接解析出每个报文的真实源IP和目的IP,所以此时可以配置对分片报文直接转发,而不需要缓存分片以等待首片创建会话表。 ?

配置分片散列表老化时间

在分片缓存机制中,分片散列表老化时间决定了设备等待首片到来的时间长短,如果超过老化时间后,仍未收到首片,则会将缓存的后续分片丢弃。 ?

配置分片报文保序

在对乱序分片报文敏感的情况下,可以开启设备的分片保序功能,以保证分片报文按照设备产生的顺序转发。

报文分片原理

报文分片的目的是为了能够通过网络中的不同网段,了解报文分片的原理,可以为判断如何对分片报文进行处理提供依据。

报文分片机制

一条链路所能传输的最大报文长度被称为MTU(Maximum Transfer Unit),最大传输单元。MTU通常与接口类型有关。一个报文在网络中传输可以会通过多种不同的链路,如果报文长度比较大的话,可能出现报文在传输过程中,因为长度超过了其中某条链路的MTU而无法通过该条链路。 为了解决该问题,引入了报文分片机制。网络设备在传输报文时,如果设备上配置的MTU(Maximum Transfer Unit)小于报文长度,则会将报文分片后继续发送。理想情况下,各分片报文将按照固定的先后顺序在网络中传输,当终端设备接收到所有分片报文后再将这些报文重组为一个完整的报文。

USG对分片报文的处理

在实际传输过程中,由于网络环境的复杂,可能存在以下情况: ?

后续分片报文先于首片报文到达某个网络设备

? 后续报文需要在某个中间设备上进行重组后才能继续传输,例如中间设备需要解析报文载荷后才能判断如何转发。

在USG上,这两种情况都可能存在。由于USG提供的安全机制对报文检测非常严格,为了满足攻击防范和NAT转换等特殊功能的需要,设备上对分片报文的处理分为三种机制: ?

分片缓存

设备缺省机制。设备会将非首片的分片报文缓存至分片散列表,等待首片到来建立会话后,将所有分片报文进行转发。在分片散列表已经放满,但是首片还未到来的情况下,后续分片报文会被丢弃,直至收到首片报文。如果分片散列表的老化时间已到,还未收到首片报文,所有缓存的分片报文将被全部丢弃。通过firewall session aging-time service-set fragment命令可以修改分片散列表的老化时间。 ?

分片丢弃

不信任所有分片报文,收到分片报文即丢弃。可以提供最大的安全性,但是可能会影响正常业务的转发。 ?

分片直接转发

信任所有分片报文,收到分片立即直接转发,不会缓存到分片散列表等待首包的到来。在同一报文的分片可能通过不同设备的情况下,该机制将保证所有分片都能正常转发,以被最终接收者接收。但是存在一定的安全风险。

三种分片报文处理机制的转换

设备缺省采用分片缓存机制,同一时刻,设备只能采用三种机制中的一种。三种机制的转换方法如下:

图1 三种分片报文处理机制的转换

对于需要设备重组的分片报文的处理

对于不是发给设备本身,但是需要设备重组成原始报文之后才能转发或处理的分片报文,必须将设备配置到分片缓存状态才能保证业务的正常运行。

例如在VPN应用中(主要指IPSEC和GRE),由于需要设备对分片报文进行重组后解密或者解封装,设备才能进行后续处理,所以必须将设备配置成分片缓存状态,完成原始报文重组之后,才可以进行相应的加密解密处理。在NAT应用中,需要设备对分片报文进行重组后才能正常解析和转换报文中的IP地址,所以也必须将设备配置成分片缓存状态,才可以正常进行NAT。 如果设备收到分片过多,会影响这些业务的运行。 ?

配置分片散列表老化时间只有在设备处于分片缓存机制下才有作用。关于报文分片机制与设备对分片报文的处理原则的详细信息,以及在开启分片报文直接转发或者分片直接丢弃之后如何退回分片缓存的状态,请参见报文分片原理。

配置分片丢弃功能

缺省情况下,设备将对分片报文进行缓存。但是有时分片报文可以利用来做一种攻击手段,所以如果不希望转发分片报文,则可以配置对分片报文全部丢弃。

前提条件

启用分片丢弃功能时,必须先将运行模式切换到防火墙模式。

背景信息

关于报文分片机制与设备对分片报文的处理原则的详细信息,以及在开启分片报文丢弃功能之后如何退回分片缓存的状态,请参见报文分片原理。

操作步骤

1. 执行命令system-view,进入系统视图。

2. 执行命令firewall [ ipv6 ] fragment-discard enable,开启分片报文丢弃功能。

配置分片报文直接转发功能

缺省情况下,设备将对分片报文进行缓存。但是如果在不进行NAT转换的情况下,设备可以直接解析出每个报文的真实源IP和目的IP,所以此时可以配置对分片报文直接转发,而不需要缓存分片以等待首片创建会话表。

前提条件

启用分片报文直接转发功能时,必须先将运行模式切换到防火墙模式。

背景信息

配置分片报文直接转发功能会影响设备对需要重组后才可解析的分片报文的处理,会导致VPN、NAT等功能不能正常使用。

关于报文分片机制与设备对分片报文的处理原则的详细信息,以及在开启分片报文直接转发功能之后如何退回分片缓存的状态,请参见报文分片原理。

操作步骤

1. 执行命令system-view,进入系统视图。

2. 执行命令firewall [ ipv6 ] fragment-forward enable,开启分片报文直接转发功能。

配置分片散列表老化时间

1. 执行命令system-view,进入系统视图。

2. 执行命令firewall session aging-time service-set fragment time,配置分片散列表

老化时间。

配置分片报文保序

在对乱序分片报文敏感的情况下,可以开启设备的分片保序功能,以保证分片报文按照设备产生的顺序转发。

背景信息

当设备接口MTU值小于所接收到的报文的MTU值,此时设备会对报文进行分片,产生分片报文。当对分片报文顺序要求严格的业务系统处理乱序报文时,可能会引起解析失败,从而影响业务正常运行,此时,需开启设备的分片报文保序功能。

该功能只对这种由设备自身产生的分片报文进行保序,对接口收到的分片报文不起作用。 缺省情况下,设备开启报文保序功能和分片报文保序功能。当报文保序功能关闭时,分片报文保序功能同时也关闭;当报文保序功能开启时,分片报文保序功能可开启也可关闭。

说明:

开启报文保序功能后,不允许开启二层接口快速转发功能。同样,当设备开启二层接口快速转发功能后,不允许开启报文保序功能和分片报文保序功能。

操作步骤

1. 执行命令system-view,进入系统视图。

2. 执行命令packet fragment sequence-kept enable,配置设备开启分片报文保序功能。

配置IDS联动

IDS联动能够增强网络的安全性,加强路由设备的入侵检测和分析能力。 ?

IDS联动简介

IDS联动功能是指USG与放置于内部网络的IDS设备联合工作,检查和防范内部网络用户的非法操作和已侵入内部网络的攻击行为。 ?

配置IDS联动

当需要防范内部网络用户的破坏以及对内部网络的攻击时,需要配置USG的IDS联动功能。 ?

维护IDS联动

当IDS联动运行出现故障时,请在用户视图下执行debugging命令对IDS进行调试,查看调试信息,定位故障并分析故障原因。 ?

配置IDS联动举例

通过此举例,您可以了解IDS联动的典型组网和配置方法。

IDS联动简介

IDS联动功能是指USG与放置于内部网络的IDS设备联合工作,检查和防范内部网络用户的非法操作和已侵入内部网络的攻击行为。

注意:

USG只能够与华为公司的NIP设备进行联动。 通常,USG具有如下作用: ?

限制用户或信息访问特定的被严格控制的站点,监控可信任网络和不可信任网络之间的访问通道,以防止外部网络的危险蔓延到内部网络。 ?

限制用户或信息从某个特定的被严格控制的站点离开,通过有效控制外部用户对内部资源的访问,确保信息安全。

USG的应用有局限性:由于USG检查的颗粒度较粗,难以对众多协议的细节进行深入的分析和检查。

为解决这个问题,USG开放了相关端口,通过与其它安全软件进行联动,从而构建统一的安全网络,即IDS(Intrusion Detective System)联动。 USG与IDS设备的联动组网方式如图1所示。

图1 IDS联动典型组网图

USG与IDS设备联动,可以充分利用专用IDS软件的功能,对流经网络的报文进行详细的分析与检查,探测各种异常情况和可能的攻击行为,并通过USG进行实时的响应。

配置IDS联动

当需要防范内部网络用户的破坏以及对内部网络的攻击时,需要配置USG的IDS联动功能。

前提条件

在配置IDS联动前,需要完成以下任务: ? ?

配置接口IP地址 配置接口加入安全区域

操作步骤

1. 执行命令system-view,进入系统视图。

2. 执行命令firewall ids port port-number,配置USG和外接IDS服务器通讯的端口。 3. 执行命令firewall ids enable,启动外接IDS功能。

4. 执行命令firewall ids server ip-address,配置外接IDS服务器地址。

5. 执行命令firewall ids authentication type { md5 [ key key-string ] | none },配置

与外接IDS服务器的报文认证方式。

后续处理

执行命令display firewall ids,查看IDS联动的配置信息。 display firewall ids

Firewall IDS information: firewall IDS: enable debug flag: off server port: 40000 authentication type: md5

authentication string: %$%$n`Y1\

client address 0: 1.1.1.1 (connected) client address 1: 1.1.1.2 (connected) client address 2: 1.1.1.3 (connected) client address 3: 1.1.1.4 (connected) client address 4: 1.1.1.5 (connected) client address 5: 1.1.1.6 (connected)

如上显示信息所示,启动了IDS联动功能,设备与外接IDS服务器的报文认证方式为md5,认证字密文显示为%$%$n`Y1\。

配置终端安全管理(TSM联动)

TSM是一套解决内网用户安全隐患的综合解决方案,本设备在该方案中承担安全接入控制网关(SACG)的角色,主要的作用是控制各类用户访问网络的行为。

说明:

上网用户管理功能与TSM联动功能互斥,只能配置其中一个。如果两者都被配置,则功能均不生效。 ?

TSM联动简介

TSM是一套完整的解决终端安全问题的解决方案,涉及的原理和概念众多,本文档只是进行简单介绍,并且主要侧重与SACG有关的部分信息。如果需要了解关于TSM的全部信息,请参考TSM产品的相关资料。 ?

配置SACG与TSM控制器的连接

SACG通过TSM控制器与整个TSM服务器群交互用户信息和流量控制策略。所以要使用TSM联动功能,必须将SACG与TSM控制器进行连接。 ?

管理用户与角色

在SACG上,用户与角色的管理大部分操作都是由TSM系统自动完成的,但是SACG也提供了一些手工或强制管理用户和角色的功能,以满足一些特殊需求。 ?

配置自定义策略

自定义策略是给某些不需要经过TSM系统处理的特权用户使用的。通过给这些用户单独制定转发策略,可以使这些用户不经过认证、安全检查、授权等一系列过程而直接获得相应的网络权限。 ?

维护TSM联动

维护TSM联动的操作主要包括查看当前的配置信息和用户信息,清除空策略以及清除统计信息。 ?

配置举例

本节将介绍旁挂、直挂场景下的TSM联动的配置案例。

TSM联动简介

TSM是一套完整的解决终端安全问题的解决方案,涉及的原理和概念众多,本文档只是进行简单介绍,并且主要侧重与SACG有关的部分信息。如果需要了解关于TSM的全部信息,请参考TSM产品的相关资料。 ?

终端安全理念与TSM简介

终端安全理念是对普通防火墙防范外网安全风险理念的补充,可以解决日益增加的内网安全隐患。 ?

SACG工作原理简介

了解SACG的工作原理,有助于理解后续TSM联动的配置。 ?

SACG的部署方式

SACG主要提供直挂和旁挂两种不同的部署模式,不同模式中设备的配置存在少量差异,本节主要介绍这两种模式的原理及配置上的差异。

终端安全理念与TSM简介

终端安全理念是对普通防火墙防范外网安全风险理念的补充,可以解决日益增加的内网安全隐患。 随着网络的发展与防火墙设备的普及,企业的网络安全威胁的主要来源正逐渐从外网转移到内网,包括: ?

非法终端和非授权终端对业务系统的访问,主要包括以下几种情况: ? ? ? ? ?

非自有的终端设备接入企业内网 不合法人员利用企业设备接入企业内网 合法人员越权访问网络资源

终端不安全导致病毒的扩散

终端数量大、系统复杂、员工的违规行为得不到监控

TSM(Terminal Security Management)方案正是为了解决这一问题而提出来的。它将网络划分为以下几类区域: ?

用户域

所有接入企业内网的终端设备,例如台式机、便携机以及通过Internet接入的出差员工、驻外机构、合作伙伴等。 ?

网络域

进行流量转发的网络设备所组成的域,承载业务流量,实现各网络的互联。SACG就部署在这个域中。 ?

认证前域

认证前域是终端设备在完成认证之前可以访问的区域。该区域主要用于对终端设备和用户进行认证、授权、策略管理、补丁下发等。TSM方案的中大部分组件都部署在该区域中。

? 受控域

受控域是终端在完成认证之后才可以访问的区域。包括两种: ?

隔离域

隔离域是指在终端用户通过了身份认证但未通过授权时可以访问的区域。通常将能够帮助终端用户消除安全隐患的相关资源(如补丁服务器、防病毒服务器等)部署在本区域。 ?

认证后域

认证后域是企业真正的核心资源所在的区域,终端设备和用户都必须进行认证和授权之后才能访问自己的权限相对应的安全区域。

TSM方案的典型组网图如图1所示。

图1 TSM方案典型组网图

TSM的主要工作流程是:

1. 终端设备接入网络,发起认证请求。

2. SACG将接收到的认证请求转发给服务器中的TSM控制器,同时阻止未通过认证和授权的

终端设备访问认证后域。

3. TSM系统进行权限以及终端安全性核查。如果终端设备存在安全漏洞,TSM系统会首先开

放该设备访问隔离域的权限,使其可以下载补丁或病毒库。修复安全漏洞成功后,TSM系统确定是否允许其访问认证后域,并且确定允许其访问哪个认证后域。 4. TSM系统将针对该终端生成的用户访问控制策略下发到SACG上。

5. SACG根据收到的策略生成相应的转发策略,判断是否允许相关终端设备通过SACG访问认

证后域。

SACG工作原理简介

了解SACG的工作原理,有助于理解后续TSM联动的配置。

USG在TSM方案中承担SACG这个角色,主要作用是进行网络访问权限控制。在TSM方案中,对各类用户进行访问控制的策略不需要手工创建,而是由TSM系统根据相关的策略配置,自动下发到USG上。

终端通过SACG进行认证请求的方式主要有以下两种: ?

TSM代理认证

TSM代理是TSM的一个组件,作为TSM的客户端安装在终端设备上。主要承担用户身份认证、终端设备安全性检查以及与TSM后台服务器的自动交互等工作。安装TSM代理后,与TSM控制器联动的所有过程都是由TSM代理自动完成,实现了对用户的透明。 ?

无代理Web认证

如果终端设备上不能安装TSM代理软件,例如终端设备的操作系统为UNIX,那么在用户没有经过认证就通过HTTP方式(包括通过端口映射功能识别出的HTTP方式)访问Web的情况下,会被强制跳转到一个用于认证的Web界面。用户可以通过该界面进行相应的认证请求。无代理Web认证不能实现TSM方案的所有功能,所以不推荐使用。 TSM服务器将访问控制策略下发给SACG的原理是: ?

通过在SACG上配置TSM联动功能,将SACG上的ACL3099~3999作为接纳TSM下发控制策略的容器,这901条ACL分别对应ID号为0~900的901种角色,每种角色对应TSM系统中的一个受控域。其中ACL3099对应角色0,是所有接入用户的缺省角色,可以用来允许未经认证的用户访问认证前域。剩余的ACL3100~3999对应角色1~900号角色,这些角色是由TSM系统下发的普通角色。

执行default acl 3099命令指定缺省ACL后,ACL3099中的原有规则会被自动清除,并且不能被人工配置。

执行right-manager server-group enable开启与TSM服务器的连接后,ACL3100~ACL3999将不能被人工配置。如果在开启之前,这些ACL已经包含规则或者正在被其他功能使用,必须先手工清除规则,并且取消在其他功能中的使用,才能开启与TSM服务器的连接。 ?

一个终端设备接入后,通过SACG向TSM服务器发起认证请求,认证通过后,TSM服务器将该终端设备的IP地址以及对应的角色信息发给SACG。 ?

SACG根据TSM服务器下发的各条ACL中的信息,建立一个源IP监控表,记录IP地址、角色、角色的权限以及可访问的资源等信息的对应关系。

SACG收到一个来自终端设备的报文后,在进行域间包过滤时,按如图1所示流程进行处理:

图1 TSM联动下的策略查找流程

背景信息

不管SACG的部署模式是直挂还是旁挂,只要SACG与TSM控制器三层路由可达,就能完成两者之间的交换。所以两种部署模式下,SACG与TSM控制器的连接配置基本相同。

操作步骤

1. 执行命令system-view,进入系统视图。

2. 执行命令firewall packet-filter default permit interzone local zone-name,其中

zone-name应该是TSM中的TSM控制器所在安全区域。配置设备的Local域与TSM控制器

之间的缺省包过滤规则,使TSM服务器能给设备下发ACL规则。

3. 可选:采用无代理Web认证方式进行认证的情况下,需要执行本操作。执行命令firewall

packet-filter default permit interzone local zone-name,其中zone-name应该是终端设备所在安全区域。配置设备的Local域与终端用户之间的缺省包过滤规则,使无代理Web认证情况下,设备可以推送Web认证页面给终端用户。

4. 可选:如果采用旁挂模式,则需要执行本操作。执行命令undo firewall session

link-state check,关闭状态检测功能。

在旁挂模式下,只有一个方向的流量会经过设备,所以需要关闭SACG的状态检测功能。USG上基于状态检测实现的功能在旁挂模式中均不可用。

5. 执行命令right-manager server-group,进入TSM联动配置视图。TSM联动的主要配置都

在该视图下完成。

6. 执行命令default acl 3099,指定缺省ACL规则组号。执行本命令后才可添加TSM服务

器地址。

注意:

执行本命令后,ACL3099的原有规则将被清空,同时ACL3099将不能手工创建规则。 在TSM联动功能中,设备将ACL3099~3999预留用来承接TSM服务自动下发的访问规则,用户不能自行定义这些规则。所以在执行本命令后,设备就将锁定ACL3099~3999,使其不能被用户修改。

其中ACL3099是TSM向SACG下发的允许终端设备访问认证前域的规则。下发该ACL后,接入的用户才可以访问认证前域,这是接入用户能够进行认证的前提。

7. 可选:执行命令local ip ip-address,配置USG向TSM服务器发起连接时使用的IP地址。

ip-address为USG上已存在的地址,如物理接口地址、Loopback接口等逻辑接口地址。

8. 执行命令server ip ip-address [ port port-number ] [ shared-key key ],配置TSM服

务器的相关参数。

在本命令中,ip-address应该是TSM控制器的IP地址。port-number一般不需要重新配置,除非TSM控制器上修改了端口号。key是SACG与TSM控制器之间通信时加密用的密钥,必须和TSM控制器上的配置保持一致,两者才能实现正常通信。

说明:

USG2110-X/2100和USG2100BSR/HSR支持的TSM服务器数量最大值为8个。

USG2200/5100/5500和USG2200/5100 BSR/HSR支持的TSM服务器数量最大值为32个。 设备与TSM控制器通信的端口port缺省值是3288。

设备与TSM控制器的预共享密钥shared-key缺省值是TSM_Security。 9. 可选:采用无代理Web认证方式进行认证的情况下,需要执行本操作。执行命令

right-manager authentication url url,配置无代理Web认证方式下,用来供用户认证的Web页面的URL地址。

如果终端设备上没有安装SA(Security Agent)安全代理软件,那么在用户没有经过认证就访问Web的情况下,会被强制跳转到该命令指定的页面上。在无代理Web认证方式下,通过这条命令,实现向用户推送认证网页的目的。

说明:

如果配置了多个URL地址,当有多个需要重定向的报文到达USG,USG会轮询推送这些URL地址,每次推送时总是选择被使用次数最少的一个URL地址。 该命令对URL地址的大小写敏感,请保证字母大小写正确。

10. 可选:执行命令integrity-check enable,开启完整性校验功能,对USG与TSM服务器

之间的通信报文做完整性校验。

缺省情况下,该完整性校验功能是关闭的。

11. 执行命令right-manager server-group enable,开启与TSM服务器的连接。

注意:

开启与TSM服务器的连接后,ACL3100~ACL3999将不能被人工配置。如果在开启之前,这些ACL已经包含规则或者正在被其他功能使用,必须先手工清除规则,并且取消在其他功能中的使用,才能开启与TSM服务器的连接。

配置本命令后,设备将立即尝试与TSM服务器进行连接。连接成功后,设备可以接收到TSM服务器下发的角色和角色规则。 12. 可选:配置逃生通道功能。

逃生通道功能是指在TSM系统出现故障时,为了不影响正常业务,在满足一定条件后,对接入的终端设备放开访问权限,使其可以访问网络。启动逃生功能后,终端设备不会再进行一系列的认证和授权的过程,可以直接访问网络。

a. 执行命令right-manager status-detect enable,开启TSM控制器存活检测功能。 b. 执行命令right-manager server-group active-minimun active-minimun,配置与

设备连接的TSM服务器个数的最小值。

开启TSM控制器存活检测功能之后,SACG会检测网络中可连接的TSM控制器情况。如果与设备成功连接的TSM控制器数量小于active-minimun,设备就会打开逃生通

道,就对用户开放所有权限;故障恢复后,如果与设备连接的TSM控制器数量大于或等于active-minimun,设备就会关闭逃生通道,恢复原有权限控制。 缺省情况下,active-minimun为1。

13. 执行命令quit,退回系统视图。

14. 执行命令policy interzone zone-name1 zone-name2 { inbound | outbound },进入域间策

略视图。 ?

旁挂模式下,需要进入SACG用于旁挂的两个接口所在的安全区域的域间。即图1中的Trust和Untrust域间。 ?

直挂模式下: ?

如果启用了逃生通道功能,需要在分别进入两个域间应用下一步的命令:用户所在安全区域和TSM控制器所在安全区域的域间、用户所在安全区域和业务系统所在安全区域的域间。 ?

如果没有启用逃生通道功能,只需要在用户所在安全区域和TSM控制器所在安全区域的域间应用下一步的命令。

执行命令apply packet-filter right-manager,在域间应用TSM策略,开启联

动功能。

在域间应用TSM联动功能,实际上是将ACL3099应用到了域间。

由于ACL3099用于接受TSM系统下发的允许用户访问认证前域的规则,所以必须在终端设备与认证前域之间应用该ACL3099。

由于ACL3099还用于接受逃生通道功能下发的允许所有用户直接访问认证后域的规则,所以在使用逃生通道功能的时候,需要在终端设备与认证前域和终端设备与认证后域两个域间都应用ACL3099。

管理用户与角色

在SACG上,用户与角色的管理大部分操作都是由TSM系统自动完成的,但是SACG也提供了一些手工或强制管理用户和角色的功能,以满足一些特殊需求。

背景信息

“角色”是TSM方案中提出的概念,每个角色都有对应的成员及权限范围。TSM系统经过认证之后,根据已经制定好的策略,将接入的终端设备划入不同的角色,并生成相应的可以控制这些用户访问范围的ACL,下发到SACG上。SACG根据这些信息对终端设备进行访问控制。

一个用户可以拥有多个角色,这意味着这个用户可以获得这些角色定义的所有权限。关于用户与角色的详细原理,请参见SACG工作原理简介。

操作步骤

1. 执行命令system-view,进入系统视图。

2. 执行命令display right-manager role-info,查看已经同步到的角色信息。 3. [sysname] display right-manager role-info 4. All Role count:10

5. Role ID ACL number Role name

6. -------------------------------------------------------------------- 7. Role 0 3099 default 8. Role 1 3100 BaseResGroup 9. Role 2 3101 kk2 10. Role 3 3102 kk3 11. Role 4 3103 kk4

12. -------------------------------------------------------------------- 13. Role 5 3104 kk5 14. Role 6 3105 kk6 15. Role 7 3106 kk7 16. Role 8 3107 kk8 17. Role 9 3108 kk9

------------------------------------------------------------------- 以上显现是当前同步到的10种用户角色及其对应的ACL规则号。 18. 执行命令display right-manager online-users,查看当前在线用户。 19. [sysname] display right-manager online-users 20. User name : test1 21. Ip address : 10.10.10.10 22. ServerIp : 10.1.1.2

23. Login time : 16:27:23 2010/07/06 ( Hour:Minute:Second Year/Month/Day) 24. ----------------------------------------- 25. Role id Role name 26. 1 DefaultPermit 27. 4 FtpServerD 28. 6 HttpServerD 29. 255 PermitBase

----------------------------------------- 以上信息显示了当前在线的一个用户test1的相关信息。

30. 执行命令right-manager server-group,进入TSM联动配置视图。TSM联动的主要配置都

在该视图下完成。 31. 进行角色与用户管理。

?

执行命令right-manager user

user-name user-name ip ip-address roles { role-id role-id &<1-16>

| role-name role-name &<1-16>} 。配置不经过TSM服务器的认证就能获取给定的角色对应的访问权限的特权用户。

为保证安全性,user-name和ip必须同时配置,只有从指定IP地址登录的特权用户才能获得相应的权限。一个特权用户最多可以同时配置16个用户角色。这个特权用户将获取这些角色的所有权限。 ?

执行命令cut access-user { all | ip ip-address | user-name user-name },强制注销非法用户。

如果在设备运行过程中,发现有非法用户上线,可以使用该命令强制注销非法用户,使其下线。用户名应与display right-manager online-users中查询到的Username保持一致。

配置自定义策略

自定义策略是给某些不需要经过TSM系统处理的特权用户使用的。通过给这些用户单独制定转发策略,可以使这些用户不经过认证、安全检查、授权等一系列过程而直接获得相应的网络权限。

背景信息

自定义策略是指在TSM策略中人工定义一些转发规则,以在TSM功能处理报文之前先对一些特殊报文进行处理。

将自定义策略应用到域间后,相当于在域间应用了一个优先于TSM功能的包过滤策略。设备在进行报文转发时,会首先使用自定义策略来进行处理。当流量没有对应的自定义策略时才会使用TSM功能进行一系列认证与授权的过程。所以可以为某些特权用户配置自定义策略。

操作步骤

1. 执行命令system-view,进入系统视图。

2. 执行命令policy right-manager,进入TSM自定义策略视图。

3. 执行命令policy [ policy-id ],创建一条策略,并进入该条策略的配置视图。

同一个策略视图下可以为不同的流量创建不同的策略。缺省情况下,越先配置的策略,优先级越高,越先匹配报文。但是各个policy之间的优先级关系可以通过命令进行调整,详细信息请参见“后续处理”。 4. 执行命令policy

source { source-address{ source-wildcard | 0 | mask { mask-address | mask-len } } | address-set { address-set-name } &<1-256>

| range begin-address end-address | any },指定需匹配流量的源地址。 5. 执行命令policy

destination { source-address{ source-wildcard | 0 | mask { mask-address | mask-len } } | address-set { address-set-name } &<1-256>

| range begin-address end-address | any },指定需匹配流量的目的地址。

6. 执行命令policy service service-set { service-set-name } &<1-256>,指定需匹配流

量的服务类型。

7. 可选:执行命令description description-information,配置策略的描述信息。 8. 可选:配置策略的一些特殊匹配条件。这些条件是在源地址和目的地址的基础上,根据报

文中的一些特殊标记和属性对流量进行更加精确的匹配。 ?

执行命令policy precedence precedence-value,配置报文优先级字段。 报文优先级字段是IP报文头中的一个字段,一般用于标记该报文的转发优先级。可以通过匹配该字段来匹配流量。 ?

执行命令policy tos tos-value,配置报文服务类型字段。

服务类型字段是IP报文头中的一个字段,一般用于标记该报文的服务类型。可以通过匹配该字段来匹配流量。 ? ?

执行命令policy time-range time-name,配置策略生效的时间段。 执行命令policy logging,配置对符合条件的数据包做日志。

9. 执行命令action { permit | deny },配置TSM联动策略动作。

通过上述多条命令进行流量匹配后,通过此命令就可以配置对所定义流量的动作。如果是permit就是将这些流量直接转发,如果是deny就是将这些流量直接丢弃。

注意:

如果在联动策略中对TSM的终端配置了deny的动作,将会导致TSM的逃生通道功能失效,因为USG是先匹配联动策略中的规则,再匹配逃生通道的规则的,一旦匹配上了联动策略中的deny规则,将无法匹配到逃生通道的规则,导致TSM的逃生通道功能失效。 10. 执行命令quit,退回系统视图。 11. 执行命令policy

interzone [ vpn-instance vpn-instance-name ] zone-name1 zone-name2 { inbound | outbound },进入域间策略视图。

将自定义策略应用到哪个域间以及什么方向,其原理和原则与域间包过滤是一样的。可以参考配置安全策略进行。

由于在配置SACG与TSM控制器的连接的过程中,已经将TSM策略应用到终端设备与认证前域的域间。所以如果只是希望修改这个域间的TSM策略,可以不需要执行下面的命令重复应用,自定义策略创建完成后即可生效。如果需要应用的域间之前没有应用过TSM策略,则需要执行下面的命令。

12. 执行命令apply packet-filter right-manager,在域间应用TSM联动功能。

应用之后,该条策略即可在该域间即可生效。

后续处理

配置自定义策略后,可以对自定义策略进行调整:

? 在TSM自定义策略视图下执行policy policy-id { enable | disable },启用或者禁用一条自定义策略。

? 调整TSM联动策略优先级。 ?

执行命令policy move policy-id1 before policy-id2,将策略policy-id1优先级调整到策略policy-id2的前面。调整后,策略policy-id1的优先级高于策略policy-id2的优先级。 ?

执行命令policy move policy-id1 after policy-id2,将策略policy-id1优先级调整到策略policy-id2的后面。调整后,策略policy-id1的优先级低于策略policy-id2的优先级。

如果需要查看各个policy之间的优先级关系,可以执行命令display policy right-manager来进行查看。policy的显示顺序就是匹配顺序。 [sysname] display policy right-manager

policy right-manager policy 1 (Inactive)(1 times matched) action deny policy logging policy service service-set ip policy source any policy destination any policy 1 disable

policy 2 (Inactive)(1 times matched) action permit policy logging policy service service-set ftp policy source any policy destination any policy 2 disable

配置URPF

介绍URPF的配置。 ?

URPF概述

介绍了URPF在网络中的应用场景及处理流程。 ?

配置接口URPF

通过在接口上配置URPF,防止基于源地址欺骗的网络攻击行为。 ?

配置URPF示例

介绍单播逆向路径转发的配置举例。

URPF

URPF的处理流程

URPF的处理流程如下:

1. 如果报文的源地址在USG的FIB表中存在。

?

对于strict型检查,反向查找报文出接口,若只有一个出接口和报文的入接口一一匹配,则报文通过检查;否则报文将被拒绝。当有多个出接口和报文的入接口相匹配时,必须使用loose型检查。(反向查找是指查找以该报文源IP地址为目的IP地址的报文的出接口)。 ?

对于loose型检查,当报文的源地址在USG的FIB表中存在(不管反向查找的出接口和报文的入接口是否一致),报文就通过检查;否则报文将被拒绝。

2. 如果报文的源地址在USG的FIB表中不存在,则检查缺省路由及URPF的

allow-default-route参数。 ?

对于配置了缺省路由,但没有配置参数allow-default-route的情况。

不管是strict型检查还是loose型检查,只要报文的源地址在USG的FIB表中不存在,该报文都将被拒绝。 ?

对于配置了缺省路由,同时又配置了参数allow-default-route的情况。 ?

如果是strict检查,只要缺省路由的出接口与报文的入接口一致,则报文将通过URPF的检查,进行正常的转发。如果缺省路由的出接口和报文的入接口不一致,则报文将拒绝。 ?

如果是loose型检查,报文都将通过URPF的检查,进行正常的转发。

3. 当且仅当报文被拒绝后,才去匹配ACL列表。如果被ACL允许通过,则报文继续进行正常

的转发;如果被ACL拒绝,则报文被丢弃。

配置接口URPF

通过在接口上配置URPF,防止基于源地址欺骗的网络攻击行为。

前提条件

? ? ?

配置接口的链路层属性 配置接口的IP地址 配置URPF所针对报文的ACL

背景信息

URPF检查有严格(strict)型和松散(loose)型两种。此外,还可以支持ACL与缺省路由的检查。

URPF的处理流程如下:

1. 如果报文的源地址在USG的FIB表中存在。

?

对于strict型检查,反向查找报文出接口,若只有一个出接口和报文的入接口一一匹配,则报文通过检查;否则报文将被拒绝。当有多个出接口和报文的入接口相匹配时,必须使用loose型检查。(反向查找是指查找以该报文源IP地址为目的IP地址的报文的出接口) ?

对于loose型检查,当报文的源地址在USG的FIB表中存在(不管反向查找的出接口和报文的入接口是否一致),报文就通过检查;否则报文将被拒绝。

2. 如果报文的源地址在USG的FIB表中不存在,则检查缺省路由及URPF的

allow-default-route参数。 ?

对于配置了缺省路由,但没有配置参数allow-default-route的情况。

不管是strict型检查还是loose型检查,只要报文的源地址在USG的FIB表中不存在,该报文都将被拒绝。 ?

对于配置了缺省路由,同时又配置了参数allow-default-route的情况。 ?

如果是strict检查,只要缺省路由的出接口与报文的入接口一致,则报文将通过URPF的检查,进行正常的转发。 ?

如果缺省路由的出接口和报文的入接口不一致,则报文将拒绝。如果是loose型检查,报文都将通过URPF的检查,进行正常的转发。

3. 当且仅当报文被拒绝后,才去匹配ACL列表。如果被ACL允许通过,则报文继续进行正常

的转发;如果被ACL拒绝,则报文被丢弃。

操作步骤

1. 执行命令system-view,进入系统视图。

2. 执行命令interface interface-type interface-number,进入接口视图。

可以使能URPF功能的接口包括GE接口、VLAN IF接口、Eth-Trunk接口、Tunnel接口和子接口。

3. 使能接口URPF功能。

?

IPv4网络中执行命令ip urpf { loose | strict } [ allow-default-route ] [ acl acl-number ] ?

IPv6网络中执行命令ipv6 urpf { loose | strict } [ allow-default-route ] [ acl6 acl-number ]

UTM

UTM(Unified Threat Management)指将多种安全功能集成于一个设备中,保护用户不受多种网络威胁的侵扰。

说明:

病毒特征库和IPS签名库都需要升级才能获得。

UTM检测 入侵防御(IPS)

IPS(Intrusion Prevention System)能够有效防御应用层攻击,如:缓冲区溢出攻击、木马、后门攻击、蠕虫等。

设备通过监控或者分析系统事件检测入侵,使用和匹配包含最新攻击特征的IPS签名库,判断该报文是否为攻击报文。如果检测到攻击,设备根据IPS策略进行响应,对攻击报文进行阻断或告警。

除了预定义的签名库外,用户还能根据实际网络情况和攻击特征定义自定义签名。但建议用户只在非常了解攻击特征的情况下才配置自定义签名,因为自定义签名设置错误不仅无法阻断攻击,而且还有可能导致报文误丢弃或业务不通等问题。

反病毒(AV)

AV(Anti-Virus)能有效检测文件中的病毒,并阻断感染了病毒的文件。

设备将接收到需要进行病毒扫描的文件的内容与病毒特征库进行比较,判断扫描内容中是否含匹配病毒特征的信息。如果检测到病毒,设备根据AV策略进行响应,删除含病毒文件或进行告警。如果没有检测到病毒,则设备放行该文件。

除了能检测病毒外,通过设置,设备还能对超大文件、密码保护文件、多层压缩文件、格式损坏文件进行放行或阻断。

设备能够对使用以下协议进行传输的文件进行病毒扫描和相应处理: ? ? ? ?

HTTP(Hypertext Transfer Protocol),超文本传输协议 SMTP(Simple Mail Transfer Protocol),简单邮件传输协议 POP3(Post Office Protocol 3),邮局协议版本3 FTP(File Transfer Protocol),文件传输协议

本文来源:https://www.bwwdw.com/article/3y56.html

Top