!guide_close_btn!

06密码恢复

[复制链接]
发表于 : 2020-4-6 13:15:47 最新回复:2020-05-11 12:20:58
130 4
niuhai211  导师

1 背景

网络设备密码恢复虽然使用的频次不高,但是却非常重要,因为它涉及网络设备的基本知识,写这篇文档的目的首先是为了掌握密码恢复的技能,其实最重要的是加深对网络设备软硬件的了解。

常见的应用场景有:1)长时间不登录或设置了过于复杂的密码,结果自己也不记得了;2)二手设备被人设了密码不知道;3)不正常的工作交接;4)其它情况。

Console口的权限很大很大,是设备的物理权限,也是我们使用最多的用户接口。本文着重介绍怎样恢复Console口的登录密码,其它登录方式的密码都可以通过Console口来重置。如果有足够的权限,其它登录方式也可以恢复Console口密码,但是遗憾的是,当我们不知道Console口密码的时候,往往其它登录方式的密码也不知道。

2 概述

本秘笈包含两大流派:1)昔日大哥CISCO,余威仍存,荣光不再,但仍有一定江湖地位;2)当今霸主华为,荣光无限,势不可挡,江湖到处都有他的传说。学会这两大流派的功夫,其它流派基本也就可以无师自通啦。

我们的故事先从昔日大哥说起。

3 CISCO(思科)

3.1 路由器的构

Router.ccna3.1

06-01 cisco路由器构成,CCNA3.1

3.2 路由器的初始化

Router.init

06-02 cisco路由器的初始化,CCNA3.1

从初始化的过程可以看出,在路由器启动时,如果能跳过配置文件进入系统,就可以绕过登录口令,然后就可以对配置文件进行操作了。

3.3 配置寄存器值

4个十六进制位组成,例如:0x2102

每一个位都有重要的代表意义。

低位到高位(从右到左)逐一介绍:

3.3.1 (2)16 ==>(0010)2

Boot Field,影响IOS的启动。

1)当Boot Field的值是“2~F”中的任一个值时,路由器正常启动;

2)当此字段值为“0”时,启动进入ROMMON模式;

3)值为“1”时,进入RXBOOT模式。

例外:2500路由器的FLASH在配置寄存器的值为0x2102时属性为只读,如果要升级IOS必须把寄存器的值修改为0x2101

3.3.2 (0)16 ==>(0000)2

常用到第3个位,即整个寄存器值里的第8位,Bit 7

1Bit 7 == 0,路由器启动时加载NVRAMRAM

2Bit 7 == 1,路由器启动时不加载NVRAMRAM

3.3.3 (1)16 ==>(0001)2

常用到第0个位,即整个寄存器值里的第8位,Bit 8

1Bit 8 == 1,路由器在任何运行模式下只要按下CTRL + BREAK均会立即进入ROMMON模式;

2Bit 8 == 0,路由器在正常运行模式下CTRL + BREAK无效。

3.3.4 (2)16 ==>(0010)2

常用到第1个位,即整个寄存器值里的第13位,Bit 13

1Bit 13 == 1,如果路由器通过网络引导,尝试5次;

2Bit 13 == 0,如果路由器通过网络引导,尝试无穷多次;

3.4 典型配置寄存器值

3.4.1 0x2102

启动过程中,路由器会查看NVRAM中的配置,以确定启动次序,如果启动失败,会采用缺省的ROM软件进行启动。正常情况下都使用这个配置值,生产中都用这个值。

3.4.2 0x2142

启动过程中忽略NVRAM中的配置信息,进入初始配置对话模式。可用于密码恢复!

3.5 密码恢复操作思路

1)在路由器启动时,中断启动进程,进入到ROM模式;

2)修改配置寄存器的值为0x2142,不加载NVRAM中的初始配置,这样就可以绕过登录密码进入系统了;

3)进入系统后,复制初始配置到当前运行配置,这样就可以操作当前配置了,比如说查看或者修改各种登录模式的密码;

4)修改配置寄存器值为0x2102加载NVRAM中的初始配置,防止路由器重启后没有配置信息;

5)保存当前配置为初始配置,密码恢复工作完成。

3.6 密码恢复操作

对于不同的处理器架构,恢复操作稍有不同。目前新的路由器,基本上都是RISC

3.6.1 RISC处理器(精简指令集)

1)在路由器开机60秒内,按下键盘上的CTRL+BREAK键,使路由器启动进入ROMMON模式;

2)在rommon>提示符下,键入“confreg 0x2142,路由器在下一次启动时不加载NVRAM中的启动配置,如:

