Cisco(思科)设备上建议关闭的不常用服务

cisco设备上有一些不常用的服务默认是打开的,为了安全性考虑,建议关闭掉这些服务,除非有特殊应用场景。下面就谈谈这些服务的作用以及操作命令。


一、Cisco发现协议

  CDP是一个Cisco专用协议,运行在所有Cisco产品的第二层,用来和其他直接相连的Cisco设备共享基本的设备信息。独立于介质和协议。

  ×××再勘测×××中使用CDP信息,这种可能性是比较小的。因为必须在相同的广播域才能查看CDP组播帧。所以,建议在边界路由器上关闭CDP,或至少在连接到公共网络的接口上关闭CDP。

  缺省情况下是启用的。全局关闭CDP,使用no cdp run命令,关闭之后,应该使用show cdp验证CDP是否已被关闭。

二、TCP和UDP低端口服务

  TCP和UDP低端口服务是运行在设备上的端口19和更低端口的服务。所有这些服务都已经过时:如日期和时间(daytime,端口13),测试连通性(echo,端口7)和生成字符串(chargen,端口19)。

    下面显示了一个打开的连接,被连接的路由器上打开了chargen服务:

Router#telnet 192.168.1.254 chargen

  要在路由器上关闭这些服务,使用下面的配置:

Router(config)#no service tcp-small-servers

Router(config)#no service udp-small-servers

  关闭了这些服务之后,用下面方法进行测试,如:Router(config)#telnet 192.168.1.254 daytime

  

三、Finger

  Finger协议(端口79)允许网络上的用户获得当前正在使用特定路由选择设备的用户列表,显示的信息包括系统中运行的进程、链路号、连接名、闲置时间和终端位置。通过show user命令来提供的。

  Finger是一个检测谁登录到一台主机的UNIX程序,而不用亲自登录到设备来查看。

  下面显示了一个验证finger服务被打开和如何关闭的例子:

Router#telnet 192.168.1.254 finger

  (connect 192.168.1.254 finger)

Router(config)#no ip finger

Router(config)#no service finger

  当对路由器执行一个finger操作时,路由器以show users命令的输出来作为响应。要阻止响应,使用no ip finger命令,将关闭finger服务。在较老的版本中,使用no service finger命令。在较新版本中,两个命令都适用。

  

四、IdentD

  IP鉴别支持对某个TCP端口身份的查询。能够报告一个发起TCP连接的客户端身份,以及响应该连接的主机的身份。

  IdentD允许远程设备为了识别目的查询一个TCP端口。是一个不安全的协议,旨在帮助识别一个想要连接的设备。一个设备发送请求到Ident端口(TCP 113),目的设备用其身份信息作为响应,如主机和设备名。

  如果支持IP鉴别,×××者就能够连接到主机的一个TCP端口上,发布一个简单的字符串以请求信息,得到一个返回的简单字符串响应。

  要关闭IdentD服务,使用下面的命令:Router(config)#no ip identd

  可以通过Telnet到设备的113端口来进行测试

五、IP源路由

  应该在所有的路由器上关闭,包括边界路由器。可以使用下面的命令:Router(config)#no ip source-route禁止对带有源路由选项的IP数据包的转发。

六、FTP和TFTP

  路由器可以用作FTP服务器和TFTP服务器,可以将映像从一台路由器复制到另一台。建议不要使用这个功能,因为FTP和TFTP都是不安全的协议。

  默认地,FTP服务器在路由器上是关闭的,然而,为了安全起见,仍然建议在路由器上执行以下命令:Router(config)#no ftp-server write-enable (12.3版本开始);Router(config)#no ftp-server enable

  可以通过使用一个FTP客户端从PC进行测试,尝试建立到路由器的连接。

七、HTTP

  测试方法可以使用一个Web浏览器尝试访问路由器。还可以从路由器的命令提示符下,使用下面的命令来进行测试:Router#telnet 192.168.1.254 80;Router#telnet 192.168.1.254 443

  要关闭以上两个服务以及验证,执行以下的步骤:

Router(config)#no ip http server

Router(config)#no ip http secure-server

Router#telnet 192.168.1.254 80

Router#telnet 192.168.1.254 443

  注意:Cisco安全设备管理器(Security Device Manager,SDM)用HTTP访问路由器,如果要用SDM来管理路由器,就不能关闭HTTP服务。

  如果选择用HTTP做管理,应该用ip http access-class命令来限制对IP地址的访问。此外,也应该用ip http authentication命令来配置认证。对于交互式登录,HTTP认证最好的选择是使用一个TACACS+或RADIUS服务器,

