提高企业网络互联系统安全运行与管理维护
1.1场景描述
1.1.1 学习目的
通过学习,能够独立完成整个企业网里面所涉及到的所有的常用技术。
1.1.2 学习要求
掌握:配置网络设备的安全管理。
掌握:配置访问控制列表。
掌握:配置安全路由协议。
掌握:身份认证和准入机制。
掌握:配置虚拟专用网。
1.1.3 学习重点和难点
1.学习重点
配置安全管理路由器和路由器:重点讲解登录的密码不是特权密码。网络设备的登录认证是如何实现的。
配置访问控制的能力:理解什么是线路访问。如何控制不同的线路访问验证。
配置安全路由协议:理解各种路由协议之间是如何安全通信的。
配置虚拟专用网:掌握配置站点到站点的虚拟专用网的方法。
实施身份验证与网络接入控制:掌握各种身份验证的方法和使用场合。
 
2.学习难点
配置访问控制能力:区分各种控制技术的使用场合。
安全路由协议:理解路由协议之间是如何安全通信的。
1.2 知识准备
1.2.1 ACL概述
访问控制列表(Access Control List,ACL)是路由器和交换机接口的指令列表,用来控制端口进出的数据包。ACL适用于所有的被路由协议,如IP、IPX、AppleTalk等。 这张表中包含了匹配关系、条件和查询语句,表只是一个框架结构,其目的是为了对某种访问进行控制。
信息点间通信,内外网络的通信都是企业网络中必不可少的业务需求,但是为了保证内网的安全性,需要通过安全策略来保障非授权用户只能访问特定的网络资源,从而达到对访问进行控制的目的。简而言之,ACL可以过滤网络中的流量,控制访问的一种网络技术手段。
ACL的定义也是基于每一种协议的。如果路由器接口配置成为支持三种协议(IP、AppleTalk以及IPX)的情况,那么,用户必须定义三种ACL来分别控制这三种协议的数据包。
1.2.2 RIP
作为距离矢量路由协议,RIP使用距离矢量来决定最优路径,具体来讲,就是提供跳数(hop count)作为尺度来衡量路由距离。跳数(hop count)是一个报文从本节点到目的节点中途经的中转次数,也就是一个包到达目标所必须经过的路由器的数目。
RIP路由表中的每一项都包含了最终目的地址、到目的节点的路径中的下一跳节点(next hop)等信息。下一跳指的是本网上的报文欲通过本网络节点到达目的节点,如不能直接送达,则本节点应把此报文送到某个中转站点,此中转站点称为下一跳, 这一中转过程叫“跳”(hop)。
如果到相同目标有两个不等速或不同带宽的路由器,但跳数相同,则RIP认为两个路由是等距离的。RIP最多支持的跳数为15,即在源和目的网间所要经过的最多路由器的数目为15,跳数16表示不可达。这样,对于超过15跳的大网络来说,RIP就有局限性。
RIP通过广播UDP(使用端口520)报文来交换路由信息,缺省情况下,路由器每隔30秒向与它相连的网络广播自己的路由表,接到广播的路由器将收到的信息添加至自身的路由表中。每个路由器都如此广播,最终网络上所有的路由器都会得知全部的路由信息。
广播更新的路由信息每经过一个路由器,就增加一个跳数。如果广播信息经过多个路由器到达,那么具有最低跳数的路径就是被选中的路径。如果首选的路径不能正常工作,那么其他具有次低跳数的路径(备份路径)将被启用。
 
1.2.3 OSPF
OSPF是一类Interior Gateway Protocol(内部网关协议IGP),用于属于单个自治体系(AS)的路由器之间的路由选择。OSPF 采用链路状态技术,路由器互相发送直接相连的链路信息和它所拥有的到其它路由器的链路信息。
每个 OSPF 路由器维护相同自治系统拓扑结构的数据库。从这个数据库里,构造出最短路径树来计算出路由表。当拓扑结构发生变化时,OSPF 能迅速重新计算出路径,而只产生少量的路由协议流量。OSPF 支持开销的多路径。区域路由选择功能使添加路由选择保护和降低路由选择协议流量均成为可能。此外,所有的 OSPF 路由选择协议的交换都是经过验证的
1.2.4 AAA
AAA系统的简称:
l         认证(Authentication):验证用户的身份与可使用的网络服务;
l         授权(Authorization):依据认证结果开放网络服务给用户;
l         计帐(Accounting):记录用户对各种网络服务的用量,并提供给计费系统。
AAA-----身份验证 (Authentication)、授权 (Authorization)和统计 (Accounting)Cisco开发的一个提供网络安全的系统。奏见authentication。authorization和accounting
常用的AAA协议是Radius,参见RFC 2865,RFC 2866。
另外还有 HWTACACS协议(Huawei Terminal Access Controller Access Control System)协议。HWTACACS是华为对TACACS进行了扩展的协议
 
