分享

路由器的访问安全

 戴维图书馆 2016-12-15

路由器的访问安全

以路由器R1为例,说明路由器访问安全的配置。

路由器的访问安全
一:配置IP地址

R1(config)#int f1/0

R1(config-if)#ip add 172.16.1.1 255.255.255.0

R1(config-if)#no sh

R1(config)#int s0/0

R1(config-if)#ip add 172.16.12.1 255.255.255.0

R1(config-if)#no sh

R2(config)#int s0/0

R2(config-if)#ip add 172.16.12.2 255.255.255.0

R2(config-if)#clock rate 64000

R2(config-if)#no sh

PC:IP地址:172.16.1.100/24、网关:172.16.1.1

二:配置密码和登录安全

基本登录安全配置:

R1(config)#clock timezone GMT +8        //配置路由器的时区

R1#clock set 15:14:13 12 aug 2012        //配置路由器的时间

R1(config)#enable secret cisco        //配置特权模式密码

R1(config)#service password-encryption        //启用密码加密服务

R1(config)#service tcp-keepalives-in        //路由器没有收到远程系统的响应,会自动关闭TCP连接

R1(config)#line console 0

R1(config-line)#exec-timeout 10 0   //配置控制台EXEC会话超时时间为10分钟,防止用户忘记注销或离开

R1(config-line)#transport input none        //阻止通过反向Telnet远程访问TTY线路

R1(config-line)#password cisco

R1(config-line)#login

R1(config)#line vty 0 4

R1(config-line)#exec-timeout 10 0

R1(config-line)#transport input SSH

R1(config-line)#password cisco

R1(config-line)#login        //允许远程登录,使用线路密码验证

R1(config)#line aux 0        //辅助端口,用于与调制解调器连接,提供远程管理

R1(config-line)#no exec        //禁用辅助端口(若非绝对必要,可禁用辅助端口)

说明:

①中国时区为:GMT +8;

②在配置特权模式密码时,不建议使用“enable password”命令,因为它的密码不加密存放;

③在配置“service password-encryption”命令之前配置的密码不会被加密,也就是对于要被加密的密码,必

  须在密码配置后使用“service password-encryption”命令进行加密;

④拒绝服务(Dos):是指攻击者通过禁用或破坏网络、系统或服务来拒绝为特定用户提供服务的一种攻击方式。

  Dos攻击包括使系统崩溃或将系统性能降低至无法使用的状态,也可以只是简单地删除或破坏信息等。路由

  关闭没有收到响应的TCP连接可以减少受Dos攻击的机会。

⑤Console(控制台)端口是进行设备管理和配置的默认访问模式,它通过TTY线路0物理连接到设备的控制台端

  口,默认情况下该端口没有配置密码。

⑥配置“transport input all”命令后支持所有协议,如:X.3 PAD、TCP/IP Telnet SSH、UNIX rlogin等。

⑦反向Telnet:路由器异步线路与Modem连接后,就可以建立与Modem的直接Telnet对话通信,这个过程也称为反

  向远程登录Telnet(Reverse Telnet);反向远程登录的意思是经由异步线路启动Telnet对话,而不是接收传至

  线路的连接,即所谓的正向连接(Forward Connection)。

⑧VTY(虚拟类型终端)端口:默认可以使用线路0到4的虚拟类型终端线路,它与Console口相似,也没预先配置密

  码,虽然VTY线路默认没有密码,但它是不可访问的,除非键入“login/no login”命令允许远程登录;访问

  VTY线路有两种常用的方法:Telnet和SSH协议。

⑨AUX(辅助)端口:与拨号调制解调器连接,可提供远程管理;通过简单地战争拨号技术,入侵者可以找到一个

  未受保护的调制解调器,因此,AUX口配置验证访问控制或关闭AUX口是有必要的。

以上配置Console和Telnet的密码和登录。但是在上面的配置中没有办法区分不同的用户,如果需要不同用户使用各自的密码登录需要采用以下配置:

高级登录安全配置

R1(config)#aaa new-model       //启用AAA认证功能

R1(config)#aaa authentication login AAA_LOCAL local

                          //定义一个名字为AAA_LOCAL的认证,认证方法为从本地读取用户信息的login认证

R1(config)#username user1 privilege 10 secret WWW,l63.c0m

R1(config)#username user2 privilege 15 secret WWW,ha0l23.c0m  //在本地数据库创建两个不同等级的用户

R1(config)#line console 0

R1(config-line)#login authentication AAA_LOCAL        //配置Console口登录进行AAA_LOCAL认证

R1(config-line)#exec-timeout 5 30        //配置超时时间

R1(config)#access-list 5 permit 172.16.0.0 0.0.255.255        //定义标准访问控制列表5

R1(config)#line vty 0 4

R1(config-line)#login authentication AAA_LOCAL        //配置Telnet口登录进行AAA_LOCAL认证

R1(config-line)#access-class 5 in        //限定只允许ACL5指定的计算机可以远程访问本路由器

R1(config-line)#exec-timeout 5 30

说明:Cisco IOS提供从0到15的16个优先权等级:

①默认情况下IOS有3个预定义的用户等级,分别为:

    优先权等级0:包括disable、enable、exit、help和logout命令;

    优先权等级1:User EXEC mode,即用户模式(R1>)的所有用户级命令;

    优先权等级15:Privileged EXEC mode(启用模式),包括R1#提示的所有启动级命令。

②2至14等级用于用户自定义的模式;

“R1(config)#privilege mode level level”命令可以更改、移动或设置上述任一级别的命令优先权,

    mode:是指路由器上的不同模式,如exec或configure;

    示例:R1(config)#username user3 privilege 5 secret WWW,ba1du.c0m  //创建优先权等级5的user3用户

          R1(config)#privilege configure level 5 interface  //移动等级15的“interface”命令到等级5

④“R1(config-line)#privilege level level”命令可以修改给定线路的优先权等级。

    示例:R1(config)#line vty 3 4 

          R1(config-line)#privilege level 1        //修改VTY线路3-4的默认优先权等级为1

以下配置可以防止黑客暴力破解:

R1(config)#access-list 10 permit 172.16.1.100        //定义标准访问控制列表10

R1(config)#security passwords min-length 8        //配置最小密码长度

R1(config)#security authentication failure rate 5 log

                          //连续登录失败5次后,默认等待15s后才能再次登录,并会产生日志,IOS12.3(1)

R1(config)#login block-for 60 attempts 3 within 30

                                       //30s内连续登录失败3次后,等待60s(进入安静期)后才能再次登录

R1(config)#login delay 2        //登录成功后有2s延迟,即2s后才能再次登录

R1(config)#login quiet-mode access-class 10  //安静期内ACL10指定的计算机仍可以远程访问本路由器

R1(config)#login on-failure log        //登录失败会在日志中记录

R1(config)#login on-success log        //登录成功会在日志中记录

说明:

①AAA:认证(Authentication):验证用户的身份与可使用的网络服务;授权(Authorization):依据认证结果开放

  网络服务给用户;计帐(Accounting):记录用户对各种网络服务的用量,并提供给计费系统。

②密码长度至少要8位以上,并要满足复杂性要求。

③在系统超时前,用户没有任何输入操作将被自动注销,这样可以减少不安全因素。

④在安静期内允许特定的计算机可以登录的目的:是为了防止黑客利用在多次输错密码后路由器会进入安静期,

  禁止用户登录这个漏洞攻击,做损人不利己的事:我登录不了也不让他人登录。

R1#show login        //查看和登录有关的全部配置信息

路由器的访问安全
配置旗标消息:

R1(config)#banner motd @        @        //每日报告旗标(MOTD Message-of-the-day banner)

R1(config)#banner login@        @        //登录旗标

R1(config)#banner exec @        @        //EXEC旗标

R1(config)#banner incoming@        @        //传入旗标

R1(config)#banner slip-ppp@        @        //SLIP-PPP旗标

路由器的访问安全
说明:

①banner motd:当用户与已连接终端的路由器连接时,即在路由器提示输入用户和密码前出现;

②banner login:在已连接的终端上显示,即提示输入用户和密码前banner motd之后出现,并仅在从Console口

    录时才出现;

③banner exec:在进入exec模式之前提示的信息,即用户通过了认证后;

④banner incoming:在与反向Telnet线路连接的终端上显示,该旗标有助于向用户提供指令;

⑤banner slip-ppp:常用于兼容非Cisco系列线路Internet协议(如:SLIP和PPP拨号软件连接中),如果使用默

    旗标,会导致连接问题。

三:配置SSH(安全外壳 Secure Shell)

