防火墙基于策略路由的配置技巧
防火墙主要由服务访问规则、验证工具、包过滤和应用网关4个部分组成,防火墙就是一个位于计算机和它所连接的网络之间的软件或硬件。 那么防火墙基于策略路由的配置技巧方法有哪些呢?
具体介绍
问题描述:您可以定义自己的规则来进行数据包的路由而不仅仅由目的地地址所决定。在这里您可以学到怎么使用基于策略路由的办法来解决这一问题。在具体的应用中,基于策略的路由有:
☆ 基于源IP地址的策略路由
☆ 基于数据包大小的策略路由
☆ 基于应用的策略路由
☆ 通过缺省路由平衡负载
这里,讲述了第一种情况的路由策略
举例:在这个例子中,防火墙的作用是:把10.0.0.0/8内部网地址翻译成可路由的172.16.255.0/24子网地址。
下面的防火墙配置是为了完整性而加进去的,它不是策略路由配置所必需的。在这里的防火墙可以被其它类似的产品代替,如PIX或其它类似防火墙设备。这里的防火墙的配置如下:
access-list 1 permit 10.0.0.0 0.255.255.255
ip nat pool net-10 172.16.255.1 172.16.255.254 prefix-length 24
ip nat inside source list 1 pool net-10
interface Ethernet0
ip address 172.16.20.2 255.255.255.0
ip nat outside
interface Ethernet1
ip address 172.16.39.2 255.255.255.0
ip nat inside
router eigrp 1
network 172.16.0.0
default-metric 10000 100 255 1 1500
ip route 172.16.255.0 255.255.255.0 Null0
end
在我们的例子中,Cisco WAN路由器上运行策略路由来保证从10.0.0.0/8网络来的IP数据包被发送到防火墙去。配置中定义了两条net-10策略规则。第一条策略就定义了从10.0.0.0/8网络来的IP数据包被发送到防火墙去(我们很快会看到这里的配置有问题)。而第二条规则允许所有的其它数据包能按正常路由。这里的Cisco WAN路由器的配置如下:
interface Ethernet0/0
ip address 172.16.187.3 255.255.255.0
interface Ethernet0/1
ip address 172.16.39.3 255.255.255.0
interface Ethernet3/0
ip address 172.16.79.3 255.255.255.0
ip policy route-map net-10
router eigrp 1
network 172.16.0.0
access-list 110 permit ip 10.0.0.0 0.255.255.255 172.16.36.0 0.0.0.255
access-list 111 permit ip 10.0.0.0 0.255.255.255 any
route-map net-10 permit 10
match ip address 111
set interface Ethernet0/1
route-map net-10 permit 20
end
我们可以这样测试我们所做的配置。在名为Cisco-1的路由器10.1.1.1上发送ping命令到Internet上的一个主机(这里就是192.1.1.1主机)。要查看名为Internet Router的路由器上的情况,我们在特权命令模式下执行debug ip packet 101 detail命令。(其中,在此路由器上有access-list 101 permit icmp any any配置命令)。下面是输出结果:
Results of ping from Cisco-1 to 192.1.1.1/internet taken from Internet_Router:
Pakcet never makes it to Internet_Router
正如您所看到的:数据包没有到达Internet_Router路由器。下面的在Cisco WAN路由器上的debug命令给出了原因:
Debug commands run from Cisco_WAN_Router:
"debug ip policy"
2d15h: IP: s=10.1.1.1 (Ethernet3/0), d=192.1.1.1, len 100, policy match
2d15h: IP: route map net-10, item 10, permit
2d15h: IP: s=10.1.1.1 (Ethernet3/0), d=192.1.1.1 (Ethernet0/1), len 100, policy routed
2d15h: IP: Ethernet3/0 to Ethernet0/1 192.1.1.1
这里,数据包确实匹配了net-10策略图中的第一条规则。但为什么还是没有达到预期的目的呢?用"debug arp"来看一下。
"debug arp"
2d15h: IP ARP: sent req src 172.16.39.3 0010.7bcf.5b02,
dst 192.1.1.1 0000.0000.0000 Ethernet0/1
2d15h: IP ARP rep filtered src 192.1.1.1 00e0.b064.243d, dst 172.16.39.3 0010.7bcf.5b02
wrong cable, interface Ethernet0/1
debug arp的输出给出了原因。路由器努力完成它被指示要做的动作,而且试图把数据包发向Ethernet0/1接口,但失败了。这要求路由器为目的地址192.1.1.1执行地址解析协议操作,当执行该任务时,路由器知道了目的地址不处于该接口。接下来,路由器发生封装错误。所以,最后数据包不能到达192.1.1.1。
我们怎样避免这个问题呢?修改路由图使防火墙地址为下一跳。
Config changed on Cisco_WAN_Router:
!
route-map net-10 permit 10
match ip address 111
set ip next-hop 172.16.39.2
!
修改后,在Internet Router上运行同样的命令:debug ip packet 101 detail。这时,数据包可以按配置前进。我们也能看到数据包被防火墙翻译成了172.16.255.1。192.1.1.1主机的回应:
Results of ping from Cisco_1 to 192.1.1.1/internet taken from Internet_Router:
2d15h: IP: s=172.16.255.1 (Ethernet1), d=192.1.1.1 (Serial0), g=192.1.1.1, len 100, forward
2d15h: ICMP type=8, code=0
2d15h:
2d15h: IP: s=192.1.1.1 (Serial0), d=172.16.255.1 (Ethernet1), g=172.16.20.2, len 100, forward
2d15h: ICMP type=0, code=0
2d15h:
在Cisco WAN路由器上执行debug ip policy命令后,我们可以看到数据包被传递到了防火墙,172.16.39.2:
Debug commands run from Cisco_WAN_Router:
"debug ip policy"
2d15h: IP: s=10.1.1.1 (Ethernet3/0), d=192.1.1.1, len 100, policy match
2d15h: IP: route map net-10, item 20, permit
2d15h: IP: s=10.1.1.1 (Ethernet3/0), d=192.1.1.1 (Ethernet0/1), len 100, policy routed
2d15h: IP: Ethernet3/0 to Ethernet0/1 172.16.39.2
补充阅读:防火墙主要使用技巧
一、所有的防火墙文件规则必须更改。
尽管这种方法听起来很容易,但是由于防火墙没有内置的变动管理流程,因此文件更改对于许多企业来说都不是最佳的实践方法。如果防火墙管理员因为突发情况或者一些其他形式的业务中断做出更改,那么他撞到枪口上的可能性就会比较大。但是如果这种更改抵消了之前的协议更改,会导致宕机吗?这是一个相当高发的状况。
防火墙管理产品的中央控制台能全面可视所有的防火墙规则基础,因此团队的所有成员都必须达成共识,观察谁进行了何种更改。这样就能及时发现并修理故障,让整个协议管理更加简单和高效。
二、以最小的权限安装所有的访问规则。
另一个常见的安全问题是权限过度的规则设置。防火墙规则是由三个域构成的:即源(IP地址),目的地(网络/子网络)和服务(应用软件或者其他目的地)。为了确保每个用户都有足够的端口来访问他们所需的系统,常用方法是在一个或者更多域内指定打来那个的目标对象。当你出于业务持续性的需要允许大范围的IP地址来访问大型企业的网络,这些规则就会变得权限过度释放,因此就会增加不安全因素。服务域的规则是开放65535个TCP端口的ANY。防火墙管理员真的就意味着为黑客开放了65535个攻击矢量?
三、根据法规协议和更改需求来校验每项防火墙的更改。
在防火墙操作中,日常工作都是以寻找问题,修正问题和安装新系统为中心的。在安装最新防火墙规则来解决问题,应用新产品和业务部门的过程中,我们经常会遗忘防火墙也是企业安全协议的物理执行者。每项规则都应该重新审核来确保它能符合安全协议和任何法规协议的内容和精神,而不仅是一篇法律条文。
四、当服务过期后从防火墙规则中删除无用的规则。
规则膨胀是防火墙经常会出现的安全问题,因为多数运作团队都没有删除规则的流程。业务部门擅长让你知道他们了解这些新规则,却从来不会让防火墙团队知道他们不再使用某些服务了。了解退役的服务器和网络以及应用软件更新周期对于达成规则共识是个好的开始。运行无用规则的报表是另外一步。黑客喜欢从来不删除规则的防火墙团队。
防火墙基于策略路由的配置技巧相关文章: