访问控制列表有两种:一种是标准的访问控制列表,另一种是扩展的访问控制列表。
访问控制列表
(ACL)
是应用在路由器接口的指令列表。这些指令列表用来告诉路由器哪能些数据包可以收、哪能数据包需要拒绝。至于数据包是被接收还是拒绝,可以由类似于源地址、目的地址、端口号等的特定指示条件来决定。
扩展访问控制列表其中重要的一种是
IP
访问控制列表。
为什么要使用访问列表?
1
、管理网络中逐步增长的
IP
数据
2
、当数据通过路由器时进行过滤
访问控制列表的应用:
1
、
允许、拒绝数据包通过路由器
2
、允许、拒绝
Telnet
会话的建立
3
、没有设置访问列表时,所有的数据包都会在网络上传输
4
、
基于数据包检测的特殊数据通讯应用
标准访问控制列表应注意以下几点:
1
、检查源地址
2
、通常允许、拒绝的是完整的协议
扩展访问控制列表应注意以下几点:
1
、检查源地址和目的地址
2
、通常允许、拒绝的是某个特定的协议
扩展
IP
访问控制列表比标准
IP
访问控制列表具有更多的匹配项,包括协议类型、源地址、目的地址、源端口、目的端口、建立连接的和
IP
优先级等。编号范围是从
100
到
199
的访问控制列表是扩展
IP
访问控制列表。
标准访问列表和扩展访问列表相比,标准的比扩展的简单。
下面我们来做一个关于
标准访问控制列表的实验。经过在路由上配置访问控制命令后,阻止
PC
机
3 ping PC
机
2
和
PC
机
1
,但是
PC
机
3
能
ping
通
PC
机
1
和
2
的网关
192.168.1.1.
实验的拓扑连接图如下:
Router1 E0/0 <----> VPCS V0/1
Router1 E0/1 <----> VPCS V0/2
Router1 E0/2 <----> VPCS V0/3
标准访问控制列表配置时候很简单,要用的设备也很简单,一台路由器,三个
PC
机就行,下面我们开始来做实验,首先这是在路由器中的配置
en
conf t
host r1
int e0/0
ip addr 192.168.1.2 255.255.255.0
no shut
exit
int e0/1
ip addr 192.168.2.1 255.255.255.0
no shut
exit
int e0/2
ip addr 192.168.3.1 255.255.255.0
no shut
exit
access-list 1 deny 192.168.3.0
0.0.0
.255----------
访问控制列表号+
许可的IP
网段
access-list 1 permit any
int e0/0
ip access-group 1 out------------
在接口上应用配置
exit
int e0/1
ip access-group 1 out
exit
配置完成后如下图所示,端口全部打开了
接下来配置
PC
机,配置pc机很简单,只需配置ip和网关就可以配置如下
:PC1
的
IP
是
192.168.1.1
网关为
192.168.1.2
PC2
的
IP
是
192.168.2.2
网关为
192.168.2.1
PC3
的
IP
是
192.168.3.2
网关为
192.168.3.1
Ok
配置完成后我们在
pc
机上测试一下,最后结果是
pc3ping
不通
pc1
和
pc2
,但是能
ping
通它们的网关
如下所示,配置标准访问控制列表成功达到了目的。
标准访问控制列表的配置就这样的完成了,大家是不是旧的很简单呢?呵呵
…..
下面我们来做一个关于
扩展访问控制列表的实验。经过在路由二上配置访问控制命令后,阻止
Router1 telnet192.168.2.1
连接
Router2
上面,但是
telnet
连接其他的路由却能连通,其他的路由之间也都能通过
telnet
连通
192.168.1.1.
实验的拓扑连接图如下:
Router1 S0/0 <----> Router2 S0/0
Router2 S0/1 <----> Router3 S0/1
一、下面我们来配置第一个路由。第一个路由器配置很简单,全是最基本的命令配置,其具体的命令如下:
en
conf t
enable password cisco
�D�D�D�D�D�D定义特权模式的明文密码
host r1
�D�D�D�D�D�D�D�D�D�D�D�D定义路由器一的名称
line vty 0 4-------------------------------
开启虚拟终端
Telnet
服务
pass cisco--------------------------------
定义
Telnet
口令(其他路由连接的时候口令必须与本口令一致)
login--------------------------------------登陆
int s0/0
�D�D�D�D�D�D�D�D�D�D�D--进入
Router1
的
int s0/0
端口
ip addr 192.168.1.1 255.255.255.0-----
定义路由器一的
IP
地址
no shut-----------------------------关闭端口
exit----------------退出
router ospf 100-----------------------
配置路由协议以及管理距离
network 192.168.1.1 0.0.0.0 area 0----------宣告192.168.1.1 IP地址 反码为0.0.0.0 ospf区域为骨干区域area0
exit
二、接着我们来配置路由器二。我们要在路由器二上
设置访问列表的参数
来拒绝
192.168.1.1 telnet
连接到
192.168.2.1
。具体的配置如下:
en
conf t
enable password cisco
�D�D�D�D定义特权模式的明文密码
host r2
�D�D�D�D�D�D�D�D�D�D定义路由器二的名称
line vty 0 4------------------------
开启虚拟终端
Telnet
服务
password cisco-----------------
定义
Telnet
口令(其他路由连接的时候口令必须与本口令一致)
login------------------------------登陆
int s0/0
�D�D�D�D�D�D�D�D�D�D�D-进入
Router1
的int s0/0
端口
ip addr 192.168.1.2 255.255.255.0-----
连接路由器一的
IP
地址
clock rate 64000--------------
配置时钟频率
no shut
exit
int s0/1----------------
进入
Router2
的
int s0/1
端口
ip addr 192.168.2.1 255.255.255.0-----
定义路由器二的
IP
地址
no shut
exit
router ospf 100-----------------------
配置路由协议以及管理距离
network 192.168.1.2 0.0.0.0 area 0
network 192.168.2.1 0.0.0.0 area 0
exit
access-list 100 deny tcp 192.168.1.1 0.0.0.0 192.168.2.1 0.0.0.0 eq 23---------------
拒绝子网
192.168.1.1
使用路由器
s0
口与子网
192.168.2.1 telnet
会话
access-list 100 permit ip any any--------------
允许其它数据
int s0/0
ip access-group 100 in---------------------------
在端口上应用访问列表
-exit
三、路由器三上的配置命令。和第一个路由器的配置几乎一样,全是最基本的命令配置,在配置时候只须改一下
IP
地址和端口号即可。其具体的命令如下:
en
conf t
host r3
enable password cisco
�D�D�D�D�D�D定义特权模式的明文密码
line vty 0 4----------------------------
开启虚拟终端
Telnet
服务
password cisco-------
定义
Telnet
口令(其他路由连接的时候口令必须与本口令一致)
login----------------------登陆
int s0/1-------------------------------
进入路由器三的
int s0/1
端口
ip addr 192.168.2.2 255.255.255.0--------
定义路由器三的
IP
地址
clock rate 64000------------------------
配置时钟频率
no shut--------------------关闭端口
exit----------------退出
router ospf 100--------------------
定义路由器的协议类型与管理距离
network 192.168.2.2 0.0.0.0 area 0
exit
四、路由器都配置完成后,我们接下来我们在路由器上测试一下。如下图我们在路由一上进行的测试,测试成功了,路由器一
Telnet
连接不上
192.168.2.1
,但是却能
Telnet
连接到
192.168.1.2
,和
192.168.2.2
,输入特权密码后即可进入理由器中进行配置
我们在
Router2
中可以
Telnet
连接到
192.168.1.1
和
192.168.2.2
,输入特权密码后即可进入路由一或路由三中进行配置了。
如下图所示在
Router3
中也
Telnet
连接到了
192.168.1.1
和
192.168.2.1
输入密码进入路由后可对路由进行配置
附加:我们在做
访问列表的路由器上输入“
show access-list
”来查看一下路由器上配置的所有访问列表。
show access-list
:显示路由器上配置的所有访问列表
我们在
Router2
中输入命令后,看到了配置的访问列表的所有信息。
总结:
标准访问列表和扩展访问列表相较,标准的只能针对
IP
地址做限制
扩展的可以对协议对端口做限制。具体的格式如下:
1
、扩展访问列表的格式:
access-list ACL
号
[permit|deny] [
协议
] [
定义过滤源主机范围
] [
定义过滤源端口
] [
定义过滤目的主机访问
] [
定义过滤目的端口号
]
2
、标准
访问列表的格式
的具体格式如下:
access-list ACL
号
permit|deny host ip
地址
标准访问列表是基于源地址,允许和拒绝完整的
TCP/IP
协议;编号范围
1-99
和
1300-1999
扩展访问列表是基于源地址和目标地址,指定
TCP/IP
的特定协议和端口;编号范围
100-199
和
2000-2699