• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

08-安全配置指导

目录

16-会话管理配置

本章节下载 16-会话管理配置  (180.26 KB)

16-会话管理配置


1 会话管理

1.1  会话管理简介

会话管理是为了实现NAT(Network Address Translation,网络地址转换)、ASPF(Advanced Stateful Packet Filter,高级状态包过滤)、攻击检测及防范等基于会话进行处理的业务而抽象出来的公共功能。此功能把传输层报文之间的交互关系抽象为会话,并根据发起方和响应方的报文信息对会话进行状态更新和老化,支持多个业务特性分别对同一个业务报文进行处理。

会话管理实现的主要功能包括:

·     报文到会话的快速匹配;

·     传输层协议状态的管理;

·     报文应用层协议类型的识别;

·     按照协议状态或应用层协议类型对会话进行老化;

·     支持指定的会话维持较为长时间的连接;

·     为需要进行端口协商的应用层协议提供特殊的报文匹配;

·     支持对ICMP/ICMPv6差错控制报文的解析以及根据解析结果进行会话的匹配。

1.1.1  会话管理的工作原理

会话管理主要基于传输层协议对报文进行检测。其实质是通过检测传输层协议信息来对连接的状态进行跟踪,并对所有连接的状态信息进行基于会话表和关联表的统一维护和管理。

客户端向服务器发起连接请求报文的时候,系统会创建一个会话表项。该表项中记录了一个会话所对应的请求报文信息和回应报文信息,包括源IP地址/端口号、目的IP地址/端口号、传输层协议类型、应用层协议类型、会话的协议状态等。对于多通道协议(特指部分应用协议中,客户端与服务器之间需要在已有连接基础上协商新的连接来完成一个应用),会话管理还会根据协议的协商情况,创建一个或多个(由具体的应用协议决定)关联表表项,用于关联属于同一个应用的不同会话。关联表项在多通道协议协商的过程中创建,完成对多通道协议的支持后即被删除。

上述会话管理的工作原理描述仅针对目的地址为单播地址的报文,对于目的地址是组播地址的报文稍有不同。组播报文到达设备后通常经由一个入接口到多个出接口进行转发,因此对于同一个应用的组播报文的连接,在入接口和多个出接口均会建立起各自的会话表项,我们称这类组播报文触发建立的会话表项为组播会话表项,以区别于单播报文触发建立的单播会话表项。若无特殊说明,本文中的会话表项不区分单播和组播类型。

在实际应用中,会话管理作为公共功能,只能实现连接状态的跟踪,并不能阻止潜在的攻击报文通过。会话管理配合ASPF特性,可实现根据连接状态信息动态地决定是否允许数据包通过设备进入内部区域,以便阻止恶意的入侵。

1.1.2  会话管理在设备上的实现

目前会话管理在设备上实现的具体功能如下:

·     支持对各协议报文创建会话、更新会话状态以及根据协议状态设置老化时间。

·     支持应用层协议的端口映射(参见“安全配置指导”中的“APR”),允许为应用层协议自定义对应的非通用端口号,同时可以根据应用层协议设置不同会话老化时间。

·     支持ICMP/ICMPv6差错报文的映射,可以根据ICMP/ICMPv6差错报文携带的信息查找原始的会话。

·     支持设置长连接会话,保证指定的会话在一段较长的时间内不会被老化。

·     支持应用层协议(如FTP)的控制通道和动态数据通道的会话管理。

1.2  配置会话管理

会话管理支持的配置包括:协议状态的会话老化时间、应用层协议的会话老化时间、长连接会话规则及删除会话、会话业务热备份及会话统计等。这些配置可根据实际应用需求选择进行,配置无先后顺序的要求,相互不关联。

长连接老化时间仅在TCP会话进入稳态(TCP-EST状态)时生效。在会话稳态时,长连接老化时间具有最高的优先级,其次为应用层协议老化时间,最后为协议状态老化时间。

1.2.1  配置协议状态会话老化时间

提示

当会话数目过多时,建议不要将协议状态老化时间设置得过短,否则会造成设备响应速度过慢。

 

以下配置用于实现根据会话所处协议状态来设置会话表项的老化时间。处于某协议状态的会话,如果在该协议状态老化时间内未被任何报文匹配,则会由于老化而被系统自动删除。

表1-1 配置各协议状态的会话老化时间

操作

命令

说明

进入系统视图

system-view

-

配置各协议状态的会话老化时间

session aging-time state { fin | icmp-reply | icmp-request | rawip-open | rawip-ready | syn | tcp-close | tcp-est | tcp-time-wait | udp-open | udp-ready } time-value

缺省情况下,各协议状态的会话老化时间为:

·     FIN:30秒

·     ICMP-REPLAY:30秒

·     ICMP-REQUEST:60秒