rommon>confreg 0x2142

3)在rommon>提示符下,键入reset命令,路由器将重新启动,如:

rommon>reset

4)路由器进入到启动配置对话过程,输入n并回车,跳过整个初始配置对话过程,如:

5)在router>模式下,输入enable,进入到特权模式,如:

router>enable

6)在router#模式下,输入copy startup running,将启动配置复制到运行配置;

router#copy startup running

7)如果设置的密码是明文形式,这时通过show running就可以查看到,如:

router#show running

8)或者进入到线路模式,直接修改线路登录密码,如:

router(config-line)#password xxxx

9)在全局配置下,修改enable passwordenable secret,如:

router(config)#enable password xxxx

10)在全局配置模式下,输入config reg 0x2102,设置路由器下次按照正常的方式启动,如:

router(config)#config 0x2102

11)保存配置,如:

router(config)#copy running startup

3.6.2 CISC处理器(完整指令集/富指令集)

1)在路由器开机60秒内,按下BREAK键或其他键,进入ROMMON 监控模式;

2)在>提示符下,输入o命令以记录当前配置寄存器的当前值,如:

>o

3)在>提示符下,键入o/r 0x2142,使路由器在下一次启动时不加载初始配置,如:

>o/r 0x2142

4)在>提示符下,键入i,重启路由器,如:

>i

5)接下来的操作与RISC处理器路由器的操作一样,不做过多赘述。

3.7 注意事项

今天多数人都是使用便携机,便携机的键盘多数为86键,正常情况下,当要输入BREAK时,需要按住Fn+BREAK。但是这在路由器启动时按这个组合键很多时候是不奏效的!按Fn+BREAK不行!伤透了心。以下是我的真实经历。

在某个以服务业闻名的城市,我公司作为某运营商的合作方,机房的一台CISCO路由器需要改配置。当地同事打了报告,向运营商申请了操作时间,然后打电话让我从另外一个城市赶来,准备某天晚上实施。本来想着没啥大事,就只申请了一个人进机房,于是,孤独的我独自一个背着便携机进入机房,开干。

打开电脑,插上串口线,密码,不知道!

问了很多人,一概不知,只好密码恢复。可是某想的便携机没有Break键!只好让正在享受服务的同事送电脑过来。又对同事的电脑装USb转串口驱动,装虚拟终端程序。

重启路由器,Ctrl + Break,不行。再重启,Ctrl + Fn + Break,还不行。键盘坏了?可是我怎么验证这个键是不是好的呢?我知道Windows有一个快捷键Windows + Break打开系统属性,试了下,没有问题呀!错过了时间?不可能呀!再重启,还是不行。

果断给已经回去继续享受服务的同事再打电话:“你带一个USB接口的全键盘过来。”同事七窍生烟:“深更半夜的,往哪儿弄键盘去?你到底行不行?”在我的苦口婆心和威逼利诱之下,全键盘还是送过来了。问题终于解决,走出机房,天已大亮,卖早点的小贩陆续上街,而我真正解决问题做配置的时间才十几分钟。到早点摊喝了两份白粥,背着两台电脑和一个全键盘,回同事住处睡觉。

4 华为

华为设备除了提供Console登录,还提供多种网络登录方式,不管是什么登录方式(SSHTelnetFTPWeb)的密码忘记,都可以通过Console口登录后来重置,Console口的登录密码忘记也可以通过其它登录方式恢复,但是需要登录的用户有足够的操作权限。

华为设备的Console口密码恢复比较简单,有比较友好的操作提示。最关键的是在开机启动初始化时要及时中断,进入到Boot Menu(启动菜单)。通过Boot Menu的提示就可以轻松搞定,而且不需要修改和恢复配置寄存器值。

4.1 准备工作

1)连接设备的Console口;

2)在设备开机时,根据提示按下Ctrl + B或“Ctrl + E”,只有3秒时间,注意时机;

3)输入Boot Menu密码,进入Boot Menu菜单;

4)根据Boot Menu菜单提示操作即可。

4.2 进入Boot Menu

以华为S5720-36C-EI-AC(软件版本S5720 V200R011C10SPC600)为例进行说明。是的,这是一台交换机,跟文章的标题不一样啊?不要在乎这些细节啦,让我们开始吧!

一切准备就绪,加电,要时刻注意启动进程,随时准备按Ctrl + B”或“Ctrl + E”,注意只有3时间。

BIOS LOADING ...


U-Boot 2012.10 (Sep 29 2017 - 19:40:33)


BOARDNAME: LS5D2T32C002

DDR type: DDR3

MEMC 0 DDR speed 533MHz

