访问控制列表(二)

访问控制列表(二)

n 扩展访问控制列表的配置

1. 创建ACL

命令语法如下:

Router(config)# access-list access-list-number { permit | deny } protocol { source source-wildcard destination destination-wildcard } [ operator operan ]

下面是命令参数的详细说明:

? access-list-number访问控制列表表号,对于扩展ACL来说,是100-199的一个数字。

? permit|deny如果满足测试条件,则允许|拒绝该通信流量。

? protocol用来指定协议类型,如IP、TCP、UDP、ICMP等。

? source、destination:源和目的,分别用来标识源地址和目的地址

? source-wildcard、destination-wildcard:反码,source-wildcard是源反码,与源地址向对应;destination-wildcard是目的反码,与目的地址对应。

? operator operanlt(小于)、gt(大于)、eq(等于)或neq(不等于)一个端口号。

例1 允许网络192.168.1.0/24访问网络192.168.2.0/24的IP流量通过,而拒绝其他任何流量,ACL命令如下所示:

Router(config)# access-list 101 permit ip 192.168.2.0/24 0.0.0.255 192.168.2.0 0.0.0.255

Router(config)# access-list 101 deny ip any any

例2 拒绝网络192.168.1.0/24访问FTP服务器192.168.2.2/24的IP流量通过,而允许其他任何流量,ACL命令如下所述:

Router(config)# access-list 101 deny tcp 192.168.1.0 0.0.0.255 host 192.168.2.2 eq 21

Router(config)# access-list 101 permit ip any any

例3 禁止网络192.168.1.0/24中的主机ping通服务器192.168.2.2/24,而允许其他任何流量,ACL命令如下所述:

Router(config)# access-list 101 deny icmp 192.168.1.0 0.0.0.255 host 192.168.2.2 echo

Router(config)# access-list 101 permit ip any any

删除已建立的扩展ACL命令语法与标准ACL一样,如下所示:

Router(config)# no access-list access-list-number

扩展ACL与标准ACL一样,也不能删除单条ACL语句,只能删除整个ACL。

2. 将ACL应用于接口

与标准ACL一样,只有将ACL应用于接口,ACL才会生效。

命令语法与标准ACL一样,如下所示:

Router(config-if)# ip access-group access-list-number {in | out}

要在接口上取消ACL的应用,可以使用如下命令:

Router(config-if)# no ip access-group access-list-number {in | out}

n 扩展ACL的配置实例

clip_image002

实验要求:

? 拓扑图如上所示,现允许主机PC1访问Web服务器的WWW服务,而禁止主机PC1访问Web服务器的其他任何服务。

? 允许主机PC1访问网络192.168.2.0/24。

配置步骤:

1. 配置全网互通。

2. 分析在哪个接口应用扩展ACL

? 应用在入站接口还是出站接口

与标准ACL一样,应该尽量把访问控制列表应用到入站接口

? 应用在哪台路由器上

由于扩展ACL可以根据源IP地址、目的IP地址、指定协议、端口等过滤数据包,因此最好应用到路由器R1的入站接口。如果应用在路由器R2或R3的入站接口上,会导致所经过的路由器占用不必要的资源。也就是说,应该把扩展ACL应用在离源地址最近的路由器上。

3. 配置扩展ACL并应用到接口上。

命令如下:

clip_image004

4. 查看并验证配置

? 使用show access-list命令查看ACL配置。

clip_image005

? 验证配置

u 在PC1上可以访问Web服务器的WWW服务,但不能ping通Web服务器

clip_image006

u 在PC1上可以ping通网络192.168.2.0/24中的任一台主机

clip_image007

n 命令访问控制列表的配置

1. 创建ACL

命令语法如下:

Router(config)# ip access-list {standard | extended} access-list-name

参数access-list-name可以使用一个由字母、数字组合的字符串

如果是标准命令ACL,命令语法如下所述:

Router(config-std-nacl)# [Sequence-Number] {permit | deny} source [source-wildcard]

如果是扩展命名ACL,命令语法如下所述:

Router(config-std-nacl)# [Sequence-Number] { permit | deny } protocol {source source-wildcard destination destination-wildcard} [ operator operan ]