·     RAWIP-OPEN:30秒

·     RAWIP-READY:60秒

·     SYN:30秒

·     TCP-CLOSE:2秒

·     TCP-EST:3600秒

·     TCP-TIME-WAIT:2秒

·     UDP-OPEN:30秒

·     UDP-READY:60秒

 

1.2.2  配置应用层协议或应用的会话老化时间

·     当会话数目过多时,建议不要将应用层协议会话的老化时间设置得过短,否则会造成设备响应速度过慢。

·     老化时间的修改需要结合实际的使用场景,避免过大或过小,从而影响会话协议报文的正常交互。例如,FTP协议的会话老化时间若小于FTP保活报文发送的间隔,会造成FTP连接无法正常建立。

 

对于进入稳定状态的会话(TCP会话进入TCP-EST状态,UDP会话进入UDP-READY状态),还可以根据会话所属的应用层协议或应用设置老化时间。此类会话表项如果在一定时间内未被任何报文匹配,则会按照设置的应用层协议或应用会话老化时间老化。对于进入稳定状态的其它应用层协议的会话表项,则仍然遵循协议状态的会话老化时间进行老化。

此功能中的应用层协议或应用由APR模块定义,有关APR功能的详细介绍请参见“安全配置指导”中的“APR”。

表1-2 配置应用层协议或应用的会话老化时间

操作

命令

说明

进入系统视图

system-view

-

配置应用层协议或应用的会话老化时间

session aging-time application application-name time-value

缺省情况下,部分协议的会话老化时间如下,单位为秒:

·     DNS:1

·     FTP:3600

·     GTP-CONTROL:60

·     GTP-USER:60

·     GPRS-DATA:60

·     GPRS-SIG:60

·     H225、H245:3600

·     RAS、SIP:300

·     RTSP:3600

·     TFTP:60

·     ILS:3600

·     MGCP-CALLAGENT:60

·     MGCP-GATEWAY:60

·     PPTP:3600

·     RSH:60

·     SCCP:3600

·     SQLNET:600

·     XDMCP:3600

·     BOOTPC:120

·     BOOTPS:120

·     FTP-DATA:240

·     HTTPS:600

·     L2TP:120

·     NETBIOS-DGM:3600

·     NETBIOS-NS:3600

·     NETBIOS-SSN:3600

·     NTP:120

·     QQ:120

·     RIP:120

·     SNMP:120

·     SNMPTRAP:120

·     STUN:600

·     SYSLOG:120

·     TACACS-DS:120

·     WHO:120

其它预定义应用层协议和自定义应用层协议的缺省会话老化时间为1200秒

 

1.2.3  配置长连接会话规则

针对进入TCP-EST状态的TCP会话,用户可以根据需要将符合指定特征的TCP会话设置为长连接会话。长连接会话的老化时间不会随着状态的变迁而更改,可以将其设置得比普通会话的老化时间更长,或者设置成永不老化。被设置成永不老化的长连接会话,只有当会话的发起方或响应方主动发起关闭连接请求或管理员手动删除该会话时,才会被删除。

系统支持配置多条长连接会话规则。

表1-3 配置长连接会话规则

操作

命令

说明

进入系统视图

system-view

-

配置长连接会话规则

session persistent  acl [ ipv6 ] acl-number [ aging-time time-value ]

缺省情况下,无长连接会话规则

 

1.2.4  开启软件快速转发的会话统计功能

开启软件快速转发的会话统计功能之后,设备将对经软件快速转发收到和发送的基于会话的业务报文数目和报文字节数进行统计。基于单播会话的报文统计信息可通过display session table命令查看,基于单播报文类型的报文统计信息可通过display session statistics命令查看;基于组播会话的报文统计信息可通过display session table multicast命令查看,基于组播报文类型的报文统计信息可通过display session statistics multicast命令查看。

表1-4 开启软件快速转发的会话统计

操作

命令

说明

进入系统视图

system-view

-

开启软件快速转发的会话统计功能

session statistics enable

缺省情况下,软件快速转发的会话统计功能处于关闭状态

 

1.2.5  配置会话状态机为宽松模式

在非对称路径网络中,若设备上未开启会话业务热备份功能,则需要将会话状态机的模式配置为宽松模式,可以避免设备异常丢包。

在对称路径网络中,建议保持缺省状态,即严格模式。

表1-5 配置会话状态机为宽松模式

操作

命令

说明

进入系统视图

system-view

-

配置会话状态机为宽松模式

session state-machine mode loose

缺省情况下,会话状态机为严格模式

 

1.3  会话管理显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后会话的运行情况,通过查看显示信息验证配置的效果。

在用户视图下执行reset命令可以清除会话统计信息。

表1-6 会话管理显示和维护

操作

命令

显示应用层协议的会话老化时间

display session aging-time application