Press Ctrl+C to run Shmoo: skipped

Enabling DDR ECC reporting

Clear DDR: OK

Enabling DDR ECC correction

DDR Tune Completed

Enabling DDR ECC reporting

Clear DDR: OK

Enabling DDR ECC correction



DRAM: 1.9 GB

NAND: (ONFI), 128 KB blocks, 2 KB pages, 16B OOB, 8bit width

NAND: chipsize 512 MB

PCIe port in RC mode

PCIe port 0 is not active

In: serial

Out: serial

Err: serial

Net: registering eth

Detected spi flash with page size 64 KB, total 4 MB


Boot from main : boot num[1]


Starting kernel ...


Get log address 0xf1e00028


Starting udev

Starting Bootlog daemon: bootlogd.

Populating dev cache

net.ipv4.ip_local_port_range = 5

Starting syslogd/klogd: done

Stopping Bootlog daemon: bootlog

Wind River Linux 6.0.0.34 localhost console


localhost login: root (automatic login)


Jan 8 2019, 09:35:31

BootLoad version : 020b.0a05

Backup U-Boot ............................................................. done

ifconfig: SIOCSIFHWADDR: Device or resource busy


Press Ctrl+B or Ctrl+E to enter BootLoad menu: 3 2 1


Password:

//最可能的缺省密码是Admin@huawei.com

//其次可能是9300

//再其次试下superman


The default password is used now. Change the password.


BootLoad Menu


1. Boot with default mode

2. Enter serial submenu

3. Enter startup submenu

4. Enter ethernet submenu

5. Enter filesystem submenu

6. Enter password submenu

7. Clear password for console user

8. Reboot

(Press Ctrl+E to enter diag menu)


Enter your choice(1-8): 7

对各项BootLoad Menu解释如一下。

1. Boot with default mode

缺省模式启动。我只想进来看看各项菜单。

2. Enter serial submenu

进入串口子菜单。可用于密码恢复。用来通过串口的方式上传或下载文件,修改串口波特率等参数,减少文件上传下载时长等。将配置文件vrpcfg.zip”下载到本地,打开归档包,修改配置文件中的密码验证相关配置,重新再打包为vrpcfg.zip”,然后再上传,上传完成,重启设备。

有关串口下上传下载文件的操作,请查阅本书第5章《虚拟终端》。

3. Enter startup submenu

进入启动子菜单。这一项也可用于密码恢复。其理论基础是修改Startup,使设备启动时不加载配置文件。

这样启动起来的设备业务配置会丢失,如果想恢复业务配置,需要把配置文件vrpcfg.zip”下载下来,打开归档包,修改配置文件中的密码验证相关配置,重新再打包为vrpcfg.zip”,然后再上传。上传完成,重启设备,加载修改后的配置文件,业务恢复,密码恢复。

子菜单内容显示如下,根据提示操作即可。

Startup Configuration Submenu


1. Display startup configuration

2. Modify startup configuration

3. Return to main menu


Enter your choice(1-3): 2


Note: startup file field can not be cleared


'.'=clear field; 'Ctrl+D'=quit; Enter=use current configuration




startup type(1: Flash)


current: 1


new :



Flash startup file (can not be cleared)


current: s5720ei-v200r011c10spc600.cc


new :



saved-configuration file


current: vrpcfg.zip


new :



patch package


current: s5720ei-v200r010sph008.pat


new :


4. Enter ethernet submenu

进入以太网子菜单。这一项也可用于密码恢复。可以通过子菜单进行文件的下载和上传,上传下载的协议可以是TFTPFTP,交换机作为客户端,可以设置以太网接口的地址、要上传或下载的文件的名称、文件传输的用户名和密码等。

把配置文件vrpcfg.zip”下载下来,打开归档包,修改配置文件中的密码验证相关配置,重新再打包为vrpcfg.zip”,然后再上传。上传完成,重启设备。

子菜单内容如下:

ETHERNET SUBMENU


1. Update BootROM system

2. Download file to Flash through ethernet interface

3. Upload Configuration file through ethernet interface

4. Modify ethernet interface boot parameter

5. Return to main menu


6. Enter password submenu

进入口令子菜单,用来设置BootLoad Menu的密码。

7. Clear password for console user

清除Console口用户的口令,可用于密码恢复。恢复密码最简单的方法。

8. Reboot

重启。

4.3 Default Boot Menu Password

Boot Menu也有一个进入密码,其缺省密码跟软件版本有关,最好能查阅官方的技术文档。

下面列出四个最有可能的、缺省的Boot Menu 密码,如果试完这四个仍然不能进入,请查阅相关的技术文档,或联系厂家售后技术支持人员。