SSH加密传输数据,端口号22;SSHv1对明文Telnet而言是一个改进,但也存在一些基本缺陷,SSHv2更加安全。

R1(config)#ip domain-name yly.com        //配置域名

R1(config)#crypto key generate rsa        //产生加密密钥

R1(config)#line vty 0 4

R1(config-line)#transport input ssh        //只允许用户通过SSH登录到本路由器

路由器的访问安全

从路由器R2使用SSH远程登录到路由器R1:
R2#ssh -l user1 172.16.12.1        //从R2通过SSH远程登录到R1

路由器的访问安全

我们也可以从计算机PC使用SSH登录到路由器R1:

路由器的访问安全
路由器的访问安全
路由器的访问安全
路由器的访问安全

说明:SSH生成密钥的关键字名就是“hostname.ip domain-name”,所以需要配置域名;如果公司有自己的域

  名,请使用它,否则随便配置一个。

四:关闭不必要的服务

默认时,Cisco路由器在第2层、3层、4层和7层上有着各种各样的服务器,在不影响我们使用的情况下,为了安全起见可以把不必要的服务关闭。

R1(config)#no cdp run         //禁用CDP协议

R1(config)#no ip source-route        //禁用IP源路由头选项功能

R1(config)#no ip http server        //关闭HTTP服务,关闭后无法用浏览器来配置路由器了

R1(config)#no service tcp-small-servers        //关闭TCP小型服务器

R1(config)#no service udp-small-servers        //关闭UDP小型服务器

R1(config)#no ip finger        或R1(config)#no service finger        //关闭查找器协议功能

R1(config)#no ip identd        //禁用识别协议,默认是关闭的

R1(config)#no ip bootp server       //禁用BOOTP服务

R1(config)#no service dhcp        //禁用DHCP服务,默认是开启的

R1(config)#no tftp-server flash:[file_name]        //禁用TFTP服务,默认是关闭的

R1(config)#no ftp-server enable        //禁用FTP服务,默认是关闭的

R1(config)#no service config        和R1(config)#no boot network        //禁用自动下载配置文件

R1(config)#no service pad        //禁用PAD(PAD设备与访问服务器之间的命令和连接),默认是开启的

R1(config)#no ip name-server        //删除路由器设置的DNS服务器的地址

R1(config)#no ip domain-lookup        //禁用路由器作为DNS客户端的功能

R1(config)#no boot network        //禁用网络启动

R1(config)#no service config        //禁用在网络上查找配置文件的功能

R1(config)#no snmp-server        //禁用SNMP协议

R1(config)#int f1/0

R1(config-if)#no ip proxy-arp        //禁用代理ARP功能,默认是开启的

R1(config-if)#no ip directed-broadcast        //禁用IP直接广播功能

R1(config-if)#no ip redirects        //禁用IP重定向

R1(config-if)#no ip unreachables        //禁用ICMP不可达消息

R1(config-if)#no ip mask-reply          //禁用IP掩码应答功能,默认是关闭的

R1(config)#no ip gratuitous-arps        //禁用无偿ARP协议,默认所有接口都是开启的

说明:

①IP源路由选择(Source Routing):IP协议允许主机指定一条通往IP网络的路由即允许(或需要)分组的源提供路

  由信息。在IP头中源路由选择为一个选项,Cisco IOS支持IP头选项并检查每个分组的IP头选项(检查包括:严

  格源路由、松散源路由、记录路由和时间戮),当IOS遇到一个具有无效选项的分组时,会向分组的源发出一个

  ICMP参数问题消息,并丢弃该分组。源路由选择信息会对所经过的网络中的路由产生影响,当指定源路由选择

  时,则IOS根据在消息中发现的指定源路由转发分组,也就是它可以强迫分组选用一条特定的路由通过网络,

  而并不遵循路由选择表中的路由。攻击者可以利用IP源路由选择获取一个未授权的路径访问,把本来指向其它

  网络路径的分组重新路由到攻击者的路径,默认情况下所有IOS均启用IP源路由。

②TCP/UDP小型服务器:小型服务器也就是端口号不大于19的服务(TCP如:应答、字符发生器、丢弃和日期,UDP

  如:应答、字符发生器和丢弃),可以从网络上的主机访问小型服务器。IOS 11.2及以前的版本除外,默认情

  况下IOS都禁用了TCP和UDP小型服务器。