1.3 注意事项
1、访问控制列表在一个接口的一个方向上只能应用一次;
2、身份验证技术一个网络中只需配置一种;
1.4 操作步骤
1.4.1 安全管理和维护路由设备
第一步:创建路由器RA和RB的管理密码
由于路由器RA和RB在网络中的安全级别比较高所以在这里不仅设置了密码验证登录,而且针对远程telnet连接还设置了SSH加密登录验证。
RA(config)#enable secrect level 15 ruijie
RA(config)#username ruijie password star
RA(config)#line con 0
RA(config-line)#login local
RA(config-line)#exit
RA(config)#enable services ssh-server
RA(config)#ip ssh version 2
RA(config)#ip ssh authentication-retries 3
RA(config)#line vty 0 4
RA(config-line)#login local
RA(config-line)#exit
RA(config)#
 
RB(config)#enable secrect level 15 ruijie
RB(config)#username ruijie password star
RB(config)#line con 0
RB(config-line)#login local
RB(config-line)#exit
RB(config)#
RB(config)#enable services ssh-server
RB(config)#ip ssh version 2
RB(config)#ip ssh authentication-retries 3
RB(config)#line vty 0 4
RB(config-line)#login local
RB(config-line)#exit
RB(config)#
 
第二步:创建路由器RC和RD的管理密码
路由器RC和RD的安全性级别比较低,所以这里没有使用SSH加密登录验证。
RC(config)#enable secrect level 15 ruijie
RC(config)#username ruijie password star
RC(config)#line vty 0 4
RC(config-line)#login local
RC(config-line)#exit
RC(config)#line con 0
RC(config-line)#login local
RC(config-line)#exit
RC(config)#
 
RD(config)#enable secrect level 15 ruijie
RD(config)#username ruijie password star
RD(config)#line vty 0 4
RD(config-line)#login local
RD(config-line)#exit
RD(config)#line con 0
RD(config-line)#login local
RD(config-line)#exit
RD(config)#
 
1.4.2 配置访问控制的能力
第一步:在路由器RA配置时间ACL
一般来讲,工作时间所有用户都是可以访问公司服务器的。过了工作时间就不允许访问,以此来防止在下班时间人员比较少的时候,某些人做一些非法访问的事情。
RA(config)#time-range off-work
RA(config-time-range)#periodic weekdays 09:00 to 18:00
RA(config-time-range)#exit
RA(config)#access-list 100 permit ip 192.168.1.0 0.0.0.255 any time-range off-work
RA(config)#access-list 100 permit ip 192.168.2.0 0.0.0.255 any time-range off-work
RA(config)#interface fastethernet 0/0
RA(config-if-range)#ip access-group 100 out
RA(config-if-range)#exit
RA(config)#
 
第二步:在路由器RA配置标准ACL
为了避免公司内部服务器可能被侵入或中毒,导致***利用服务器发送非法数据包以及登录其他受服务器信任的设备。我们在连接服务器的路由器接口上应用标准访问控制列表。用于只允许服务器以服务期的ip地址进行通信。
RA(config)#access-list 10 permit host 172.16.1.1
RA(config)#interface fastethernet 0/0
RA(config-if)#ip access-group 10 in
RA(config-if)#exit
RA(config)#
 
第三步:在路由器RA配置专家ACL
配置允许销售部访问服务器的WEB服务和FTP服务。允许其它主机访问服务器的DNS服务。其他服务不允许访问。同时允许客户端之间互相访问。
RA(config)#expert access-list extended allow-server
RA(config-exp-nacl)#permit tcp 192.168.1.0 0.0.0.255 any host 172.16.1.1 host 000e.000e.000e eq 80
RA(config-exp-nacl)#permit tcp 192.168.1.0 0.0.0.255 any host 172.16.1.1 host 000e.000e.000e eq 20
RA(config-exp-nacl)#permit tcp 192.168.1.0 0.0.0.255 any host 172.16.1.1 host 000e.000e.000e eq 21
RA(config-exp-nacl)#permit udp 192.168.1.0 0.0.0.255 any host 172.16.1.1 host 000e.000e.000e eq 53
RA(config-exp-nacl)#permit ip 192.168.1.0 0.0.0.255 any 192.168.2.0 0.0.0.255 any
RA(config-exp-nacl)#exit
RA(config)#interface fastethernet 0/1
RA(config-if)#expert access-group allow-server in
RA(config-if-range)#exit
RA(config)#
 
