40-H3C MSR系列路由器 ACL典型配置举例
本章节下载: 40-H3C MSR系列路由器 ACL典型配置举例 (270.77 KB)
H3C MSR系列路由器
ACL配置举例
Copyright © 2022 新华三技术有限公司 版权所有,保留一切权利。
非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传播。
除新华三技术有限公司的商标外,本手册中出现的其它公司的商标、产品标识及商品名称,由各自权利人拥有。
本文档中的信息可能变动,恕不另行通知。
目 录
本文档介绍了ACL(Access Control List,访问控制列表)的配置举例。
本文档适用于使用Comware V9软件版本的MSR系列路由器,如果使用过程中与产品实际情况有差异,请参考相关产品手册,或以设备实际情况为准。
本文档中的配置均是在实验室环境下进行的配置和验证,配置前设备的所有参数均采用出厂时的缺省配置。如果您已经对设备进行了配置,为了保证配置效果,请确认现有配置和以下举例中的配置不冲突。
本文假设您已了解ACL特性。
如图3-1所示,研发部和管理部均部署了网络视频设备,这些视频设备的MAC地址为000f-e2xx-xxxx,现要求限制这些设备仅每天的8:30到18:00才能够向外网发送数据。
图3-1 通过MAC地址过滤流量配置组网图
本举例是在MSR2630E-X1设备的R9119P16版本上进行配置和验证的。
在受限设备的IP地址不定时,可以通过MAC地址来进行匹配;而对于具有相同MAC地址前缀的多台设备,也可以通过MAC地址掩码的方式来进行同时匹配。
# 配置接口的IP地址。
<Device> system-view
[Device] interface gigabitethernet 0/0/1
[Device-GigabitEthernet0/0/1] ip address 10.1.1.1 24
[Device-GigabitEthernet0/0/1] quit
[Device] interface gigabitethernet 0/0/2
[Device-GigabitEthernet0/0/2] ip address 10.1.2.1 24
[Device-GigabitEthernet0/0/2] quit
[Device] interface gigabitethernet 0/0/3
[Device-GigabitEthernet0/0/3] ip address 200.1.1.2 24
[Device-GigabitEthernet0/0/3] quit
# 配置时间段time1,时间范围为每天的8:30~18:00。
[Device] time-range time1 8:30 to 18:00 daily
# 创建二层ACL 4000,定义规则为在time1时间段内允许源MAC地址前缀为000f-e2的所有报文通过,其他时间拒绝。
[Device] acl number 4000
[Device-acl-ethernetframe-4000] rule permit source-mac 000f-e200-0000 ffff-ff00-0000 time-range time1
[Device-acl-ethernetframe-4000] rule deny source-mac 000f-e200-0000 ffff-ff00-0000
[Device-acl-ethernetframe-4000] quit
# 配置包过滤功能,应用二层ACL 4000对端口GigabitEthernet0/0/1和GigabitEthernet0/0/2收到的报文进行过滤。
[Device] interface gigabitethernet 0/0/1
[Device-GigabitEthernet0/0/1] packet-filter 4000 inbound
[Device-GigabitEthernet0/0/1] quit
[Device] interface gigabitethernet 0/0/2
[Device-GigabitEthernet0/0/2] packet-filter 4000 inbound
[Device-GigabitEthernet0/0/2] quit
# 配置到外网的缺省路由。
[Device] ip route-static 0.0.0.0 0.0.0.0 200.1.1.1
# 执行display packet-filter命令查看包过滤功能的应用状态。
[Device] display packet-filter interface inbound
Interface: GigabitEthernet0/0/1
In-bound policy:
ACL 4000
MAC default action: Permit
Interface: GigabitEthernet0/0/2
In-bound policy:
ACL 4000
MAC default action: Permit
上述信息显示GigabitEthernet0/0/1和GigabitEthernet0/0/2端口上已经正确应用了包过滤功能。
在每天的8:30到18:00时间段内,视频设备可以正常与外网中的设备进行通信;在其它时间段内,视频设备无法与外网中的设备进行通信。
#
interface GigabitEthernet0/0/1
port link-mode route
combo enable copper
ip address 10.1.1.1 255.255.255.0
packet-filter 4000 inbound
#
interface GigabitEthernet0/0/2
port link-mode route
combo enable copper
ip address 10.1.2.1 255.255.255.0
packet-filter 4000 inbound
#
interface GigabitEthernet0/0/3
port link-mode route
combo enable copper
ip address 200.1.1.2 255.255.255.0
#
ip route-static 0.0.0.0 0 200.1.1.1
#
time-range time1 08:30 to 18:00 daily
#
acl number 4000
rule 0 permit source-mac 000f-e200-0000 ffff-ff00-0000 time-range time1
rule 5 deny source-mac 000f-e200-0000 ffff-ff00-0000
如图4-1所示,某公司的网络分成管理部、研发部和服务器三个区域,通过Device设备与Internet连接。现要求通过ACL实现:
· 管理部任意时间都可以访问Internet和服务器,但不能访问研发部;
· 研发部在工作时间(周一至周五的8:30~18:00)只能访问服务器,不能访问Internet和管理部;非工作时间可以访问Internet和服务器,但不能访问管理部。
图4-1 通过IP地址过滤流量配置组网图
本举例是在MSR2630E-X1设备的R9119P16版本上进行配置和验证的。
· 为实现管理部不能访问研发部,需要创建ACL配置规则拒绝目的地址为10.1.2.0/24的报文,在Device的GigabitEthernet0/0/4的入方向进行过滤;
· 为实现研发部在工作时间只能访问服务器,需要创建ACL配置规则只允许目的地址为10.1.3.0/24的报文通过,并指定规则的生效时间段,在Device的GigabitEthernet0/0/3的入方向上进行过滤;
· 为实现研发部在非工作时间不能访问管理部,需要创建ACL配置规则拒绝目的地址为10.1.1.0/24的报文,在Device的GigabitEthernet0/0/3的入方向上进行过滤;
· 缺省情况下,ACL规则的匹配顺序为配置顺序,因此在此例中,需要先创建指定时间段内只允许目的地址为10.1.3.0/24报文通过的规则,再创建指定时间段内拒绝其他报文通过的规则。
# 配置接口GigabitEthernet0/0/2的IP地址。
<Device> system-view
[Device] interface gigabitethernet 0/0/2
[Device-GigabitEthernet0/0/2] ip address 200.1.1.2 24
[Device-GigabitEthernet0/0/2] quit
# 请参考以上方法配置其他接口的IP地址,具体配置步骤省略。
(2) 配置到外网的缺省路由
[Device] ip route-static 0.0.0.0 0.0.0.0 200.1.1.1
(3) 配置管理部的网络权限
# 创建IPv4高级ACL 3000。
[Device] acl number 3000
# 创建规则,过滤目的地址为10.1.2.0/24网段的报文。
[Device-acl-adv-3000] rule deny ip destination 10.1.2.0 0.0.0.255
[Device-acl-adv-3000] quit
# 配置包过滤功能,应用IPv4高级ACL 3000对端口GigabitEthernet0/0/4收到的IP报文进行过滤。
[Device] interface gigabitethernet 0/0/4
[Device-GigabitEthernet0/0/4] packet-filter 3000 inbound
[Device-GigabitEthernet0/0/4] quit
(4) 配置研发部的网络权限
# 配置时间段worktime,指定周一至周五的8:30~18:00为工作时间。
[Device] time-range worktime 8:30 to 18:00 working-day
# 创建IPv4高级ACL 3001。
[Device] acl number 3001
# 创建规则,允许时间段内目的地址为10.1.3.0/24网段的报文通过。
[Device-acl-adv-3001] rule permit ip destination 10.1.3.0 0.0.0.255 time-range worktime
# 创建规则,过滤时间段内其他的报文。
[Device-acl-adv-3001] rule deny ip time-range worktime
# 创建规则,过滤目的地址为10.1.1.0/24网段的报文。
[Device-acl-adv-3001] rule deny ip destination 10.1.1.0 0.0.0.255
[Device-acl-adv-3001] quit
# 配置包过滤功能,应用IPv4高级ACL 3001对端口GigabitEthernet0/0/3收到的IP报文进行过滤。
[Device] interface gigabitethernet 0/0/3
[Device-GigabitEthernet0/0/3] packet-filter 3001 inbound
[Device-GigabitEthernet0/0/3] quit
# 执行display packet-filter命令查看包过滤功能的应用状态。
[Device] display packet-filter interface inbound
Interface: GigabitEthernet0/0/3
In-bound policy:
ACL 3001
IPv4 default action: Permit
Interface: GigabitEthernet0/0/4
In-bound policy:
ACL 3000
IPv4 default action: Permit
上述信息显示GigabitEthernet0/0/3和GigabitEthernet0/0/4端口上已经正确应用了包过滤功能。
# 在周一的上午9:30,从研发部的某台电脑上ping Internet上某个网站(此网站仅为示例,请根据实际情况进行验证),结果无法ping通。
C:\>ping www.abc.com
Pinging www.abc.com [199.181.132.250] with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
Request timed out.
Ping statistics for 199.181.132.250:
Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
C:\>
# 在周一的上午9:30,从管理部的某台电脑上ping Internet上某个网站,结果可以ping通。
C:\>ping www.abc.com
Pinging www.abc.com [199.181.132.250] with 32 bytes of data:
Reply from 199.181.132.250: bytes=32 time=1ms TTL=122
Reply from 199.181.132.250: bytes=32 time<1ms TTL=122
Reply from 199.181.132.250: bytes=32 time<1ms TTL=122
Reply from 199.181.132.250: bytes=32 time<1ms TTL=122
Ping statistics for 199.181.132.250:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 1ms, Average = 0ms
C:\>
# 在周一的晚上19:30,从研发部的某台电脑上ping Internet上某个网站,结果可以ping通。
C:\>ping www.abc.com
Pinging www.abc.com [199.181.132.250] with 32 bytes of data:
Reply from 199.181.132.250: bytes=32 time=1ms TTL=122
Reply from 199.181.132.250: bytes=32 time<1ms TTL=122
Reply from 199.181.132.250: bytes=32 time<1ms TTL=122
Reply from 199.181.132.250: bytes=32 time<1ms TTL=122
Ping statistics for 199.181.132.250:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 1ms, Average = 0ms
C:\>
#
interface GigabitEthernet0/0/2
port link-mode route
combo enable copper
ip address 200.1.1.2 255.255.255.0
#
interface GigabitEthernet0/0/1
port link-mode route
combo enable copper
ip address 10.1.3.1 255.255.255.0
#
interface GigabitEthernet0/0/3
port link-mode route
combo enable copper
ip address 10.1.2.1 255.255.255.0
packet-filter 3001 inbound
#
interface GigabitEthernet0/0/4
port link-mode route
combo enable copper
ip address 10.1.1.1 255.255.255.0
packet-filter 3000 inbound
#
ip route-static 0.0.0.0 0 200.1.1.1
#
time-range worktime 08:30 to 18:00 working-day
#
acl number 3000
rule 0 deny ip destination 10.1.2.0 0.0.0.255
#
acl number 3001
rule 0 permit ip destination 10.1.3.0 0.0.0.255 time-range worktime
rule 5 deny ip time-range worktime
rule 10 deny ip destination 10.1.1.0 0.0.0.255
#
如图5-1所示,某公司的网络分成管理部、研发部和服务器三个区域,通过Device设备互相连接。现要求通过ACL实现:
· Web服务器只能向管理部的主机提供HTTP服务,且仅允许由主机向服务器发起和建立TCP连接,不允许由服务器向主机发起TCP连接;
· FTP服务器只能向研发部的主机提供FTP服务,主机与FTP服务器之间进行通信时,不对TCP连接发起方进行限制;
图5-1 通过指定的TCP协议过滤流量配置组网图
本举例是在MSR2630E-X1设备的R9119P16版本上进行配置和验证的。
· 为了实现主机与Web服务器之间进行通信时,仅允许由主机向Web服务器发起和建立TCP连接,需要在高级ACL的规则中,指定established参数,用于匹配TCP报文头中ACK或RST置位的报文,即在已建立的TCP连接上传输的报文。
· 由于TCP连接发起方一般使用大于1023的TCP端口号,因此,由Web服务器向主机发送的端口号大于1023、且ACK或RST位置位的报文,应视作已经存在的TCP连接,应该允许通过。其余的由Web服务器向主机发送的TCP报文都应拒绝通过。
· 要过滤FTP报文,需要同时拒绝FTP数据报文(TCP端口号20)和控制报文(TCP端口号21)通过。
· 要过滤HTTP服务,需要配置拒绝TCP目的端口号为80的报文(HTTP)通过的规则。
(1) 配置接口的IP地址
# 配置接口GigabitEthernet0/0/1的IP地址。
[Device] interface gigabitethernet 0/0/1
[Device-GigabitEthernet0/0/1] ip address 100.1.1.1 24
# 请参考以上方法配置其他接口的IP地址,具体配置步骤省略。
(2) 配置管理部的网络权限
# 创建IPv4高级ACL 3000。
<Device> system-view
[Device] acl number 3000
# 创建规则,允许源地址为100.1.1.2、目的地址为10.1.1.0/24网段、目的TCP端口号大于1023、且ACK或RST位置位的报文通过。
[Device-acl-adv-3000] rule permit tcp established source 100.1.1.2 0 destination 10.1.1.0 0.0.0.255 destination-port gt 1023
# 创建规则,拒绝源地址为100.1.1.0/24、目的地址为10.1.1.0/24网段的TCP报文通过。
[Device-acl-adv-3000] rule deny tcp source 100.1.1.0 0.0.0.255 destination 10.1.1.0 0.0.0.255
# 创建规则,拒绝源地址为100.1.1.3的FTP报文通过。
[Device-acl-adv-3000] rule deny tcp source 100.1.1.3 0 source-port range 20 21
[Device-acl-adv-3000] quit
# 配置包过滤功能,应用IPv4高级ACL 3000对端口GigabitEthernet0/0/3发出的报文进行过滤。
[Device] interface gigabitethernet 0/0/3
[Device-GigabitEthernet0/0/3] packet-filter 3000 outbound
[Device-GigabitEthernet0/0/3] quit
(3) 配置研发部的网络权限
# 创建IPv4高级ACL 3001,配置规则拒绝源地址为100.1.1.2的HTTP报文通过。
[Device] acl number 3001
[Device-acl-adv-3001] rule deny tcp source 100.1.1.2 0 source-port eq 80
[Device-acl-adv-3001] quit
# 配置包过滤功能,应用IPv4高级ACL 3001对端口GigabitEthernet0/0/2发出的报文进行过滤。
[Device] interface gigabitethernet 0/0/2
[Device-GigabitEthernet0/0/2] packet-filter 3001 outbound
[Device-GigabitEthernet0/0/2] quit
# 执行display packet-filter命令查看包过滤功能的应用状态。
[Device] display packet-filter interface outbound
Interface: GigabitEthernet0/0/2
Out-bound policy:
ACL 3001
IPv4 default action: Permit
Interface: GigabitEthernet0/0/3
Out-bound policy:
ACL 3000
IPv4 default action: Permit
上述信息显示GigabitEthernet0/0/2和GigabitEthernet0/0/3端口上已经正确应用了包过滤功能。
# 在管理部的主机执行telnet 100.1.1.3 21命令测试是否可以访问FTP服务器的21端口。
C:\>telnet 100.1.1.3 21
Connecting To 100.1.1.3...Could not open connection to the host, on port 21:
Connect failed
C:\>
上述信息显示管理部的主机无法访问FTP服务器的21端口。
# 在管理部某台主机上设置共享文件夹,然后从Web服务器上ping该主机,可以ping通,但是无法访问共享文件夹。
C:\>ping 10.1.1.110
Pinging 10.1.1.110 with 32 bytes of data:
Reply from 10.1.1.110: bytes=32 time=2ms TTL=128
Reply from 10.1.1.110: bytes=32 time=14ms TTL=128
Reply from 10.1.1.110: bytes=32 time=1ms TTL=128
Reply from 10.1.1.110: bytes=32 time=1ms TTL=128
Ping statistics for 10.1.1.110:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 1ms, Maximum = 14ms, Average = 4ms
C:\>
# 在研发部的主机执行telnet 100.1.1.2 80命令测试是否可以访问Web服务器的80端口。
C:\>telnet 100.1.1.2 80
Connecting To 100.1.1.2...Could not open connection to the host, on port 80:
Connect failed
C:\>
上述信息显示管理部的主机无法访问FTP服务器的21端口。
#
interface GigabitEthernet0/0/1
port link-mode route
combo enable copper
ip address 100.1.1.1 255.255.255.0
#
interface GigabitEthernet0/0/2
port link-mode route
combo enable copper
ip address 10.1.2.1 255.255.255.0
packet-filter 3001 outbound
#
interface GigabitEthernet0/0/3
port link-mode route
combo enable copper
ip address 10.1.1.1 255.255.255.0
packet-filter 3000 outbound
#
acl number 3000
rule 0 permit tcp source 100.1.1.2 0 destination 10.1.1.0 0.0.0.255 destination
-port gt 1023 established
rule 5 deny tcp source 100.1.1.0 0.0.0.255 destination 10.1.1.0 0.0.0.255
rule 10 deny tcp source 100.1.1.3 0 source-port range ftp-data ftp
#
acl number 3001
rule 0 deny tcp source 100.1.1.2 0 source-port eq www
· 《H3C MSR1000[2600][3600]路由器 配置指导(V9)》中的“ACL和QoS配置指导”
· 《H3C MSR1000[2600][3600]路由器 命令参考(V9)》中的“ACL和QoS命令参考”
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!