③查找器:查找器协议使用TCP端口号79,网络用户使用查找器用户协议可获得包含设备上现有用户的列表(显示

  的信息包括:系统运行的进程、line号码、连接名、闲置时间和终端位置),这相当于“show users”命令。

  入侵者通过检查远程主机和网络设备,就可以收集这些网络设备的信息,默认情况下IOS 12.1(5)和12.1(5)T

  及以后的版本都禁用了查找器协议。

④识别(auth)协议(Identd):允许任意主机要求路由器对其进行识别,可将Identd作为一个侦察工具,默认情况

  下所有IOS都禁用识别支持。

⑤BOOTP和DHCP服务:DHCP基于BOOTP,使用UDP端口号67,BOOTP服务现已被DHCP代替了。当禁用BOOTP和DHCP服

  务时,UDP端口67将丢弃所有传入分组,并发送ICMP端口不可达的消息作为响应。

⑥简单文件传输协议(TFTP)服务:Cisco路由器或路由器上的闪存可作为TFTP服务器,系统向以file_name这个文

  件名发出TFTP请求的任何客户端发出一个包含在ROM中的系统镜像副本或包含在闪存中的系统镜像。必须禁用

  这项服务,以防止未经授权对路由器闪存进行读写,默认情况下所有IOS版本都禁用TFTP服务。

⑦文件传输(FTP)服务:Cisco路由器也作为FTP服务器,FTP服务用于传输到达或来自于路由器的文件(如:系统

  镜像文件、备份配置和数据记录均可源于路由器或传送至路由器)。必须禁用该服务,以防止未经授权从路由

  器进行读写,默认情况下所有IOS版本都禁用FTP服务。

⑧半自动设备配置:Cisco IOS提供了一种策略,可直接从网络服务器把设备配置自动下载到设备。它有几种方

  法可以实现,但不建议用户使用,因为把配置文件下载到设备的过程是明文传输的,容易遭受未授权查看。

代理ARP(Prox ARP):它ARP协议的一个变种,就是通过使用一个主机(通常为Router),来作为指定的设备对另

 设备的ARP请求作出应答。对于没有配置默认网关的计算机要和其他网络中的计算机实现通信,网关收到源

 算机的ARP请求会使用自己的MAC地址与目标计算机的IP地址对源计算机进行应答。它能使得在不影响路由表

  的情况下添加一个新的Router,使得子网对该主机来说变得更透明化。同时也会带来巨大的风险,除了ARP欺

  骗,和某个网段内的ARP增加,最重要的就是无法对网络拓扑进行网络概括。代理ARP的使用一般是使用在没有

  配置默认网关和路由策略的网络上的。

⑩IP直接广播功能:所有的路由器都不转发目的地址为受限的广播地址的数据报,这样的数据报仅出现在本地网

 中。一个路由器必须转发指向网络的广播,但它也必须有一个不进行转发的选择:当一个主机向某个广播域

 全部主机发送广播报文,但是发送者并不处在这个广播域内,这个时候,希望有一种能够以单播数据报文穿

 路由网络,但到达目的网络时,以广播方式发送,这时需要就开启“ip directed-broadcast”命令。在IOS

 早期版本中,需要对每个已知接口使用“no ip directed-broadcast”命令转发分组;默认情况下IOS 12.0

  及以后版本都禁用IP直播,当接口使用“no ip directed-broadcast”命令时,该接口会丢弃所有直播分组。