第四步:在路由器RA和RB配置扩展ACL
在边界路由器上,通常我们都会在外口的in方向上明确的拒绝一些已知的***端口或者病毒端口。用来防御基本的安全威胁。
RA(config)#access-list 110 deny tcp any any eq 139
RA(config)#access-list 110 deny tcp any any eq 135
RA(config)#access-list 110 deny tcp any any eq 445
RA(config)#access-list 110 deny tcp any any eq 2222
RA(config)#access-list 110 permit ip any any
RA(config)#interface fastethernet 0/2
RA(config-if)#ip access-group 110 in
RA(config-if)#exit
RA(config)#
 
RB(config)# access-list 110 deny tcp any any eq 139
RB(config)# access-list 110 deny tcp any any eq 135
RB(config)# access-list 110 deny tcp any any eq 445
RB(config)# access-list 110 deny tcp any any eq 2222
RB(config)#access-list 110 permit ip any any
RB(config)#interface fastethernet 0/2
RB(config-if)#ip access-group 110 in
RB(config-if)#exit
RB(config)#
 
1.4.3 配置安全路由协议
第一步:在路由器RA\RB\RC\RD上启用动态路由协议
RA(config)#interface fastethernet f0/0
RA(config-if)#ip address 172.16.1.2 255.255.255.0
RA(config-if)#no shut
RA(config-if)#exit
RA(config)#interface fastethernet f0/1
RA(config-if)#ip address 192.168.3.2 255.255.255.0
RA(config-if)#no shut
RA(config-if)#exit
RA(config)#interface fastethernet f0/2
RA(config-if)#ip address 192.168.5.1 255.255.255.0
RA(config-if)#no shut
RA(config-if)#exit
RA(config)#router ospf 10
RA(config-router)#network 192.168.3.0 0.0.0.255 area 0
RA(config-router)#network 192.168.5.0 0.0.0.255 area 0
RA(config-router)#network 172.16.1.0 0.0.0.255 area 0
RA(config-router)#exit
RA(config)#
 
RB(config)#interface fastethernet f0/1
RB(config-if)#ip address 192.168.4.2 255.255.255.0
RB(config-if)#no shut
RB(config-if)#exit
RB(config)#interface fastethernet f0/2
RB(config-if)#ip address 192.168.5.2 255.255.255.0
RB(config-if)#no shut
RB(config-if)#exit
RB(config)#router ospf 10
RB(config-router)#network 192.168.4.0 0.0.0.255 area 0
RB(config-router)#network 192.168.5.0 0.0.0.255 area 0
RB(config-router)#exit
RB(config)#
 
RC(config)#interface fastethernet f0/1
RC(config-if)#ip address 192.168.3.1 255.255.255.0
RC(config-if)#no shut
RC(config-if)#exit
RC(config)#interface fastethernet f0/2
RC(config-if)#ip address 192.168.1.254 255.255.255.0
RC(config-if)#no shut
RC(config-if)#exit
RC(config)#router ospf 10
RC(config-router)#network 192.168.3.0 0.0.0.255 area 0
RC(config-router)#network 192.168.1.0 0.0.0.255 area 0
RC(config-router)#exit
RC(config)#
 
RD(config)#interface fastethernet f0/1
RD(config-if)#ip address 192.168.4.1 255.255.255.0
RD(config-if)#no shut
RD(config-if)#exit
RD(config)#interface fastethernet f0/2
RD(config-if)#ip address 192.168.2.254 255.255.255.0
RD(config-if)#no shut
RD(config-if)#exit
RD(config)#router ospf 10
RD(config-router)#network 192.168.2.0 0.0.0.255 area 0
RD(config-router)#network 192.168.4.0 0.0.0.255 area 0
RD(config-router)#exit
RD(config)#
 
第二步:在路由器RA\RB\RC\RD上开启路由协议认证
增加了认证的路由协议更加安全,避免网络中不法分子捕获并拆分数据包已获得网络拓扑信息。
RA(config)#interface fastethernet 0/1
RA(config-if)#ip ospf authentication message-digest
RA(config-if)#ip ospf message-digest-key 1 md5 ruijie
RA(config-if)#exit
RA(config)#
 
RC(config)#interface fastethernet 0/1
RC(config-if)#ip ospf authentication message-digest
RC(config-if)#ip ospf message-digest-key 1 md5 ruijie
RC(config-if)#exit
RC(config)#
 
RB(config)#interface fastethernet 0/1
RB(config-if)#ip ospf authentication message-digest
RB(config-if)#ip ospf message-digest-key 1 md5 ruijie
RB(config-if)#exit
RB(config)#
 
