我在Cisco 2514系列访问路由器上安装了版本为12.2的IOS防火墙。在那个时候,这个路由器还在使用扩展ACL来过滤从互联网接口中进入的流量。在断开外部接口的电缆后,我整理并删除了现存的ACL,然后实现如下的IOS防火墙性能。
Router (config)# Access-list 101 deny tcp any any
Router (config)# Access-list 101 deny udp any any
Router (config)# interface serial0
Router (config-if)# Ip access-group 101 in
在以前的陈述中,当在外部接口上应用进入检查时是阻拦所有TCP和UDP。这对检查所有通过的TCP和UDP流量提供了一个过滤方法。 通过在外部的101端口应用访问列表,可以确保互联网的通信一到达互联网路由器就被截获。我也可疑通过指定特定的应用层协议来实现更具体细微的控制,就象这个例子一样:
Router (config)# Access-list 101 deny tcp any any eq smtp
这一说明可以将所有SMTP通信阻挡在内部网络之外。在访问列表中,这应该放在先前的TCP过滤说明之前,否则没有什么作用。
定义超时
这个过程的下一步骤就是在使用CBAC跟踪连接时定义超时和最大值。你可以定义几个不同的值来加强CBAC防御网络进攻的能力。在启动环境中,大多数超时和最大值设置都有一个缺省值,可疑满足一般的需求。许多超时和最大值控制着路由器对DoS攻击如何应答。(我将在其他时候就时钟/最大值做更深入的讨论。) 请记住CBAC并不检查ICMP,只检查TCP和UDP。因此,你需要增加相应的ACL入口来适当限制ICMP。考虑在你的ACL上增加这些ICMP入口。这样可以让你的内部
这是通用的配置命令模式。需要你在很短的时间内指定名称,协议,警报设置,审核,和超时值。现在,我们来创建一个自己的。
我已经命名了check-tcp规则,指定协议检测TCP,同时激活警报和审核选项。需要主意的是警报和审核跟踪选项。这需要一个Syslog系统来发送信息。尽管那个配置超出了本文讨论的范围,我还是要建议在记录所有防火墙活动时使用审核。在这里,我在外部接口应用了Serial1规则,如下:
Router (config)# Interface serial1
Router (config-if)# ip inspect check-tcp out
请注意我已经在外部接口上应用了对外流量的检测规则。这将跟踪检测由内部发起的连接和所有外部接口发往互联网或其他一些外部网络的通信的标题。
Router (config)# no ip inspect
这个命令将删除配置中的所有检测信息,包括过滤器规则和应用在接口上的命令行。
现在不再需要基本配置的详细资料了,让我们看一下用ACLs和CBAC检查功能配置一个互联网防火墙路由器。
由于在外部接口上访问列表被用来接收信息,这个基本的CBAC配置只允许有限的ICMP信息通过防火墙路由器。检测规则相当于filter1,它允许内部的用户通过HTTP端口和外界的WWW进行连接并跟踪这些连接,打开返回的状态信息,扩展访问列表。这对FTP和SMTP同样适用。在未来,如果我允许用户使用RealAudio或NetMeeting通道,我可以只是简单的使用add ip inspect 名称命令,其中filter1是名称。
如果想改变检查规则,你可以添加或删除某个行条目。如果想添加说明,通过使用和用户定义的规则相同的名称,用ip inspect 名称命令。如果需要删除某一行,使用no形式的ip inspect名称命令,看下面的例子:
Router (config)# ip inspect filter1 tcp
Router (config)# no ip inspect filter1 tcp
如果你想检查配置中的某一项,可以使用show ip inspect命令,得到CBAC安装详细资料。就象下面的:
Router# show ip inspect all
所有的参数将显示诸如当前检查的配置,当前通过防火墙的连接这样的信息。