2024年6月11日发(作者:)
关闭Cisco不需要的服务
这里假设路由器有Ethernet0和Ethernet1端口
Router(config)# no cdp run//关闭CDP协议,CDP使用多播地址,能够发现对端路由
器的Hostname,硬件设备类型,IOS版本,三层接口地址,发送CDP多播的地址
Router(config)# no service tcp-small-servers
Router(config)# no service udp-small-servers//关闭TCP和UDP的一些无用的小服务,
这些小服务的端口小于19,通常用在以前的UNIX环境中,如chargen,daytime等
Router(config)# no service finger//finger通常用在UNIX中,用来确定谁登陆到设备上:
telnet 192.168.1.254 finger
Router(config)# no ip finger//关闭对于finger查询的应答
Router(config)# no ip identd//关闭用户认证服务,一个设备发送一个请求到Ident接口
(TCP 113), 目标会回答一个身份识别,如host名称或者设备名称
Router(config)# no ip source-route//关闭IP源路由,通过源路由,能够在IP包头中指
定数据包实际要经过的路径
Router(config)# no ftp-server enable//关闭FTP服务
Router(config)# no ip http server//关闭HTTP路由器登陆服务
Router(config)# no ip http secure-server//关闭HTTPS路由器登陆服务
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服务
Router(config)# no ip domain-lookup//关闭DNS域名查找
Router(config)# no ip bootp server//bootp服务通常用在无盘站中,为主机申请IP地址
Router(config)# no service dhcp//关闭DHCP服务
Router(config)# no service pad//pad服务一般用在X.25网络中为远端站点提供可靠连
接
Router(config)# no boot network//关闭路由器通过TFTP加载IOS启动
Router(config)# no service config//关闭路由器加载IOS成功后通过TFTP加载配置文
件
Router(config)# interface ethernet 0
Router(config -if)# no ip proxy-arp//关闭代理ARP服务
Router(config -if)# no ip directed-broadcast//关闭直连广播,因为直连广播是能够被路
由的
Router(config -if)# no ip unreachable
Router(config -if)# no ip redirect
Router(config -if)# no ip mask-reply//关闭三种不可靠的ICMP消息
Router(config -if)# exit
注意:使用show ip interface查看接口启用的服务
Router(config)# interface ethernet 0
Router(config -if)# shutdown//手动关闭没有使用的接口
Router(config -if)# exit
Router(config)# service tcp-keepalives -in
Router(config)# service tcp-keepalives -out
//对活动的tcp连接进行监视,及时关闭已经空闲超时的tcp连接,通常和telnet,ssh
一起使用
Router(config)# username admin1 privilege 15 secret geekboy
Router(config)# hostname jwy
Bullmastiff(config)# ip domain-name
Bullmastiff(config)# crypto key generate rsa
Bullmastiff(config)# line vty 0 4
Bullmastiff(config -line)# login local
Bullmastiff(config -line)# transport input ssh
Bullmastiff(config -line)# transport output ssh
//只允许其他设备通过SSH登陆到路由器
安全连接:用SSH替代Telnet
如果你一直利用Telnet控制网络设备,你可以考虑采用其他更安全的方式。本文告诉你如何
用SSH替换Telnet。
使用Telnet这个用来访问远程计算机的TCP/IP协议以控制你的网络设备相当于在离开
某个建筑时大喊你的用户名和口令。很快地,会有人进行监听,并且他们会利用你安全意识
的缺乏。
SSH是替代Telnet和其他远程控制台管理应用程序的行业标准。SSH命令是加密的并以
几种方式进行保密。
在使用SSH的时候,一个数字证书将认证客户端(你的工作站)和服务器(你的网络设
备)之间的连接,并加密受保护的口令。SSH1使用RSA加密密钥,SSH2使用数字签名算法
(DSA)密钥保护连接和认证。
加密算法包括Blowfish,数据加密标准(DES),以及三重DES(3DES)。SSH保护并且有
助于防止欺骗,“中间人”攻击,以及数据包监听。
实施SSH的第一步是验证你的设备支持SSH。请登录你的路由器或交换机,并确定你是
否加载了一个支持SSH的IPSec IOS镜像。
在我们的例子中,我们将使用Cisco IOS命令。运行下面的命令:
Router> Show flash
该命令显示已加载的IOS镜像名称。你可以用结果对比你的供应商的支持特性列表。
在你验证了你的设备支持SSH之后,请确保设备拥有一个主机名和配置正确的主机域,
就像下面的一样:
Router> config terminal
Router (config)# hostname hostname
Router (config)# ip domain-name domainname
在这个时候,你就可以启用路由器上的SSH服务器。要启用SSH服务器,你首先必须
利用下面的命令产生一对RSA密钥:
Router (config)# crypto key generate rsa
在路由器上产生一对RSA密钥就会自动启用SSH。如果你删除这对RSA密钥,就会自动
禁用该SSH服务器。
实施SSH的最后一步是启用认证,授权和审计(AAA)。在你配置AAA的时候,请指定
用户名和口令,会话超时时间,一个连接允许的尝试次数。像下面这样使用命令:
Router (config)# aaa new-model
Router (config)# username password
Router (config)# ip ssh time-out
Router (config)# ip ssh authentication-retries
要验证你已经配置了SSH并且它正运行在你的路由器上,执行下面的命令:
Router# show ip ssh
在验证了配置之后,你就可以强制那些你在AAA配置过程中添加的用户使用SSH,而不
是Telnet。你也可以在虚拟终端(vty)连接中应用SSH而实现同样的目的。这里给出一个
例子:
Router (config)# line vty 0 4
Router (config-line)# transport input SSH
ssh -l gcs 192.168.1.254
在你关闭现存的Telnet会话之前,你需要一个SSH终端客户端程序以测试你的
配置。我极力推荐PuTTY;它是免费的,而且它是一个优秀的终端软件。
路由器配置:
Router>enable
Router#config t
Router(config)#host jintian
jintian(config)#enable password 123
jintian(config)#int fa0/0
jintian(config-if)#ip add 192.168.1.1 255.255.255.0
jintian(config-if)#no shut
jintian(config-if)#exit
jintian(config)username jintian password jintian
jintian(config)#ip domain-name
jintian(config)#crypto key generate rsa
The name for the keys will be:
Choose the size of the key modulus in the range of 360 to 2048 for your
General Purpose Keys. Choosing a key modulus greater than 512 may take
a few minutes.
How many bits in the modulus [512]: 512
jintian(config)#line vty 0 4
jintian(config-line)#transport input ssh
jintian(config-line)#login local
jintian(config-line)#
测试:
在PC上:
Packet Tracer PC Command Line 1.0
PC>ping 192.168.1.1
Pinging 192.168.1.1 with 32 bytes of data:
Reply from 192.168.1.1: bytes=32 time=62ms TTL=255
Reply from 192.168.1.1: bytes=32 time=32ms TTL=255
Reply from 192.168.1.1: bytes=32 time=32ms TTL=255
Reply from 192.168.1.1: bytes=32 time=31ms TTL=255
Ping statistics for 192.168.1.1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 31ms, Maximum = 62ms, Average = 39ms
PC>ssh -l jintian 192.168.1.1
Password:
jintian>en
Password:
jintian#
R2(config)#aaa new-model 启用AAA
R2(config)#aaa authentication login default local 启用aaa认证,设置在本地服务器上进
行认证
R2(config)#username cisco pass cisco 创建一个用户cisco并设置其密码为cisco用于SSH客
户端登录
R2(config)#line vty 0 4
R2(config-line)#login authentication default 设置使用AAA的default来进行认证
R2(config-line)#exit
R2(config)#
2.4.3 配置Telnet和SSH
2.4.3 配置Telnet和SSH
2009-04-14 16:24 思科系统公司 人民邮电出版社 我要评论(0) 字
号:T | T
《思科网络技术学院教程CCNA Explorations:LAN交换和无线》为
思科网络技术学院CCNA Exploration第4版课程的配套书面教材,
第2章讲述的是交换机基本概念和配置。本节说的是配置Telnet和
SSH。
2.4.3 配置Telnet和SSH
老式交换机可能不支持使用安全外壳(SSH)的安全通信。本节将帮
助您选择与交换机通信的方法:Telnet和SSH。
Telnet是早期型号的Cisco交换机上支持的最初方法。Telnet是用
于终端访问的常用协议,因为大部分最新的操作系统都附带内置的
Telnet客户端。但是Telnet不是访问网络设备的安全方法,因为它
在网络上以明文发送所有通信。攻击者使用网络监视软件可以读取在
Telnet客户端和Cisco交换机的Telnet服务之间发送的每一个击键。
由于Telnet协议存在安全性问题,因此SSH成为用于远程访问Cisco
设备虚拟终端线路的首选协议。
SSH提供与Telnet相同类型的访问,但是增加了安全性。SSH客户端
和SSH服务器之间的通信是加密的。SSH已经经历了多个版本,Cisco
设备目前支持 SSHv1和SSHv2。建议尽可能实施SSHv2,因为它使用
比SSHv1更强的安全加密算法。
1.配置Telnet
Telnet是Cisco交换机上支持vty的默认协议。如果为Cisco交换
机分配了管理IP地址,就可以使用Telnet客户端连接到交换机。最
初,vty线路并不安全,试图连接vty线路的任何用户都能接入交换
机。
前一节中介绍了如何通过要求密码身份验证来保护通过vty线路对
交换机的访问。这可略微提高Telnet服务的安全性。
因为Telnet是vty线路的默认传输方式,因此在执行交换机初始配
置之后,不需要指定Telnet。但是,如果已将vty线路的传输协议
更改为只允许 SSH,则需要手动启用Telnet协议以允许Telnet访问。
如果需要在Cisco 2960交换机上重新启用Telnet协议,可在线路配
置模式下使用以下命令:(config-line)#transport input telnet
或(config-line)#transport input all。如果允许所有传输协议,
则不仅允许Telnet访问,而且仍允许通过SSH访问交换机。
2.配置SSH
SSH是受到导出限制的一种加密安全功能。要使用此功能,交换机上
必须安装加密映像。
SSH功能有SSH服务器和SSH集成客户端,后者是在交换机上运行的
应用程序。可以使用PC上运行的任何SSH客户端或交换机上运行的
Cisco SSH客户端来连接运行SSH服务器的交换机。
对于服务器组件,交换机支持SSHv1或SSHv2。对于客户端组件,交
换机只支持SSHv1。
SSH支持数据加密标准(DES)算法、三重DES(3DES)算法和基于密
码的用户身份验证。DES提供56位加密,而3DES提供168位加密。
加密需要时间,但是DES加密文本的时间比3DES少。通常情况下,
加密标准由客户指定,因此如果必须配置SSH,请询问客户使用哪一
种标准(关于数据加密方法的讨论不属于本课程的范围)。
要实施SSH,需要生成RSA密钥。RSA涉及公钥和私钥,公钥保留在
公共RSA服务器上,而私钥仅由发送方和接收方保留。公钥可对所有
人公开,并用于加密消息。用公钥加密的消息只能使用私钥解密。这
称为非对称加密。非对称加密将在"Accessing the WAN, CCNA
Exploration Companion Guide"课程中更详细地讨论。
如果要将交换机配置为SSH服务器,则需要从特权执行模式下开始,
按照下面的步骤配置。
步骤1 使用configure terminal命令进入全局配置模式。
步骤2 使用hostname hostname命令配置交换机的主机名。
步骤3 使用ip domain-name domain_name命令配置交换机的主机
域。
步骤4 在交换机上启用SSH服务器以进行本地和远程身份验证,然
后使用crypto key generate rsa命令生成RSA密钥对。
生成RSA密钥时,系统提示用户输入模数长度。Cisco建议使用1024
位的模数长度。模数长度越长越安全,但是生成和使用模数的时间也
越长。这一步完成SSH服务器的基本配置,剩下的步骤描述优化SSH
配置可以使用的几个选项。
步骤5 使用end命令返回到特权执行模式。
步骤6 使用show ip ssh或show ssh命令显示交换机上的SSH服
务器的状态。
步骤7 使用configure terminal命令进入全局配置模式。
步骤8 (可选)使用ip ssh version [1 | 2]命令将交换机配置为
运行SSHv1或SSHv2。
如果未输入此命令或未指定关键字选项1或2,SSH服务器将选择SSH
客户端支持的最高SSH版本。例如,如果SSH客户端支持SSHv1和
SSHv2,则SSH服务器选择 SSHv2。
步骤9 配置SSH控制参数:
以秒为单位指定超时值;默认值为120秒。该值的范围为0~120秒。
为了建立SSH连接,必须完成很多阶段,例如连接、协议协商和参数
协商。超时值规定了交换机为建立连接而留出的时间量。
默认情况下,最高可以有5个并存的加密SSH连接用于多个基于CLI
的网络会话(会话0到会话4)。在执行外壳启动后,基于CLI的会
话的超时值将恢复为默认的10分钟。
指定客户端可向服务器重新验证身份的次数。默认值为3;取值范围
为0~5。例如,用户可以允许SSH会话在终止之前连续3次持续10
分钟以上。
当配置这两个参数时,请重复执行本步骤。要配置这两个参数,请使
用ip ssh {timeout seconds | authentication-retries number}
命令。
步骤10 使用end命令返回到特权执行模式。
步骤11 使用show ip ssh或show ssh命令显示交换机上的SSH 服
务器连接的状态。
步骤12 (可选)使用copy running-config startup-config命令
在配置文件中保存您的输入。
要删除RSA密钥对,可使用crypto key zeroize rsa全局配置命令、
RSA密钥对删除之后,SSH服务器自动被禁用。
如果要阻止非SSH连接,可在线路配置模式下添加 transport input
ssh命令,将交换机限制为仅允许SSH连接。直接(非 SSH)Telnet
连接将被拒绝。
例2-10列出了在Catalyst 2960交换机上启用SSH的一套命令。SSH
默认版本为第2版,但我们可以任意配置它。这种配置可以阻止虚拟
终端线路上的Telnet访问。假设本地用户数据库和vty口令已被设
定,前面操作过程中的第3、4步会使用最少的命令来启动SSH。
例2-10 在Catalyst 2960上启动SSH服务
发布评论