IP重定向:分组从其被接受的接口离开时,给主机发送一个ICMP重定向消息,表示使用默认网关地址执行后续

  转发。在IOS的早期版本中,如果在一个接口配置了HSRP,则接口默认禁用ICMP重定向消息,IOS 12.1(3)T及

  其后续版本,如果配置了HSRP则默认启用ICMP重定向消息;尤其应在不信任的网络接口禁用这项服务,因为它

  可以映射网络。

 ICMP不可达:当一台IOS设备接收到传送给它的非广播分组,但又无法识别所有协议时,会向源发送一个ICMP

  不可达消息;此外,也可以使用ICMP不可达消息向主机发送一个回应,告知主机该设备不能向所要求的目的地

  发送分组,因为这一设备不包含到达该目的地址的路由。入侵者发起的几种常见攻击之一是向设备发送具有欺

  骗性的随机源IP地址的分组,使该设备失去路由,其后果是该设备会向所有那些受欺骗的主机回复一个ICMP不

  可达分组。这些情况下,对这些大量请求的回复会包含未知或无效IP地址,导致性能退化。为防止这种情况和

  许多其它类型的攻击发生,需要禁用ICMP不可达消息。

  注意:在某些配置中,某些隧道结构类型,需要使用“ip unreachables”命令。如果设备必须使用ICMP不

        达特性,则缓解性能退化的一个替代方案是使用“R1(config)#ip icmp rate-limit milliseconds”命

       制回复排放数量。在IOS 12.0及其后续版本中,默认排放率限制被设置为 2 packet/s。

 IP掩码应答:使用IP掩码应答服务响应ICMP掩码请求,向一个特定的网络发送ICMP掩码应答消息。攻击者可

  使用这项技术协助映射网络,默认情况下所有IOS都禁用IP掩码应答。

 无偿ARP(GARP Gratuitous Address Resolution Protocol):是一个主动提供的ARP广播,包含客户端主机的

  IP地址和路由器的MAC地址。当客户端通过PPP连接来协商和连接一个地址时,Cisco路由器将发出一个GARP消

  息,甚至客户端接收来自本地地址池的地址时也会发生这种情况,默认情况下所有接口都启用GARP。

五:Auto-Secure特性

Cisco设备提供了多种服务,监视和维护安全等级并且识别每项服务是一项十分困难的任务,新版的IOS提供了自动配置路由器安全的单一CLI宏命令“auto secure”来协助完成这项任务。Auto-Secure是一项有效地特性,人们无需专门申请安全操作,能迅速保护网络;也不需要彻底了解所有Cisco IOS特性,简化了路由器安全配置,且增强了路由器配置。Auto-Secure特性可在IOS 12.3(1)及其以后版本中使用。

说明:IOS 12.3(8)T之前的版本中,Auto-Secure配置回滚不可用;IOS 12.3(8)T及其以后版本中可用。也就是

  说,如果Auto-Secure配置失败,回滚使得路由器可以恢复到其Auto-Secure之前的配置状态。

该命令执行的功能:

①禁用可被利用进行网络攻击的公共IP服务。

②当受到攻击时,启用可以帮助网络进行防御的IP服务和特性。

该命令的两种模式:

①交互模式:该模式会提示用户启用和禁用服务及其它安全功能的选项,这是默认模式。

②非交互模式:使用[no-interact]参数进入该模式,它使用Cisco默认设置自动配置“auto secure”命令。

R1#auto secure

路由器的访问安全

R1#show auto secure config        //显示所有已被添加为Auto-Secure过程部分的配置命令

六:路由器日志

R1(config)#logging on        //启用路由的日志功能,默认就是启用的
R1(config)#logging console        //把日志在控制台上显示出来,默认就是显示的
R1(config)#logging monitor      //把日志在远程用户终端上显示出来,用户终端需要配置下面的命令才行

PC(telnet/ssh):R1#terminal monitor

R1(config)#logging buffered        //把日志记录在内存中,以后使用下面的命令就能看到日志了

R1#show logging
R1(config)#logging host 172.16.1.100        //把日志发送到日志服务器,服务器地址为172.16.1.100
R1(config)#logging trap debugging        //指明把比debugging级(等级7)还严重的信息记录在日志中
R1(config)#logging origin-id ip      //指明路由器发送日志时,会用IP地址(也可以使用主机名)作为ID
R1(config)#logging facility local7        //将记录事件类型定义为local7
R1(config)#logging source-interface f0/0    //指明路由器以F0/0接口的IP作为源IP向服务器发送日志
R1(config)#service timestamps log        //指明日志中要加上发生时间
R1(config)#service timestamps log datetime    //指明发生时间采用绝对时间,而不是开机了多长时间
R1(config)#service sequence-numbers        //指明日志中要加入序列号

R1#show logging        //查看日志的配置情况

路由器的访问安全
说明:

①日志有0-7,共8个等级。等级0最为严重;等级7最不重要,为debug信息。

  路由器的访问安全

②这里有一个简单的免费服务器《Router Syslog》:

  下载地址:http://www.onlinedown.net/soft/54636.htm

  运行环境:Win9x/Me/NT/2000/XP/2003

  软件大小:465KB

  软件语言:英文

  路由器的访问安全

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多