12-会话管理配置
本章节下载: 12-会话管理配置 (192.73 KB)
目 录
会话管理是为了实现NAT、攻击检测及防范等基于会话进行处理的业务而抽象出来的公共功能。此功能把传输层报文之间的交互关系抽象为会话,并根据发起方或响应方的报文信息对会话进行状态更新和超时老化。
会话管理支持多个业务特性分别对同一个业务报文进行处理,实现的主要功能包括:
· 报文到会话的快速匹配;
· 传输层协议状态的管理;
· 报文应用层协议类型的识别;
· 支持会话按照协议状态进行老化;
· 为需要进行端口协商的应用层协议提供特殊的报文匹配;
· 支持对ICMP差错控制报文的解析以及根据解析结果进行会话的匹配。
会话管理主要基于传输层协议对报文进行检测。其实质是通过检测传输层协议信息(即通用TCP协议和UDP协议)来对连接的状态进行跟踪,并对所有连接的状态信息进行统一维护和管理。
需要注意的是,会话管理作为基础特性,只是实现连接跟踪,模块本身并不阻止潜在的攻击报文通过。
目前会话管理在设备上实现的具体功能如下:
· 支持TCP、UDP、ICMP、Raw IP等IPv4报文的会话创建、会话状态更新以及根据协议状态设置超时时间。
· 支持应用层协议的端口映射,允许为应用层协议自定义对应的非通用端口号。
· 支持ICMP差错报文的映射,可以根据ICMP差错报文的内层报文查找原始的会话。另外,由于差错报文都是由于某主机出错后产生的,因而可以加速该原始会话的超时老化。
· 支持应用层协议(如FTP等协议)的控制通道和动态数据通道的会话管理。
· 支持对基于会话的连接数目进行限制。相关介绍及配置请参见“三层技术-IP业务配置指导”中的“NAT”。
会话管理可支持的配置包括:协议状态超时时间及删除会话。这些配置可根据实际应用需求选择进行,配置无先后,相互不关联。
已经建立的会话表项如果在一定时间内未被任何报文匹配,则会由于超时而被系统自动删除。以下配置用于实现根据会话所处协议状态来设置会话表项的超时时间。
表1-1 配置各协议状态的会话超时时间
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置各协议状态的会话超时时间 |
session aging-time { accelerate | fin | icmp-closed | icmp-open | rawip-open | rawip-ready | syn | tcp-est | udp-open | udp-ready } time-value |
必选 缺省情况下,各协议状态的会话超时时间为: · accelerate:10s · fin:30s · icmp-closed:30s · icmp-open:60s · rawip-open:30s · rawip-ready:60s · syn:15s · tcp-est:300s。 · udp-open:30s · udp-ready:60s。 |
当会话数目过多时(大于80万条),建议不要将协议状态超时时间设置得过短。否则会造成控制台响应速度过慢。
此会话超时时间只对已经建立并处于READY/ESTABLISH状态的会话有效。
对于处于已建立状态的会话(TCP握手建立连接成功或UDP进入READY状态),用户可以根据会话所属的应用层协议类型设置超时时间。
表1-2 配置应用层协议会话超时时间
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置应用层协议的会话超时时间 |
application aging-time { dns | ftp | msn | qq | sip } time-value |
必选 缺省情况下,各应用层协议的会话超时时间为: · dns:60秒 · ftp:3600秒 · msn:3600秒 · qq:60秒 · sip:300秒 |
当会话数目过多时(大于80万条),建议不要将应用层协议会话的超时时间设置得过短,否则会造成控制台响应速度过慢。
对于单板丝印为IM-NAT和IM-NAT-II的单板,该配置不生效。
为保证对会话的连接跟踪不被校验和发生错误的报文所干扰,可以使能对协议报文的校验和检查功能。此功能可以确保会话管理只处理校验和正确的报文,而校验和错误的报文由基于会话管理的其它业务来处理。
表1-3 配置使能校验和检查
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
配置使能校验和检查 |
session checksum { all | { icmp | tcp | udp } * } |
必选 缺省情况下,不进行校验和检查 |
启用此功能后可能会导致设备处理性能下降,请慎用。
对于单板丝印为IM-NAT和IM-NAT-II的单板,该配置不生效。
用户可以根据需要将一些符合给定特征的会话设置为长连接会话,长连接会话的老化时间不会随着状态的变迁而更改,同时也不会由于没有报文命中而被删除。长连接会话可以设置比普通会话更长的老化时间(最长可以达到360小时),或者设置成永不老化。被设置成永不老化的长连接会话只有当会话的发起方或响应方主动发起关闭连接请求或管理员手动删除该会话时,才会被删除。
需要根据长连接会话特征配置基本或高级ACL(Access Control List,访问控制列表),满足该ACL规则的会话为长连接会话。
基本或高级访问控制列表的具体配置请参见“ACL和QoS配置指导”中的“ACL”。
表1-4 配置长连接会话规则
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置长连接会话规则 |
session persist acl acl-number [ aging-time time-value ] |
必选 缺省情况下,无长连接会话规则 |
一个长连接会话规则只能引用一个ACL。
通过以下配置可以手动删除会话。
表1-5 删除会话
操作 |
命令 |
说明 |
删除会话 |
reset session [ slot slot-num ] [ source-ip source-ip ] [ destination-ip destination-ip ] [ protocol-type protocol-type ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ] |
必选 此命令在用户视图下执行 |
会话日志是为满足网络管理员安全审计的需要,对用户的访问信息、用户IP地址的转换信息、用户的网络流量信息等进行的记录,可以通过一定的格式发给日志服务器主机。
表1-6 使能会话日志功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入NAT业务接口视图 |
interface nat interface-number |
- |
使能会话日志功能 |
session log enable [ acl acl-number ] |
必选 缺省情况下,会话日志功能处于关闭状态 |
存活时间达到时间阈值的会话才会以日志的形式进行记录并输出。
表1-7 配置会话日志阈值
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置输出会话日志的时间阈值 |
session log time-active time-value |
可选 缺省情况下,时间阈值为0,表示不依据时间阈值发送会话日志 |
会话日志采用Flow日志的形式输出,下面为具体的配置。关于Flow日志各项功能的具体介绍请参见“网络管理和监控配置指导”中的“Flow日志”,此处不做详细描述。
表1-8 配置会话日志的输出
操作 |
命令 |
说明 |
||
进入系统视图 |
system-view |
- |
||
配置Flow日志报文的版本号 |
userlog flow export version version-number |
可选 缺省情况下,Flow日志报文的版本号为1.0 |
||
配置Flow日志报文的源地址 |
userlog flow export source-ip ip-address |
可选 缺省情况下,Flow日志报文的源地址为发送该报文的接口的IP地址 |
||
配置Flow日志发送到日志服务器 |
设置Flow日志服务器的IPv4地址和UDP端口号 |
userlog flow export slot slot-number [ vpn-instance vpn-instance-name ] host ip-address udp-port |
必选 缺省情况下,没有配置Flow日志服务器的IPv4地址和UDP端口号 |
三者必选其一 如果同时配置了两种输出方式,则系统会自动选择输出到信息中心,而不会发送到日志服务器 |
设置Flow日志服务器的IPv6地址和UDP端口号 |
userlog flow export slot slot-number [ vpn-instance vpn-instance-name ] host ipv6 ipv6-address udp-por |
必选 缺省情况下,没有配置Flow日志服务器的IPv6地址和UDP端口号 |
||
配置Flow日志输出到信息中心 |
userlog flow syslog |
必选 缺省情况下,Flow日志输出到Flow日志服务器 |
· Flow日志不能通过隧道发送给日志服务器。
· 以上Flow日志的相关命令请参见“网络管理和监控配置指导”中的“Flow日志”。
在完成上述配置后,在任意视图下执行display命令可以显示配置后会话的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除FLOW日志缓存中的记录。
表1-9 会话管理显示和维护
操作 |
命令 |
显示应用层协议的会话超时时间 |
display application aging-time [ | { begin | exclude | include } regular-expression ] |
显示各协议状态的会话超时时间 |
display session aging-time [ | { begin | exclude | include } regular-expression ] |
显示会话表的信息 |
display session table [ slot slot-number ] [ source-ip source-ip ] [ destination-ip destination-ip ] [ protocol-type { icmp | raw-ip | tcp | udp } ] [ source-port source-port ] [ destination-port destination-port ] [ count | verbose ] [ | { begin | exclude | include } regular-expression ] |
显示会话统计信息 |
display session statistics [ slot slot-num ] [ | { begin | exclude | include } regular-expression ] |
显示会话关联表信息 |
display session relation-table [ slot slot-num ] [ | { begin | exclude | include } regular-expression ] |
查看日志的配置和统计信息 |
display userlog export slot slot-number [ | { begin | exclude | include } regular-expression ] |
删除会话表 |
reset session [ slot slot-num ] [ source-ip source-ip ] [ destination-ip destination-ip ] [ protocol-type protocol-type ] [ source-port source-port ] [ destination-port destination-port ] [ vpn-instance vpn-instance-name ] |
清除会话统计信息 |
reset session statistics [ slot slot-num ] |
清除指定槽位单板上日志的统计信息 |
reset userlog flow export slot slot-number |
清除设备缓存区中的Flow日志 |
reset userlog flow logbuffer slot slot-number |
display userlog export和reset userlog flow export命令的具体介绍请参见“三层技术-IP业务命令参考”中的“NAT”;reset userlog flow logbuffer命令的具体介绍请参见“网络管理和监控配置指导”中的“Flow日志”。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!