这可以 避免将enable口令用作HTTP口令。

八、SNMP

  SNMP可以用来远程监控和管理Cisco设备。然而,SNMP存在很多安全问题,特别是SNMP v1和v2中。要关闭SNMP服务,需要完成以下三件事:

  *从路由器配置中删除默认的团体字符串;

  *关闭SNMP陷阱和系统关机特征;

  *关闭SNMP服务。

  要查看是否配置了SNMP命令,执行show running-config命令。下面是用来完全关闭SNMP的配置命令:

Router(config)#no snmp-server community public RO

Router(config)#no snmp-server community private RW

Router(config)#no snmp-server enable traps

Router(config)#no snmp-server system-shutdown

Router(config)#no snmp-server trap-auth

Router(config)#no snmp-server

  前两个命令删除了只读和读写团体字符串(团体字符串可能不一样)。接下来三个命令关闭SNMP陷阱、系统关机和通过SNMP的认证陷阱。最后在路由器上关闭SNMP服务。关闭SNMP服务之后,使用show snmp命令验证

九、域名解析

  缺省情况下,Cisco路由器DNS服务会向255.255.255.255广播地址发送名字查询。应该避免使用这个广播地址,因为×××者可能会借机伪装成一个DNS服务器。

  如果路由器使用DNS来解析名称,会在配置中看到以下类似的命令:

Router(config)#hostname santa

Router(config)#ip domain-name claus.gov

Router(config)#ip name-server 200.1.1.1 202.1.1.1

Router(config)#ip domain-lookup

  可以使用show hosts命令来查看已经解析的名称。

  因为DNS没有固有的安全机制,易受到会话×××,在目的DNS服务器响应之前,×××先发送一个伪造的回复。如果路由器得到两个回复,通常忽略第二个回复。

  解决这个问题,要么确保路由器有一个到DNS服务器的安全路径,要么不要使用DNS,而使用手动解析。使用手动解析,可以关闭DNS,然后使用ip host命令静态定义主机名。如果想阻止路由器产生DNS查询,

要么配置一个具体的DNS服务器(ip name-server),要么将这些查询作为本地广播(当DNS服务器没有被配置时),使用下面的配置:

Router#telnetwww.quizware.com80 (测试)

Router(config)#no ip domain-lookup(禁止dns查询)

Router#telnetwww.cisco.com80(再次测试)

  

十、BootP

  BootP是一个UDP服务,可以用来给一台无盘工作站指定地址信息,以及在很多其他情况下,在设备上加载操作系统(用它来访问另一个运行有BOOTP服务的路由器上的IOS拷贝,将IOS下载到BOOTP客户端路由器上)。

  该协议发送一个本地广播到UDP端口67(和DHCP相同)。要实现这种应用,必须配置一个BootP服务器来指定IP地址信息以及任何被请求的文件。

  Cisco路由器能作为一台BootP服务器,给请求的设备提供闪存中的文件,因为以下3个原因,应该在路由器闪关闭BootP:

  1. 不再有使用BootP的真正需求;
  2. BootP没固有的认证机制。任何人都能从路由器请求文件,无论配置了什么,路由器都将作出回复;
  3. 易受DoS×××。

  默认地,该服务是启用的。要关闭BootP,使用下面的配置:Router(config)#no ip bootp server

十一、DHCP

  DHCP允许从服务器获取所有的IP地址信息,包括IP地址、子网掩码、域名、DNS服务器地址、WINS服务器地址哈、TFTP服务器地址和其他信息。Cisco路由器既能作为DHCP客户端,也能作为服务器。

  在将Cisco路由器作为边界路由器时,应该设置该路由器为DHCP客户端的唯一的情形是,如果是通过DSL和线缆调制解调器连接到ISP,而ISP使用DHCP指定地址信息。否则,决不要将路由器设置为DHCP客户端。

  同样地,应该设置路由器为一台DHCP服务器地唯一的情形是,当在一个SOHO环境中使用路由器,在这种小型的网络中基本上这台路由器是可以给PC指定地址的唯一设备。如果这样做,确保在路由器外部接口上过滤UDP端口                67,这将阻止来自外部的DHCP和BootP请求。

  一般DHCP服务器是默认打开的。使用下面的配置关闭:Router(config)#no service dhcp这阻止路由器成为一台DHCP服务器或者中继代理

