使用IP ACL实现单向访问控制
2010-05-25 00:00
645 查看
A公司准备实行薪资的不透明化管理,由于目前的薪资收入数据还放在财务部门的Vlan中,所以公司不希望市场和研发部门能访问到财务部Vlan中的数据,另一方面,财务部门做为公司的核心管理部门,又希望能访问到市场和研发部门Vlan内的数据。我们的网管在接到这个需求后就在SWA上做了如下的配置:
配置做完后,测试了一下,市场和研发部门确实访问不到财务部了,刚准备休息一下,财务部打电话过来说为访问不到市场与研发部门的数据了。这是怎么回事呢?
让我们回忆一下,在两台主机A与B之间要实现通讯,需要些什么条件呢?答案是既需要A能向B发包,也需要B能向A发包,任何一个方向的包被阻断,通讯都不能成功,在我们的例子中就存在这样的问题,财务部访问市场或研发部门时,包到到市场或研发部门的主机,由这些主机返回的包在到达路由器SWA时,由于普通的ACL均不具备检测会话状态的能力,就被deny ip any 10.1.4.0 0.0.0.255这条ACL给阻断了,所以访问不能成功。
要想实现真正意义上的单向访问控制应该怎么办呢?我们希望在财务部门访问市场和研发部门时,能在市场和研发部门的ACL中临时生成一个反向的ACL条目,这样就能实现单向访问了。这里就需要使用到反向ACL技术。我们可以按照如下配置实例就可以满足刚才的那个单向访问需求:
现在对反向ACL新增加的内容一一解释如下:
新增了一个ACL(fi-main)并应用在具备访问权限的接口下(财务部所在的vlan4)的in方向,使用该acl中具备reflect关键字的acl条目来捕捉建立反向ACL条目所需要的信息。我们将该ACL称为主ACL。
reflect r-main timeout xxx:其中的reflect关键字表明该条目可以用于捕捉建立反向的ACL条目所需要的信息。r-main是reflect组的名字,具备相同reflect组名字的所有的ACL条目为一个reflect组。timeout xxx表明由这条ACL条目所建立起来的反向ACL条目在没有流量的情况下,多长时间后会消失(缺省值为300秒),单位为秒。
evaluate r-main:我们注意到在fi-access-limit(我们把它称为反ACL)增加了这样一句,这一句的意思是有符合r-main这个reflect组中所定义的acl条目的流量发生时,在evaluate语句所在的当前位置动态生成一条反向的permit语句。
反向ACL的局限性:
必须使用命名的ACL,其实这不能叫局限性,应该算注意事项吧;
对多通道应用程序如h323之类无法提供支持。
好了,到现在我们从IP ACL的基础知识讲起,中间讲述了标准的IP ACL、扩展的IP ACL、基于名字的ACL、基于时间的ACL、反向ACL等诸多内容,这些ACL在ios的基本IP特性集中都能提供支持,在一般的企业网或校园网中也应该完全够用了。如果各位看官还需要了解更加深入的知识,如CBAC之类能够为多通道应用程序提供良好支持的配置技术的,请参考《Cisco IOS Security Configuration Guide,Part 3: Traffic Filtering and Firewalls》。
反射访问列表配置实例
========================
网络结构如下:
VLAN2:192.168.2.1 255.255.255.0
VLAN3:192.168.3.1 255.255.255.0
VLAN4:192.168.4.1 255.255.255.0
实现vlan2(总经理)能够访问VLAN3(财务)、VLAN4(员工),反之则不行;vlan3(财务)能够访问vlan4(员工)但不能访问vlan2(总经理);vlan4(员工)不能访问vlan2(总经理)和vlan3(财务)的三级访问策略
配置如下:
ip access ex vlan2_in
permit ip 192.168.2.0 0.0.0.255 192.168.3.0 0.0.0.255 reflect vlan2_3
permit ip 192.168.2.0 0.0.0.255 192.168.4.0 0.0.0.255 reflect vlan2_4
ip access ex vlan3_in
evaluate vlan2_3
per ip 192.168.3.0 0.0.0.255 192.168.4.0 0.0.0.255 reflect vlan3_4
ip access ex vlan4_in
evaluate vlan2_4
evaluate vlan3_4
int vlan 2
ip access vlan2_in in
int vlan 3
ip access vlan3_in in
int vlan 4
ip access vlan4_in in
以上测试均通过,在26路由器上做的。
客户的要求是网段192.168.10可以访问192.168.50.0 50.0不可以访问10
路由器配置
ip access-list extended dyx
permit tcp any 192.168.0.0 0.0.255.255 reflect r-main timeout 120
permit udp any 192.168.0.0 0.0.255.255 reflect r-main timeout 120
permit icmp any 192.168.0.0 0.0.255.255 reflect r-main timeout 120
ip access-list extended dyx-limit
evaluate r-main
deny ip any 192.168.10.0 0.0.0.255
permit ip any any
interface FastEthernet0/1
ip address 192.168.50.1 255.255.255.0 secondary
ip address 192.168.10.1 255.255.255.0
ip access-group dyx-limit in
2个网段的网关都为f0/1的地址
如果网关在不同的接口的话
假如192.168.50.0/24在f0/0 192.168.10.0/24 在F0/1
show run
interface FastEthernet0/0
ip address 192.168.50.1 255.255.255.0
ip access-group dyx-limit in
interface FastEthernet0/1
ip address 192.168.50.1 255.255.255.0
ip access-group dyx in
经测试 是可以的 达到单向效果
ip access-list extend fi-access-limit deny ip any 10.1.4.0 0.0.0.255 permit ip any any int vlan 5 ip access-group fi-access-limit in int vlan 6 ip access-group fi-access-limit in |
让我们回忆一下,在两台主机A与B之间要实现通讯,需要些什么条件呢?答案是既需要A能向B发包,也需要B能向A发包,任何一个方向的包被阻断,通讯都不能成功,在我们的例子中就存在这样的问题,财务部访问市场或研发部门时,包到到市场或研发部门的主机,由这些主机返回的包在到达路由器SWA时,由于普通的ACL均不具备检测会话状态的能力,就被deny ip any 10.1.4.0 0.0.0.255这条ACL给阻断了,所以访问不能成功。
要想实现真正意义上的单向访问控制应该怎么办呢?我们希望在财务部门访问市场和研发部门时,能在市场和研发部门的ACL中临时生成一个反向的ACL条目,这样就能实现单向访问了。这里就需要使用到反向ACL技术。我们可以按照如下配置实例就可以满足刚才的那个单向访问需求:
ip access-list extend fi-main permit tcp any 10.1.0.0 0.0.255.255 reflect r-main timeout 120 permit udp any 10.1.0.0 0.0.255.255 reflect r-main timeout 200 permit icmp any 10.1.0.0 0.0.255.255 reflect r-main timeout 10 permit ip any any int vlan 4 ip access-group fi-main in ip access-list extend fi-access-limit evaluate r-main deny ip any 10.1.4.0 0.0.0.255 permit ip any any int vlan 5 ip access-group fi-access-limit in int vlan 6 ip access-group fi-access-limit in |
新增了一个ACL(fi-main)并应用在具备访问权限的接口下(财务部所在的vlan4)的in方向,使用该acl中具备reflect关键字的acl条目来捕捉建立反向ACL条目所需要的信息。我们将该ACL称为主ACL。
reflect r-main timeout xxx:其中的reflect关键字表明该条目可以用于捕捉建立反向的ACL条目所需要的信息。r-main是reflect组的名字,具备相同reflect组名字的所有的ACL条目为一个reflect组。timeout xxx表明由这条ACL条目所建立起来的反向ACL条目在没有流量的情况下,多长时间后会消失(缺省值为300秒),单位为秒。
evaluate r-main:我们注意到在fi-access-limit(我们把它称为反ACL)增加了这样一句,这一句的意思是有符合r-main这个reflect组中所定义的acl条目的流量发生时,在evaluate语句所在的当前位置动态生成一条反向的permit语句。
反向ACL的局限性:
必须使用命名的ACL,其实这不能叫局限性,应该算注意事项吧;
对多通道应用程序如h323之类无法提供支持。
好了,到现在我们从IP ACL的基础知识讲起,中间讲述了标准的IP ACL、扩展的IP ACL、基于名字的ACL、基于时间的ACL、反向ACL等诸多内容,这些ACL在ios的基本IP特性集中都能提供支持,在一般的企业网或校园网中也应该完全够用了。如果各位看官还需要了解更加深入的知识,如CBAC之类能够为多通道应用程序提供良好支持的配置技术的,请参考《Cisco IOS Security Configuration Guide,Part 3: Traffic Filtering and Firewalls》。
反射访问列表配置实例
========================
网络结构如下:
VLAN2:192.168.2.1 255.255.255.0
VLAN3:192.168.3.1 255.255.255.0
VLAN4:192.168.4.1 255.255.255.0
实现vlan2(总经理)能够访问VLAN3(财务)、VLAN4(员工),反之则不行;vlan3(财务)能够访问vlan4(员工)但不能访问vlan2(总经理);vlan4(员工)不能访问vlan2(总经理)和vlan3(财务)的三级访问策略
配置如下:
ip access ex vlan2_in
permit ip 192.168.2.0 0.0.0.255 192.168.3.0 0.0.0.255 reflect vlan2_3
permit ip 192.168.2.0 0.0.0.255 192.168.4.0 0.0.0.255 reflect vlan2_4
ip access ex vlan3_in
evaluate vlan2_3
per ip 192.168.3.0 0.0.0.255 192.168.4.0 0.0.0.255 reflect vlan3_4
ip access ex vlan4_in
evaluate vlan2_4
evaluate vlan3_4
int vlan 2
ip access vlan2_in in
int vlan 3
ip access vlan3_in in
int vlan 4
ip access vlan4_in in
以上测试均通过,在26路由器上做的。
客户的要求是网段192.168.10可以访问192.168.50.0 50.0不可以访问10
路由器配置
ip access-list extended dyx
permit tcp any 192.168.0.0 0.0.255.255 reflect r-main timeout 120
permit udp any 192.168.0.0 0.0.255.255 reflect r-main timeout 120
permit icmp any 192.168.0.0 0.0.255.255 reflect r-main timeout 120
ip access-list extended dyx-limit
evaluate r-main
deny ip any 192.168.10.0 0.0.0.255
permit ip any any
interface FastEthernet0/1
ip address 192.168.50.1 255.255.255.0 secondary
ip address 192.168.10.1 255.255.255.0
ip access-group dyx-limit in
2个网段的网关都为f0/1的地址
如果网关在不同的接口的话
假如192.168.50.0/24在f0/0 192.168.10.0/24 在F0/1
show run
interface FastEthernet0/0
ip address 192.168.50.1 255.255.255.0
ip access-group dyx-limit in
interface FastEthernet0/1
ip address 192.168.50.1 255.255.255.0
ip access-group dyx in
经测试 是可以的 达到单向效果
相关文章推荐
- 使用IP ACL实现单向访问控制
- 使用交换机实现数据单向访问控制
- Linux下使用ACL命令实现控制用户的目录访问权限
- 使用自反ACL实现单向访问控制
- Apache2.4使用require指令进行访问控制--允许或限制IP访问/通过User-Agent禁止不友好网络爬虫 从Apache2.2升级到Apache2.4后,发现原来用来限制部分I
- apache禁止使用IP访问的实现方法
- FleaPHP 开发指南 - 8. 如何使用 RBAC 组件实现访问控制
- FleaPHP 开发指南 - 8. 如何使用 RBAC 组件实现访问控制
- FleaPHP 开发指南 - 8. 如何使用 RBAC 组件实现访问控制
- 实现单向访问控制 推荐
- qeephp 修改acl.yaml文件实现访问控制
- 四种apache禁止使用ip访问的实现方法
- 基于java过滤器实现web系统的IP访问控制
- 09暑假笔记(4)-Mediawiki使用Accesscontrol实现访问控制
- 华为交换机上IP与MAC绑定,建立访问控制列表,实现只有经批准的PC才能接入网络。
- Apache2.4使用require指令进行访问控制--允许或限制IP访问/通过User-Agent禁止不友好网络爬虫
- php 使用curl模拟ip和来源进行访问的实现方法
- 使用tcpwrapper实现访问控制功能
- [转]apache禁止使用IP访问的实现方法
- 使用tcpwrapper实现访问控制功能