关闭不必要的服务

关闭不必要的服务

方法一:使用SDM工具的one-steplockdown


方法二:

R1# autosecure12.4以后才有的功能

使用之后会出现一系列向导配置


方法三:分别手动关闭


------------------------------------------------------------------------------------------------------

IOS提供的服务,如果不使用,应该及时关闭

1 Cisco Discovery Protocal CDP默认开启

2 Network Time Protocol默认关闭

3 TCP/UDP Minor Services默认关闭

4 Gratutious ARP默认开启

5 Proxy ARP默认开启

6 Simple Network Management Protocol默认关闭

7 IP Directed-broadcast默认关闭

8 IP Source Routing默认开启

9 Finger Service默认关闭

10 ICMP Unreachable默认开启

11 ip classless默认开启

12 DHCP service默认开启

13 domain-lookup默认开启

14 identD默认关闭

15 FTP和TFTP

16 http (默认关闭)

17 bootP(默认开启)

18 PAD(默认开启)


1 CDP

需要在交换机面向PC的接口关闭CDP


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

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

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


2 NTP

默认关闭


3 TCP/UDP minor Service


servicetcp-small-servers这个服务打开后可能会被其他设备获取信息

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

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

要在路由器上关闭这些服务,使用下面的配置:cisco设备默认已经关闭)

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

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

关闭了这些服务之后,用下面方法进行测试,

如果服务没有关闭,会出现以下的现象

如:Router(config)#telnet 192.168.1.254 daytime


Router(config)#telnet 192.168.1.254 echo

可以成功登录进去,然后输入一个字符会显示出两个。因为这是一个TCP的连接,发送一个字符,回显一个字符


Router(config)#telnet 192.168.1.254 chargen


Show tcpbrief 可以查看tcp连接状况


4 ip gratuitious arp


可以检测地址是否有冲突

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

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

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


5 proxy ARP

代理ARP是ARP协议的一个变种。对于没有配置缺省网关的计算机要和其他网络中的计算机实现通信,网关收到源计算机的 ARP 请求会使用自己的 MAC 地址与目标计算机的IP地址对源计算机进行应答。代理ARP就是将一个主机作为对另一个主机ARP进行应答。它能使得在不影响路由表的情况下添加一个新的Router,使得子网对该主机来说变得更透明化。同时也会带来巨大的风险,除了ARP欺骗,和某个网段内的ARP增加,最重要的就是无法对网络拓扑进行网络概括。代理ARP的使用一般是使用在没有配置默认网关和路由策略的网络上的。

关闭命令:R2(config-if)#no ipproxy-arp

6 ip directed broadcast


会造成smurf攻击,建议关闭,参见实验


7 SNMP


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

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

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

*关闭SNMP服务。

要查看是否配置了SNMP命令,执行showrunning-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服务之后,使用showsnmp命令验证。


8IP Sourcerouting


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


9 Finger Service

默认关闭

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

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

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

Router#telnet192.168.1.254 finger (connect 192.168.1.254 finger)

Router(config)#no ip finger

Router(config)#no service finger


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



10 IP Unreachable


可以关闭 ip Unreachable

R2(config-if)#no ip unreachables

关闭之前会显示不可达提示,关闭之后就直接是点的状态


11 ip classless


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

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


12 DHCP service

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)#noservice dhcp这条命令阻止路由器成为一台DHCP服务器或者中继代理。但是不会阻止作为DHCP客户端,即,路由器的接口依旧可以从其他DHCP服务器获得地址


13 domain-lookup

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

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

Router(config)#hostnamesanta

Router(config)#ipdomain-name claus.gov

Router(config)#ipname-server 200.1.1.1 202.1.1.1

Router(config)#ipdomain-lookup

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

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

解决这个问题,要么确保路由器有一个到DNS服务器的安全路径,要么不要使用DNS,而使用手动解析。使用手动解析,可以关闭DNS,然后使用 iphost命令静态定义主机名。如果想阻止路由器产生DNS查询,要么配置一个具体的DNS服务器(ipname-server),要么将这些查询作为本地广播(当DNS服务器没有被配置时),使用下面的配置:

Router#telnetwww.quizware.com80(测试)

Router(config)#noip domain-lookup

Router#telnetwww.cisco.com80


14 IdentD

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

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

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

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

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


15 FTP和TFTP

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

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

Router(config)#no ftp-server enable

Router(config)#no ip ftp passive

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


16 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安全设备管理器(SecurityDevice Manager,SDM)用HTTP访问路由器,如果要用SDM来管理路由器,就不能关闭HTTP服务。

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


17 BootP

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

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

Cisco路由器能作为一台BootP服务器,给请求的设备提供闪存中的文件,因为以下3个原因,应该在路由器闪关闭BootP:*不再有使用BootP的真正需求;*BootP没固有的认证机制。任何人都能从路由器请求文件,无论配置了什么,路由器都将作出回复;*易受DoS攻击。

默认地,该服务是启用的。

要关闭BootP,使用下面的配置:Routerconfig#no ip bootp server


18 PAD

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

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

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



你可能感兴趣的:(服务,Cisco)