Admin@huawei.com

9300

supperman

[]

4.4 恢复Boot Menu 密码

Boot Menu 密码忘了怎么办?

进入系统重置即可。示例如下:

<HUAWEI> reset boot password

The password used to enter the boot menu by clicking Ctrl+B will be restored to the default password, continue? [Y/N]y

Info: Succeeded in setting password of boot to "Admin@huawei.com".

这里隐含了一个前提,就是你还能够进入系统。

4.5 极端情况

如果各种登录方式,系统进不去,Boot Menu密码也忘记了,这病还能治吗?

虽然癌症的治疗已经取得了很大进展,但是并不是所有癌症都能治。

如果是框式设备,主控板是可插拔的,拔下主控板,取出CF卡,但是这是工业级CF卡,它的接口跟我们普通的CF卡接口不一样,也就是说,我们还得有一个工业级CF卡的读卡器。

如果是盒式设备,主控板就相当于主板,而且往往没有CF卡,而用的Flash,返厂吧!有人能治。

4.6 一次意外

这是我一个兄弟的故事,也是一个悲惨的故事。话说,“常在江湖漂,哪有不挨刀”,小心翼翼的,还是出了一次错误。这兄弟在远程配置AAA时执行了这样一条命令:

[Huawei-aaa]local-user niuhai services-type ftp

而原来的AAA配置是这样的:

local-user niuhai password cipher %$%$4u=n(Ze~[;xdTw@kZSsKB8/&%$%$

local-user niuhai privilege level 3

local-user niuhai ftp-directory cfcard:/

local-user niuhai service-type telnet terminal ftp web http

这样一来,上面的最后一句就变成了

local-user niuhai service-type ftp

退出以后,再也登不上了,死活都登不上啊!我是说Console口的密码恢复也不行啊!而且连Boot Menu都进不去!

煎熬的人生就这样开始了。为保证业务,无耐只好暂时放弃,但是从此以后,生活索然了。

这是病,得治!

心病终须心药医,解铃还需系铃人。

数月之后,终于还是此兄,想出一妙招。既然只有FTP账号可用,就FTP上去,把配置文件下了,修改好后,再上传了,重启。终于又可以登进去了。。。

问题终于解决,但是也暴露出了一个问题:

service-type是覆盖,而不是添加,很容易导致错误。

从中得到的启发是,如果知道FTP登录的用户和密码,也可以对其它登录方式的密码进行恢复,本质上都是下载配置文件,修改后再上传。但这只是一个特例,很少有所有其它登录密码都丢了,还有一个FTP账号可用的情况。

06密码恢复

来自群组: 华为e学云

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
  • x
  • 常规:

点评 回复

跳转到指定楼层
Becky_2019  管理员 发表于 2020-4-7 10:07:25 已赞(0) 赞(0)

感谢分享!
  • x
  • 常规:

点评 回复

niuhai211  导师 发表于 2020-4-11 08:08:49 已赞(0) 赞(0)

不客气,后续还有。
  • x
  • 常规:

点评 回复

william_CD
william_CD   发表于 2020-5-10 23:27:58 已赞(1) 赞(1)

下次你遇到某想的东东直接进bios关闭Fn就可以不用按Fn了。
我之前也遇到过这种比较坑爹的事情。
  • x
  • 常规:

点评 回复

niuhai211  导师 发表于 2020-5-11 12:20:58 已赞(0) 赞(0)

william_CD 发表于 2020-05-10 23:27 下次你遇到某想的东东直接进bios关闭Fn就可以不用按Fn了。我之前也遇到过这种比较坑爹的事情。 ...
谢谢你的补充完善!不过现在的新设备中断启动过程的按键换了。不用Fn了。
  • x
  • 常规:

点评 回复

发表回复
您需要登录后才可以回帖 登录 | 注册

警告 内容安全提示:尊敬的用户您好,为了保障您、社区及第三方的合法权益,请勿发布可能给各方带来法律风险的内容,包括但不限于政治敏感内容,涉黄赌毒内容,泄露、侵犯他人商业秘密的内容,侵犯他人商标、版本、专利等知识产权的内容,侵犯个人隐私的内容等。也请勿向他人共享您的账号及密码,通过您的账号执行的所有操作,将视同您本人的行为,由您本人承担操作后果。详情请参看“隐私声明
如果附件按钮无法使用,请将Adobe Flash Player 更新到最新版本!

登录参与交流分享

登录

华为企业互动社区
华为企业互动社区
屏蔽
!block_confirm_cont!