显示各协议状态的会话老化时间

display session aging-time state

显示IPv4单播会话表信息

display session table ipv4 [ [ responder ] { source-ip start-source-ip [ end-source-ip ] | destination-ip start-destination-ip [ end-destination-ip ] | protocol { dccp | icmp | raw-ip | sctp | tcp | udp | udp-lite } | source-port source-port | destination-port destination-port | application application-name | state { dccp-closereq | dccp-closing | dccp-open | dccp-partopen | dccp-request | dccp-respond | dccp-timewait | icmp-reply | icmp-request | rawip-open | rawip-ready | sctp-closed | sctp-cookie-echoed | sctp-cookie-wait | sctp-established | sctp-shutdown-ack-sent | sctp-shutdown-recd | sctp-shutdown-sent | tcp-close | tcp-close-wait | tcp-est | tcp-fin-wait | tcp-last-ack | tcp-syn-recv | tcp-syn-sent | tcp-syn-sent2 | tcp-time-wait | udp-open | udp-ready | udplite-open | udplite-ready } | vpn-instance vpn-instance-name } * ] [ verbose ]

显示IPv6单播会话表信息

display session table ipv6 [ [ responder ] { source-ip start-source-ip [ end-source-ip ] | destination-ip start-destination-ip [ end-destination-ip ] | protocol { dccp | icmpv6 | raw-ip | sctp | tcp | udp | udp-lite } | source-port source-port | destination-port destination-port | application application-name | state { dccp-closereq | dccp-closing | dccp-open | dccp-partopen | dccp-request | dccp-respond | dccp-timewait | icmpv6-reply | icmpv6-request | rawip-open | rawip-ready | sctp-closed | sctp-cookie-echoed | sctp-cookie-wait | sctp-established | sctp-shutdown-ack-sent | sctp-shutdown-recd | sctp-shutdown-sent | tcp-close | tcp-close-wait | tcp-est | tcp-fin-wait | tcp-last-ack | tcp-syn-recv | tcp-syn-sent | tcp-syn-sent2 | tcp-time-wait | udp-open | udp-ready | udplite-open | udplite-ready } | vpn-instance vpn-instance-name } * ] [ verbose ]

根据五元组显示IPv4单播会话统计信息

display session statistics ipv4 { source-ip source-ip | destination-ip destination-ip | protocol { dccp | dns | ftp | gtp | h323 I http | icmp | ils | mgcp | nbt | pptp | raw-ip | rsh | rtsp | sccp | sctp | sip | smtp | sqlnet | ssh | tcp | telnet | tftp | udp | udp-lite | xdmcp } | source-port source-port | destination-port destination-port } *

根据五元组显示IPv6单播会话统计信息

display session statistics ipv6 { source-ip source-ip | destination-ip destination-ip | protocol { dccp | dns | ftp | gtp | h323 I http | icmpv6 | ils | mgcp | nbt | pptp | raw-ip | rsh | rtsp | sccp | sctp | sip | smtp | sqlnet | ssh | tcp | telnet | tftp | udp | udp-lite | xdmcp } | source-port source-port | destination-port destination-port } *

显示单播会话统计的信息

display session statistics [ history-max | summary ]

显示IPv4组播会话表信息

display session table multicast ipv4 [ source-ip start-source-ip [ end-source-ip ] ] [ destination-ip start-destination-ip [ end-destination-ip ] ] [ protocol { dccp | icmp | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ verbose ]

显示IPv6组播会话表信息

display session table multicast ipv6 [ source-ip start-source-ip [ end-source-ip ] ] [ destination-ip start-destination-ip [ end-destination-ip ] ] [ protocol { dccp | icmpv6 | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ verbose ]

显示组播会话统计信息

display session statistics multicast

显示关联表信息

display session relation-table { ipv4 | ipv6 }

删除IPv4单播会话表项

reset session table ipv4 [ source-ip source-ip ] [ destination-ip destination-ip ] [ protocol { dccp | icmp | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ]

删除IPv6单播会话表项

reset session table ipv6 [ source-ip source-ip ] [ destination-ip destination-ip ] [ protocol { dccp | icmpv6 | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ]

删除所有单播会话项

reset session table

清除单播会话统计信息

reset session statistics

删除IPv4组播会话表项

reset session table multicast ipv4 [ source-ip source-ip ] [ destination-ip destination-ip ] [ protocol { dccp | icmp | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ]

删除IPv6组播会话表项(

reset session table multicast ipv6 [ source-ip source-ip ] [ destination-ip destination-ip ] [ protocol { dccp | icmpv6 | raw-ip | sctp | tcp | udp | udp-lite } ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ]

删除所有组播会话项

reset session table multicast

清除组播会话统计信息

reset session statistics multicast

删除关联表项

reset session relation-table [ ipv4 | ipv6 ]

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们