无论是配置标准命名ACL语句还是配置扩展命名ACL语句,都有一个可选参数Sequence-Number。Sequence-Number参数表明了配置的ACL语句在命令ACL中所处的位置,默认情况下,第一条为10,第二条为20,依次类推。

Sequence-Number可以很方便的将新添加的ACL语句插入到原有的ACL列表的指定位置,如果不选择Sequence-Number,参数就会添加到ACL列表末尾并且序列号加10。

例4 允许来自主机192.168.1.1/24的流量通过,而拒绝其他流量,标准命名ACL命令如下所述:

Router(config)# ip access-list standard cisco

Router(config-std-nacl)# permit host 192.168.1.1

Router(config-std-nacl)# deny any

使用show access-list命令查看ACL配置,结果如下所述:

Router# show access-list

Standard IP access-list cisco //标准访问控制列表cisco

10 permit 192.168.1.1 //配置的第1条ACL语句序列号为10

20 deny any //配置的第2条ACL语句序列号为20

此时更改需求,除允许来自主机192.168.1.1/24的流量通过外,也允许来自主机192.168.2.1/24的流量通过,可以进行如下配置:

Router(config)# ip access-list standard cisco

Router(config-std-nacl)# 15 permit host 192.168.2.1 //配置ACL语 句序列号为15

再次查看配置的ACL,结果如下:

Router# show access-list

Standard IP access-list cisco

10 permit 192.168.1.1

15 permit 192.168.2.1 //新配置的ACL语句,放到了ACL列表的指 定位置

20 deny any

注意:如果不指定序列号,则新添加的ACL被添加到列表的末尾。

例5 拒绝网络192.168.1.0/24访问FTP服务器192.168.2.2/24的流量通过,而允许其他任何流量,扩展命名ACL命令如下所述:

Router(config)# ip access-list extended cisco

Router(config-ext-nacl)# deny tcp 192.168.1.0 0.0.0.255 host 192.168.2.2 eq 21

Router(config-ext-nacl)# permit ip any any

删除已建立的命令ACL

命令语法如下:

Router(config)# no ip access-list {standard | extended} access-list-name

对命名ACL来说,可以删除单条ACL语句,而不必删除整个ACL。并且,ACL语句可以有选择的插入到列表中的某个位置,使得ACL配置更加方便灵活。

如果要删除某一ACL语句,可以使用“no Sequence-Number”或“no ACL语句”两种方式。例如,在例1中删除“permit host 192.168.1.1”的语句命令如下:

Router(config)# ip access-list standard cisco

Router(config-std-nacl)# no 10

Router(config)# ip access-list standard cisco

Router(config-std-nacl)# no permit host 192.168.1.1

2. 将ACL应用于接口

创建命令ACL后,也必须将ACL应用于接口才会生效。

命令语法如下:

Router(config-if)# ip access-group access-list-name {in | out}

要在接口上取消命令ACL的应用,可以使用如下命令:

Router(config-if)# no ip access-group access-list-name {in | out}

n 命名ACL配置实例

clip_image009

实验要求:

一.公司新建了一台服务器(IP地址:192.168.2.2),出于安全方面考虑要求如下:

? 192.168.1.0/24网段中除192.168.1.1和192.168.1.3外的其余地址都不能访问服务器。

? 其他公司网段都可以访问服务器。

具体步骤:

1. 拓扑图如上所示,配置全网互通。

2. 设备配置ACL如下:

clip_image010

clip_image011

3. 使用show access-list命令查看配置的ACL信息,结果如下:

clip_image012

4. 验证配置。主机192.168.1.1和192.168.1.3能ping通服务器,主机192.168.1.2不能。

clip_image013

二.网络运行一段时间后,由于公司人员调整,需要变更访问服务器的ACL,要求如下:

? 不允许主机192.168.1.1和192.168.1.3 访问服务器

? 允许主机192.168.1.2访问服务器

具体步骤:

1. ACL变更配置如下:

clip_image014

2. 再次查看配置的ACL信息,结果如下:

clip_image015

3. 验证配置。主机192.168.1.1和192.168.1.3不能ping通服务器了,主机192.168.1.2可以ping通服务器。

clip_image016

注意:如果不指定序列号,则新添加的ACL被添加到列表的末尾。

n 访问控制列表的应用

clip_image018

公司内部网络已经建成,拓扑图如上所示。