十二、PAD

  数据包组合/分拆(packet assembler/disassembler,PAD)用在X.25网络上。以提供远程站点间的可靠连接。

PAD能给×××提供有用的功能。假设×××能获得直接连接在路由器上的设备的控制权,而如果路由器在运行PAD服务,它将接受任何PAD连接。

  要关闭这个服务,使用下面的命令:Router(config)#no service pad

  

十三、配置自动加载Cisco路由器启动时,在出现CLI提示符之前,将经历几个测试阶段、发现Cisco IOS和配置文件。路由器启动时,通常会经过以下5个步骤:

  1. 加载并执行POST,发现ROM,测试硬件组件,如闪存和接口;
  2. 加载并执行引导自举程序;
  3. 引导自举程序发现并加载Cisco IOS映像文件。这些映像文件可以来自闪存、TFTP服务器或者闪存;
  4. 加载了Cisco IOS之后,发现并执行一个配置文件:配置文件储存在NVRAM中,但如果NVRAM是空的,系统配置对话框开始,或者路由器使用TFTP来获取一个配置文件;
  5. 给用户CLI EXEC提示符。

  在发现一个Cisco IOS文件时,假定在NVRAM中没有boot system命令,路由器首先在闪存中寻找有效的Cisco IOS映像文件。如果闪存中没有IOS映像文件,路由器执行TFTP启动,或者网络启动;