RD(config)#interface fastethernet 0/1
RD(config-if)#ip ospf authentication message-digest
RD(config-if)#ip ospf message-digest-key 1 md5 ruijie
RD(config-if)#exit
RD(config)#
 
1.4.4 实施身份验证与网络接入控制
第一步:在路由器RC和RD配置AAA及802.1x服务
RC(config)#aaa new-model
RC(config)#radius-server host 172.16.1.1
RC(config)#radius-server key ruijiekey
RC(config)#aaa authentication dot1x ruijielist group radius
RC(config)#
 
RD(config)#aaa new-model
RD(config)#radius-server host 172.16.1.1
RD(config)#radius-server key ruijiekey
RD(config)#aaa authentication dot1x ruijielist group radius
RD(config)#
 
第二步:配置RADIUS服务器
在服务器上配置客户端用于登录网络所使用的用户名和密码。此处如果是多个用户名和密码。重复步骤创建即可。
 

提高企业网络互联系统安全运行与管理维护

图13-1 添加用户
 
配置NAS路由器上面配置的**。路由器上的**要和这里配置的一样,否则不能认证通过。
 

提高企业网络互联系统安全运行与管理维护

图13-2 配置**
 
1.4.5 配置虚拟专用网
第一步:在路由器RA上配置×××功能
通过配置虚拟专用网,可以实现跨广域网通信的目的。并且通信的双方都不必为广域网的安全担忧。这一切完全由***来承担并完成。
RA(config)#access-list 110 permit ip 192.168.1.0 0.0.0.255 any
RA(config)#access-list 110 permit ip 192.168.3.0 0.0.0.255 any
RA(config)#access-list 110 permit ip 172.16.1.0 0.0.0.255 any
RA(config)#crypto isakmp policy 110
RA(config-isakmp)#authentication pre-share
RA(config-isakmp)#hash md5
RA(config-isakmp)#exit
RA(config)#crypto isakmp key 0 ruijie address 192.168.5.2
RA(config)#crypto ipsec transform-set ***1 ah-md5-hmac esp-des esp-md5-hmac
RA(cfg-crypto-trans)#mode tunnel
RA(cfg-crypto-trans)#exit
RA(config)#crypto map ***-set 100 ipsec-isakmp
RA(config-crypto-map)#set peer 192.168.5.2
RA(config-crypto-map)#set transform-set ***1
RA(config-crypto-map)#match address 110
RA(config-crypto-map)#exit
RA(config)#interface fastethernet 0/2
RA(config-if)#ip address 192.168.5.1 255.255.255.0
RA(config-if)#crypto map ***-set
RA(config-if)#exit
RA(config)#interface fastethernet 0/1
RA(config-if)#ip address 192.168.3.2 255.255.255.0
RA(config-if)#exit
RA(config)#interface fastethernet 1/1
RA(config-if)#ip address 172.16.1.2 255.255.255.0
RA(config-if)#exit
RA(config)#ip route 0.0.0.0 0.0.0.0 192.168.5.2
RA(config)#
 
第二步:在路由器RB上配置×××功能
×××的另一段RB的配置基本上与RA相同。要注意的是内网和外网地址要互换。×××的对方地址也要互换。
RB(config)#access-list 110 permit ip 192.168.2.0 0.0.0.255 any
RB(config)#access-list 110 permit ip 192.168.4.0 0.0.0.255 any
RB(config)#crypto isakmp policy 110
RB(config-isakmp)#authentication pre-share
RB(config-isakmp)#hash md5
RB(config-isakmp)#exit
RB(config)#crypto isakmp key 0 ruijie address 192.168.5.1
RB(config)#crypto ipsec transform-set ***1 ah-md5-hmac esp-des esp-md5-hmac
RB(cfg-crypto-trans)#mode tunnel
RB(cfg-crypto-trans)#exit
RB(config)#crypto map ***-set 100 ipsec-isakmp
RB(config-crypto-map)#set peer 192.168.5.1
RB(config-crypto-map)#set transform-set ***1
RB(config-crypto-map)#match address 110
RB(config-crypto-map)#exit
RB(config)#interface fastethernet 0/2
RB(config-if)#ip address 192.168.5.2 255.255.255.0
RB(config-if)#crypto map ***-set
RB(config-if)#exit
RB(config)#interface fastethernet 0/1
RB(config-if)#ip address 192.168.4.2 255.255.255.0
RB(config-if)#exit
RB(config)#ip route 0.0.0.0 0.0.0.0 192.168.5.1
RB(config)#
 