公司内部网络规划如下:

? 根据公司现有各部门主机数量和以后增加主机的情况,为每个部门分配一个C类地址并且每个部门使用一个VLAN,便于管理。

? 分配一个C类地址作为设备的管理地址

按照上述规划配置设备,已经实现了网络连通

基于信息安全方面考虑,公司要求如下:

? 限定不同的部门能够访问的服务器,例如:财务部只能访问财务部服务器,生产部只能访问生产部服务器。

? 网络管理员可以访问所有服务器。

? 网络设备只允许网管区IP地址通过TELNET登录,并配置设备用户名为benet,密码为123456。

? 只有网络管理员才能通过远程桌面、TELNET、SSH等登录方式管理服务器。

? 要求所有部门之间不能互通,但都可以和网络管理员互通。

? 公司中有几名信息安全员,公司要求信息安全员可以访问服务器,但不能访问Internet。

? 外网只能访问特定服务器的特定服务。

网络规划如下:

? 公司全部使用192.168.0.0/16网段地址。

? 配置设备的网管地址。其中SW3L为192.168.0.1/24,SW1为192.168.0.2/24,SW2为192.168.0.3/24,R1为1.1.1.1/32。

? PC1为网络管理区主机,其IP地址为192.168.2.2/24,网关为192.168.2.1/24,属于VLAN 2;PC2为财务部主机,IP地址为192.168.3.2/24,网关为192.168.3.1/24,属于VLAN 3;PC3为信息安全员主机,IP地址为192.168.4.2/24,网关为192.168.4.1/24,属于VLAN 4。

? 在SW3L交换机VLAN 2接口的IP地址为192.168.2.1/24,VLAN 3接口的IP地址为192.168.3.1/24,VLAN 4接口的IP地址为192.168.4.1/24,VLAN 100接口的IP地址为192.168.100.1/24。

? 服务器IP地址为192.168.100.2/24,网关地址为192.168.100.1/24,属于VLAN 100。

? SW3L和R1的互联地址为10.0.0.0/30。

? 配置R1路由器的Loopback接口地址的为123.0.1.1/24,模拟外网地址。

按照公司网络规划和要求配置设备。

具体配置:

1. 配置设备,实现全网互通

R1配置如下:

R1(config)# int f0/0

R1(config-if)# ip address 10.0.0.1 255.255.255.252

R1(config-if)# no sh

R1(config)# int loopback 0

R1(config-if)# ip address 123.0.1.1 255.255.255.0

R1(config)# ip route 192.168.0.0 255.255.0.0 10.0.0.2

R1(config)# int loopback 1

R1(config-if)# ip address 1.1.1.1 255.255.255.255

SW3L配置信息如下:

SW3L(config)# vlan 2

SW3L(config)# vlan 3

SW3L(config)# vlan 4

SW3L(config)# vlan 100

SW3L(config)# int f0/1

SW3L(config-if)# no switchport

SW3L(config-if)# ip address 10.0.0.2 255.255.255.252

SW3L(config)#ip route 0.0.0.0 0.0.0.0 10.0.0.1

SW3L(config)# int range int f0/13 -14

SW3L(config-if-range)# switchport trunk encapsulation dot1q

SW3L(config-if-range)# seitchport mode trunk

SW3L(config)# int vlan 2

SW3L(config-if)# ip address 192.168.2.1 255.255.255.0

SW3L(config-if)# no sh

SW3L(config)# int vlan 3

SW3L(config-if)# ip address 192.168.3.1 255.255.255.0

SW3L(config-if)# no sh

SW3L(config)# int vlan 4

SW3L(config-if)# ip address 192.168.4.1 255.255.255.0

SW3L(config-if)# no sh

SW3L(config)# int vlan 100

SW3L(config-if)# ip address 192.168.100.1 255.255.255.0

SW3L(config-if)# no sh

SW3L(config)# ip routing

SW3L(config)# int vlan 1

SW3L(config-if)# ip address 192.168.0.1 255.255.255.0

SW3L(config-if)# no sh

SW1配置信息如下:

SW1(config)# vlan 2

SW1(config)# vlan 3

SW1(config)# vlan 4

SW1(config)# int f0/14

SW1(config-if)# switchport mode trunk

SW1(config)#int f0/1