发送本地广播请求从TFTP服务器上获取操作系统文件。如果这个过程也失败了,路由器从内存中加载IOS映像文件。

  因为启动过程中用到TFTP,而对加载过程没有安全保护。所以,不应该允许路由器使用该功能。要阻止该功能,使用下面的配置:

  Router(config)#no boot network remote-url-ftp:

  [[[//[username:[:password]@]location]/directory]/filename]-rcp:

  [[[//[[email protected]]/location]/directory]/filename]-tftp:

  [[[//location]/directory]/filename

  加载了IOS映像之后,开始发现一个配置文件。如果在NVRAM中没有配置文件,路由器会使用系统配置对话框来建立配置文件,或使用网路配置选项:使用TFTP广播来发现配置文件。

所以,应该使用以下的命令关闭该特性:Router(config)#no service config

十四、关闭无根据ARP

  大多数Cisco路由器(缺省情况下)都会向外发送无根据的ARP消息,无论客户端何时连接并基于PPP连接协商一个IP地址。ARP毒害×××主要利用的就是这种ARP消息。

  即使客户端从一个本地地址池收到地址,Cisco路由器也会生成一个无根据的ARP传送。

  禁止无根据ARP传送,使用下面的命令:Router(config)#no ip gratuitous-arps

 十五、关闭IP无类别路由选择服务

  路由器可能会收到一些发往一个没有网络缺省路由的子网的数据包,如果启用了IP无类别服务时,会将这些数据包转发给最有可能路由的超网。

  要关闭IP无类别路由选择,在全局配置模式下使用no ip classless命令

原文地址:http://blog.51cto.com/jettcai/2155120

时间: 2024-10-04 13:52:40

Cisco(思科)设备上建议关闭的不常用服务的相关文章

cisco关闭一些不常用服务

一.Cisco发现协议 CDP是一个Cisco专用协议,运行在所有Cisco产品的第二层,用来和其他直接相连的Cisco设备共享基本的设备信息.独立于介质和协议. 黑客再勘测攻击中使用CDP信息,这种可能性是比较小的.因为必须在相同的广播域才能查看CDP组播帧.所以,建议在边界路由器上关闭CDP,或至少在连接到公共网络的接口上关闭CDP.  www.2cto.com 缺省情况下是启用的.全局关闭CDP,使用no cdp run命令,关闭之后,应该使用show cdp验证CDP是否已被关闭. 二.

生成树协议、CDP思科设备发现协议、SSH协议

线路冗余->交换机成环 交换机成环导致: 1 广播风暴 2 mac地址表震荡 一个mac在一台交换机上只能对应一个接口,但一个接口可以对应多个mac 3 重复帧拷贝 生成树协议: 802.1D.PVST.PVST+.802.1s.802.1w 生成树协议用于实现二层线路冗余,在网络中逻辑的阻塞部分接口来实现从源到目的仅有一条唯一路径: 最佳路径故障时,阻塞端口自动工作来实现备份的作用: 所谓生成树,就是在二层网络中构建一个树形结构,形成唯一.最短.星型拓扑: 802.1D 公有 PDU:协议数据

思科设备模块器GNS3V0.7.2​软件安装及详解

软件介绍 思科设备模块器GNS3V0.7.2 all-in-one工具软件,非常好的Cisco模拟软件,而且还集中了juniper的模拟!GNS3是一个图形化的网络模拟器,允许模拟复杂的网络. 为了让完整的模拟,GNS3与一下软件是密切相关的:dynamips,核心的程序,允许思科IOS仿真.Dynagen,基于文本的前端为dynamips的结束.Qemu,通用和开放源码机模拟器和虚拟器.GNS3是一个很好的补充工具,真正为网络实验室的工程师,管理人员如想通过CCNA证书,CCNP,CCIP,C

CCNA实验1:思科设备基本配置

实验目标: 1:了解CiscoPacket Tracer模拟器的使用方法 2:掌握思科设备通用的配置命令 实验步骤: 1:使用思科交换机或路由器练习通用命令 2:配置思科路由器的常用命令 3:配置思科交换机的常用命令 4:总结常用的show命令 实验笔记: 实验配置: 1:通用配置命令 Switch>                          # 用户模式,类似于电脑系统的来宾账户,权限较小 Switch>enable                    # 特权模式,类似于电脑系统

在思科路由器上部署EZVPN(PC Client)

1. 拓扑 1.1 逻辑拓扑 1.2 实验拓扑(GNS3+VMwareworkstation(Win7)) 2. 路由器配置 R3: hostname Internet interface FastEthernet0/0 ip address 192.168.100.3 255.255.255.0 no shutdown interface FastEthernet0/1 ip address 100.1.1.1 255.255.255.0 no shutdown R1: hostname GW

关于企业移动设备安全建议

此安全建议是针对企业内部购买使用的公共移动设备建议,考虑到个人隐私和个人设备所有权问题,不建议对在公司范围内个人移动设备使用. 使用密码.手势等解锁方式的移动设备在超过10分钟处于非活动状态(不使用),应自动锁屏. 如果移动设备中有关于加密的设置,应使用最高加密方式(最少128bit). 在选择不安全的WIFI和3G/4G/CDMA服务时,应该选择蜂窝数据通信网络(3G/4G/CDMA).因为蜂窝数据通信网络相较于不安全WIFI更加安全.特别注意,如果访问敏感数据的话,应该使用VPN,而不是WI

如何在移动设备上调试网页

这篇文章所讲到的方法已经过时,请移步<移动端真机调试终极利器-BrowserSync>,欢迎分享更多工具. 手机端页面,大多运行在webkit内核的浏览器上,但还是会因平台.厂商的不同而有种种兼容性问题.下面就介绍一下在iOS和Android两个平台上如何在真机上对页面进行调试.这里要说明的是,iOS平台只能用自带的Safari浏览器来调试,而Android平台也只能用google Chrome浏览器来调试.当然,我目前只发现这么两种手段,如果你还有其他方法可调试更多的浏览器,希望你能留言告诉

在移动设备上放大图片查看图片细节的俩种方法

类似淘宝京东上的产品图,我们可以放大来看产品的具体细节.那么,在移动设备上,基于Web浏览器的这种效果又是如何实现的呢? 一.使用touchEvent来实现,关于touchEvent的一些基本知识,可以阅读文章--多点触摸网络开发 1.页面代码 <div id="warpper" class="warpper"> <div class="clearfix"></div> <div id="con

怎样将游戏从Unity导到iOS设备上

当我开始开发自己的iOS游戏时,我会考虑的第一件事便是如何将其导出到设备中,如此有效地测试我的游戏.最初,该过程看似很长且复杂,我所遇到的主要问题是,尽管存在许多资源,但是它们并非完全来自同样的地方,所以我不得不通过各种教程将其组合并匹配在一起.所以我决定通过本文一步步地总结这一过程.这是我到目前为止所遵循的一些方式;希望这也能够带给处于同样开发阶段的人更多帮助. 1.获得unity和iOS导出器 如果你还未这么做,你首先需要在官网下载最新版本的Unity.已经出现了2个版本,分别是免费版(ht