1.5 拓展知识
1.5.1正确放置ACL
ACL通过过滤数据包并且丢弃不希望抵达目的地的数据包来控制通信流量。然而,网络能否有效地减少不必要的通信流量,这还要取决于网络管理员把ACL放置在哪个地方。
假设在的一个运行TCP/IP协议的网络环境中,网络只想拒绝从RouterA的T0接口连接的网络到RouterD的E1接口连接的网络的访问,即禁止从网络1到网络2的访问。
根据减少不必要通信流量的通行准则,网管员应该尽可能地把ACL放置在靠近被拒绝的通信流量的来源处,即RouterA上。如果网管员使用标准 ACL来进行网络流量限制,因为标准ACL只能检查源IP地址,所以实际执行情况为:凡是检查到源IP地址和网络1匹配的数据包将会被丢掉,即网络1到网 络2、网络3和网络4的访问都将被禁止。由此可见,这个ACL控制方法不能达到网管员的目的。同理,将ACL放在RouterB和RouterC上也存在 同样的问题。只有将ACL放在连接目标网络的RouterD上(E0接口),网络才能准确实现网管员的目标。由此可以得出一个结论: 标准ACL要尽量靠近目的端。
网管员如果使用扩展ACL来进行上述控制,则完全可以把ACL放在RouterA上,因为扩展ACL能控制源地址(网络1),也能控制目的地址 (网络2),这样从网络1到网络2访问的数据包在RouterA上就被丢弃,不会传到RouterB、RouterC和RouterD上,从而减少不必要 的网络流量。因此,我们可以得出另一个结论:扩展ACL要尽量靠近源端。
1.5.2 RIP解决路由环路的方法
在最初开发RIP的时候就发现路由环路的问题,所以已经在RIPv1和 RIPv2中集成了几种防止环路的机制:
最大跳数:当一个路由条目作为副本发送出去的时候就会自加1跳,跳数最大为16跳,16跳意味着此网络永不可达了。
l         水平分割:路由器不会把从某个接口学习到的路由再从该接口广播或者组播的方式发送出去。
l         带毒性反转的水平分割:路由器从某些接口学习到的路由有可能从该接口发送出去,只是这些被路由已经具有毒性,即跳数都为16跳。
l         抑制定时器:当路由表中的某个条目所指网络消失时,路由器并不会立刻的删除该条目,而是严格按照我们前面所介绍的计时器时间现将条目设置为无效并挂起,在到达240秒时才删除该条目,这么做的目的是为了尽可能利用这个时间等待发生改变的网络恢复。
l         触发更新:因网络拓扑发生变化导致路由表发生改变时,路由器立刻产生更新通告给直连邻居,不再需要等待30秒的更新周期,这样做是为了将网络拓扑的改变立刻通告给其他邻居路由器。
以上就是RIP产生环路的问题和解决方法。
1.5.3 RADIUS基本工作原理
用户接入NAS,NAS向RADIUS服务器使用Access-Require数据包提交用户信息,包括用户名、密码等相关信息,其中用户密码 是经过MD5加密的,双方使用共享**,这个**不经过网络传播;RADIUS服务器对用户名和密码的合法性进行检验,必要时可以提出一个 Challenge,要求进一步对用户认证,也可以对NAS进行类似的认证;如果合法,给NAS返回Access-Accept数据包,允许用户进行下一 步工作,否则返回Access-Reject数据包,拒绝用户访问;如果允许访问,NAS向RADIUS服务器提出计费请求Account- Require,RADIUS服务器响应Account-Accept,对用户的计费开始,同时用户可以进行自己的相关操作。
RADIUS还支持代理和漫游功能。简单地说,代理就是一台服务器,可以作为其他RADIUS服务器的代理,负责转发RADIUS认证和计费数 据包。所谓漫游功能,就是代理的一个具体实现,这样可以让用户通过本来和其无关的RADIUS服务器进行认证,用户到非归属运营商所在地也可以得到服务, 也可以实现虚拟运营。
RADIUS服务器和NAS服务器通过UDP协议进行通信,RADIUS服务器的1812端口负责认证,1813端口负责计费工作。采用UDP 的基本考虑是因为NAS和RADIUS服务器大多在同一个局域网中,使用UDP更加快捷方便,而且UDP是无连接的,会减轻RADIUS的压力,也更安 全。
RADIUS协议还规定了重传机制。如果NAS向某个RADIUS服务器提交请求没有收到返回信息,那么可以要求备份RADIUS服务器重传。 由于有多个备份RADIUS服务器,因此NAS进行重传的时候,可以采用轮询的方法。如果备份RADIUS服务器的**和以前RADIUS服务器的**不 同,则需要重新进行认证。