SW1(config-if)# switchport mode access

SW1(config-if)# switchport access vlan 2

SW1(config)#int f0/2

SW1(config-if)# switchport mode access

SW1(config-if)# switchport access vlan 3

SW1(config)#int f0/3

SW1(config-if)# switchport mode access

SW1(config-if)# switchport access vlan 4

SW1(config)# int vlan 1

SW1(config-if)# ip address 192.168.0.2 255.255.255.0

SW1(config-if)# no sh

SW1(config)# ip default-gateway 192.168.0.1

SW2配置信息如下:

SW3(config)# vlan 100

SW3(config-vlan)# exit

SW3(config)#int f0/14

SW3(config-if)#switchport mode trunk

SW3(config)# int f0/1

SW3(config-if)# switchport mode access

SW3(config-if)# switchport access vlan 100

SW3(config)#int vlan 1

SW3(config-if)# ip address 192.168.0.3 255.255.255.0

SW3(config-if)# no sh

SW3(config)# ip default-gateway 192.168.0.1

2. 配置ACL实现公司要求

配置实现网络设备只允许网管去IP地址可以通过TELNET登录,并配置设备用户名为benet,密码为123456,R1的配置如下:

R1(config)# access-list 1 permit 192.168.2.0 0.0.0.255

R1(config)# username benet password 123456

R1(config)# line vty 0 4

R1(config-line)# login local

R1(config-line)# access-class 1 in

R1(config-line)# exit

SW3L、SW1、SW2的配置与R1相同

公司其他要求的配置命令如下:

//ACL 100 表示内网主机都可以访问服务器,但是只有网络管理员才能通过TELNET、SSH和远程桌面登录服务器,外网只能访问服务器的80端口

SW3L(config)#access-list 100 permit ip 192.168.2.0 0.0.0.255 host 192.168.100.2

//上述一条ACL表示:允许网络管理员网段192.168.2.0/24访问服务器

SW3L(config)#access-list 100 deny tcp 192.168.0.0 0.0.255.255 host 192.168.100.2 eq telnet

SW3L(config)#access-list 100 deny tcp 192.168.0.0 0.0.255.255 host 192.168.100.2 eq 22

SW3L(config)#access-list 100 deny tcp 192.168.0.0 0.0.255.255 host 192.168.100.2 eq 3389

//上述四条ACL表示:除192.168.2.0/24网段外其他所有内网地址均不能通过TELNET、SSH和远程桌面登录服务器

SW3L(config)#access-list 100 permit ip 192.168.0.0 0.0.255.255 host 192.168.100.2

SW3L(config)#access-list 100 permit tcp any host 192.168.100.2 eq 80

//上述两条ACL表示:允许内网主机访问服务器,允许外网主机访问服务器的80端口

SW3L(config)#access-list 100 deny ip any any

SW3L(config)# int vlan 100

SW3L(config-if)# ipaccess-group 100 out

SW3L(config-if)# exit

//ACL 101表示192.168.3.0/24网段主机可以访问服务器,可以访问网络管理员网段,但不能访问其他部门网段,也不能访问外网

SW3L(config)#access-list 101 permit ip 192.168.3.0 0.0.0.255 host 192.168.100.2

SW3L(config)#access-list 101 permit ip 192.168.3.0 0.0.0.255 192.168.2.0 0.0.0.255

SW3L(config)#access-list 101 deny ip any any

SW3L(config)# int vlan 3

SW3L(config-if)# ip access-group 101 in

SW3L(config-if)# exit

//ACL 102表示192.168.4.0/24网段主机可以访问服务器,可以访问网络管理员网段,但不能访问其他部门网段,可以访问外网(这里用于测试目的)

SW3L(config)#access-list 102 permit ip 192.168.4.0 0.0.0.255 host 192.168.100.2

SW3L(config)#access-list 102 permit ip 192.168.4.0 0.0.0.255 192.168.2.0 0.0.0.255

SW3L(config)#access-list 102 deny ip 192.168.4.0 0.0.0.255 192.168.0.0 0.0.255.255

SW3L(config)#access-list 102 permit ip any any

SW3L(config)# int vlan 4

SW3L(config-if)# ip access-group 102 in

SW3L(config-if)# exit

你可能感兴趣的:(protocol,source)