第247篇:网络设备密码恢复与安全加固
关键词:密码恢复、Console 密码重置、VRP 密码恢复、AAA 安全、设备加固、口令策略、命令认证、Super 权限
一、引言
网络设备密码遗忘是每个运维人员都可能遇到的"噩梦"场景。当远程管理地址未知、AAA 服务器不可达、Console 密码遗忘时,如何恢复对设备的控制权,同时确保恢复过程本身不引入新的安全风险?
密码恢复不仅是技术操作,更是一个安全管理问题。恢复过程中设备会暂时处于无保护状态,如果物理安全无法保证,攻击者可能在恢复过程中植入后门。因此,密码恢复必须配合严格的安全加固措施,在恢复控制权后立即强化设备安全。
二、华为 VRP 系统密码恢复
2.1 VRP 密码恢复原理
华为 VRP(Versatile Routing Platform)设备提供了通过 Console 口进行密码恢复的机制。核心原理是通过中断设备启动过程,跳过认证配置文件加载,从而获得不受密码限制的初始管理权限。

2.2 华为交换机/路由器密码恢复步骤
# ===== 密码恢复操作流程 =====
# 步骤 1:物理连接到设备 Console 口
# 使用 Console 线连接 PC 和设备 Console 口
# 使用 SecureCRT/PuTTY,波特率 9600
# 步骤 2:重启设备,在 Boot Menu 阶段操作
# 设备加电后,立即按下 Ctrl+B(部分设备为 Reset 按钮)
# 进入 Boot Menu 界面
# Boot Menu 界面示例:
# Hit Ctrl+B to choose to load or upgrade the system software...
# 3: Skip general startup configuration
# 5: Enter boot menu
# 选择选项 3(跳过通用启动配置)
# 步骤 3:设备以空配置启动后登录
<HUAWEI>
# 步骤 4:查看原配置文件
<HUAWEI> system-view
[HUAWEI] startup saved-configuration vrpcfg.zip
# 查看原配置中的密码信息
# 步骤 5:方式一 - 重置密码后恢复配置
[HUAWEI] aaalimit login failure attempt 5 interval 30
# 设置登录失败限制
# 创建新管理员账号
[HUAWEI] aaa
[HUAWEI-aaa] local-user admin password cipher NewSecureP@ss2024
[HUAWEI-aaa] local-user admin privilege level 15
[HUAWEI-aaa] local-user admin service-type ssh terminal
[HUAWEI-aaa] quit
# 恢复原配置
[HUAWEI] force startup saved-configuration vrpcfg.zip
# 步骤 6:设备重启后使用新密码登录
[HUAWEI] restart
2.3 华为防火墙(USG)密码恢复
# USG 防火墙 Console 密码恢复(不同型号略有差异)
# 方式一:通过 Reset 孔恢复
# 1. 关机
# 2. 用卡针按住 Reset 孔
# 3. 加电,持续按住 10 秒后松开
# 4. 设备进入恢复模式
# 方式二:通过 Boot Menu(USG6000E 系列)
# 1. Console 连接设备,加电
# 2. 启动时按 Ctrl+B 进入 Boot Menu
# 3. 选择跳过配置启动
# 方式三:使用 eSight/NCE 管理平台恢复
# 如果设备纳管在 eSight 中,可通过管理平台重置密码
2.4 密码恢复后的安全加固清单
| 序号 | 加固项 | 命令/操作 | 优先级 |
|---|---|---|---|
| 1 | 修改 Console 密码 | user-interface vty 0 4 / 设置新密码 |
立即 |
| 2 | 启用 AAA 认证 | aaa / authentication-scheme |
立即 |
| 3 | 禁用默认账号 | undo local-user initial |
立即 |
| 4 | 配置密码复杂度策略 | local-user password complex |
高 |
| 5 | 启用 SSH,禁用 Telnet | ssh server enable |
高 |
| 6 | 配置登录失败锁定 | aaalimit login failure attempt 5 |
高 |
| 7 | 配置管理 ACL | acl number 2000 限制管理源 IP |
高 |
| 8 | 启用操作审计日志 | info-center enable |
中 |
| 9 | 备份新配置 | save force |
中 |
| 10 | 物理安全确认 | 确认设备机房门禁正常 | 中 |
三、设备安全加固完整配置
3.1 访问控制加固
# 华为设备安全加固配置(完整模板)
<HUAWEI> system-view
[HUAWEI] sysname Core-SW-secured
# ===== 1. 密码策略加固 =====
[HUAWEI] aaalimit password max-length 16 min-length 8 min-complexity 3
[HUAWEI] aaalimit password expire 90
[HUAWEI] aaalimit password history 5
# ===== 2. 登录失败限制 =====
[HUAWEI] aaalimit login failure attempt 5 interval 30 lock-duration 30
# 5 次失败锁定 30 分钟
# ===== 3. AAA 认证配置 =====
[HUAWEI] aaa
[HUAWEI-aaa] authentication-scheme auth-scheme-ssh
[HUAWEI-aaa-auth-schema-auth-scheme-ssh] authentication-mode local
[HUAWEI-aaa-auth-schema-auth-scheme-ssh] quit
[HUAWEI-aaa] authorization-scheme authz-scheme-default
[HUAWEI-aaa-authorization-schema-authz-scheme-default] authorization-mode local
[HUAWEI-aaa-authorization-schema-authz-scheme-default] quit
[HUAWEI-aaa] accounting-scheme acct-scheme-default
[HUAWEI-aaa-accounting-schema-acct-scheme-default] accounting-mode none
[HUAWEI-aaa-accounting-schema-acct-scheme-default] quit
[HUAWEI-aaa] domain default
[HUAWEI-aaa-domain-default] authentication-scheme auth-scheme-ssh
[HUAWEI-aaa-domain-default] authorization-scheme authz-scheme-default
[HUAWEI-aaa-domain-default] accounting-scheme acct-scheme-default
[HUAWEI-aaa-domain-default] quit
# ===== 4. 本地管理员账号 =====
[HUAWEI-aaa] local-user admin password cipher S3cur3@Admin2024
[HUAWEI-aaa] local-user admin privilege level 15
[HUAWEI-aaa] local-user admin service-type ssh terminal
[HUAWEI-aaa] local-user admin password expire 90
[HUAWEI-aaa] local-user admin first-login force-change-password
# 创建只读审计账号
[HUAWEI-aaa] local-user auditor password cipher Aud1t@Only2024
[HUAWEI-aaa] local-user auditor privilege level 1
[HUAWEI-aaa] local-user auditor service-type ssh terminal
[HUAWEI-aaa] local-user auditor first-login force-change-password
[HUAWEI-aaa] quit
# ===== 5. 禁用默认初始账号 =====
[HUAWEI] undo local-user initial
# ===== 6. SSH 配置(替代 Telnet)=====
[HUAWEI] ssh user admin authentication-type password
[HUAWEI] ssh user auditor authentication-type password
[HUAWEI] ssh server enable
[HUAWEI] ssh server protocol version 2
[HUAWEI] ssh server authentication timeout 60
[HUAWEI] ssh server maxstartups 10
# 仅允许 SSHv2,禁止 SSHv1
# ===== 7. VTY 接口配置 =====
[HUAWEI] user-interface vty 0 4
[HUAWEI-ui-vty0-4] authentication-mode aaa
[HUAWEI-ui-vty0-4] protocol inbound ssh
[HUAWEI-ui-vty0-4] user privilege level 15
[HUAWEI-ui-vty0-4] idle-timeout 10 0 # 10 分钟超时
[HUAWEI-ui-vty0-4] quit
# ===== 8. Console 接口配置 =====
[HUAWEI] user-interface aux 0
[HUAWEI-ui-aux0] authentication-mode aaa
[HUAWEI-ui-aux0] user privilege level 15
[HUAWEI-ui-aux0] idle-timeout 5 0 # Console 5 分钟超时
[HUAWEI-ui-aux0] quit
# ===== 9. 管理 ACL =====
[HUAWEI] acl number 2000
[HUAWEI-acl-basic-2000] rule 5 permit source 10.10.100.0 0.0.0.255 # 网管服务器
[HUAWEI-acl-basic-2000] rule 10 permit source 10.10.100.50 0 # 堡垒机
[HUAWEI-acl-basic-2000] rule 999 deny source any
[HUAWEI-acl-basic-2000] quit
# 应用管理 ACL 到 VTY
[HUAWEI] user-interface vty 0 4
[HUAWEI-ui-vty0-4] acl 2000 inbound
[HUAWEI-ui-vty0-4] quit
3.2 命令级安全加固
# ===== 10. 命令认证(Command Authorization)=====
# 对高危命令设置单独认证
[HUAWEI] aaa
[HUAWEI-aaa] command-authorization level 15 scheme cmd-auth-scheme
[HUAWEI-aaa-command-auth-cmd-auth-scheme] command-authorization-mode password
[HUAWEI-aaa-command-auth-cmd-auth-scheme] quit
# ===== 11. 超级权限(Super)配置 =====
[HUAWEI] super enable
[HUAWEI] super password level 15 cipher S3cur3@Super2024
# 低权限用户可通过 super 命令临时提升权限
# ===== 12. 配置保存保护 =====
[HUAWEI] save admin-password cipher S@veAdm1n2024
# save 命令需要管理员确认密码
# ===== 13. 操作日志审计 =====
[HUAWEI] info-center enable
[HUAWEI] info-center loghost 10.10.100.20
[HUAWEI] info-center loghost trap level informational
# 记录配置变更
[HUAWEI] log configuration enable
# 记录命令行操作
[HUAWEI] terminal monitor
[HUAWEI] terminal logging
# ===== 14. SNMP 安全配置 =====
[HUAWEI] snmp-agent
[HUAWEI] snmp-agent community read cipher R3ad0nlyC0mm2024
[HUAWEI] snmp-agent community write cipher Wr1t3C0mm2024
[HUAWEI] snmp-agent target-host trap address udp-domain 10.10.100.20 params securityname R3ad0nlyC0mm2024
[HUAWEI] snmp-agent sys-info version v2c v3
# 优先使用 SNMPv3
[HUAWEI] snmp-agent usm-user v3 admin auth-mode aes128 AuthP@ss2024 priv-mode aes128 PrivP@ss2024
[HUAWEI] quit
# ===== 15. HTTP/HTTPS 管理 =====
[HUAWEI] http secure-server
[HUAWEI] http authentication http-auth-scheme
[HUAWEI] http max-connection 5
# 仅启用 HTTPS,禁用 HTTP
3.3 安全加固验证
# 验证加固配置
display current-configuration | include aaa
display current-configuration | include ssh
display current-configuration | include user-interface
display current-configuration | include acl
display local-user
display ssh server status
# 验证管理 ACL
display acl 2000
# 验证日志配置
display info-center loghost
# 配置备份
save force
四、实战故障案例
4.1 案例:VRP 密码恢复后配置丢失
故障现象:某工程师在忘记密码后执行密码恢复操作,恢复后设备大部分配置丢失,仅保留基础接口配置。
# 恢复过程中操作回顾:
# 1. 进入 Boot Menu,选择跳过配置启动(正确)
# 2. 进入系统后直接修改了密码(正确)
# 3. 执行了 reset saved-configuration(错误!)
# 4. 设置新密码后 save(此时保存的是空配置)
# 5. 重启后发现配置全部丢失
# 正确操作应该是:
# 1. 进入 Boot Menu,跳过配置启动
# 2. 查看原配置(startup saved-configuration)
# 3. 使用 force startup saved-configuration 恢复原配置
# 4. 在 AAA 模式下修改密码
# 5. 保存并重启
根因分析:reset saved-configuration 命令会删除设备上的启动配置文件。密码恢复的正确流程是使用 force startup saved-configuration 强制加载原配置,而不是先删除再重建。
教训:密码恢复操作前务必确认操作流程,reset saved-configuration 与 force startup saved-configuration 的效果截然相反,操作前必须再次确认。
4.2 案例:弱密码导致的设备被入侵
故障现象:安全审计发现某核心交换机存在非工作时间登录记录,登录源为外网 IP。
# 审计日志分析
display logbuffer content | include login
# 发现以下记录:
# 2024-06-20 03:15:22 %%%% 0/AUTH/4/AUTH_LOGIN: User=admin Login from 203.0.113.50 via SSH
# 2024-06-20 03:16:45 %%%% 0/CONFIG/4/CFG_CHANGED: Configuration changed by user admin
# 进一步分析
display local-user
# 发现 admin 密码为 "admin123"(极度弱密码)
# 设备 Telnet 服务仍开启,未限制管理 ACL
# 紧急处置
# 1. 立即修改密码
aaa
local-user admin password cipher S3cur3@Admin2024
# 2. 关闭 Telnet
user-interface vty 0 4
protocol inbound ssh
# 3. 添加管理 ACL
acl number 2000
rule 5 permit source 10.10.100.0 0.0.0.255
rule 999 deny source any
user-interface vty 0 4
acl 2000 inbound
# 4. 审查配置变更历史
display logbuffer content | include CONFIG
# 发现攻击者在配置中添加了隐蔽的 backdoor 账号
aaa
undo local-user backdoor
# 5. 从已知安全的备份恢复配置
根因分析:弱密码 + Telnet 明文传输 + 无管理 ACL = 设备暴露在外网。攻击者通过暴力破解获取 admin 账号,植入后门账号,修改安全策略。
经验教训: 1. 永远不要在生产设备上使用弱密码 2. 禁用 Telnet,仅使用 SSHv2 3. 管理 ACL 限制仅允许网管段访问 4. 定期审计本地用户和配置变更历史
五、总结
| 维度 | 要点 |
|---|---|
| 密码恢复方法 | Boot Menu 跳过配置启动 → 查看/恢复原配置 → 修改密码 → 重启 |
| 恢复注意事项 | 切勿执行 reset saved-configuration;确认物理安全 |
| 密码策略 | 最小长度 8 位、复杂度要求、90 天过期、历史密码检查 |
| 访问控制 | AAA 认证、SSHv2 替代 Telnet、管理 ACL、登录失败锁定 |
| 账号管理 | 禁用默认账号、强制首次登录改密、分权限账号 |
| 审计监控 | 操作日志、配置变更日志、Syslog 远程日志 |
| SNMP 安全 | 优先 SNMPv3,加密 Community String |
核心结论:密码恢复是一个应急操作,但不应频繁使用。通过建立完善的密码管理流程(密码保险箱、定期更换、双人管理)和设备安全加固基线,可以大幅降低密码遗忘风险。密码恢复后的安全加固不应该是"可选项",而必须是"必选项"。
思考
-
华为 VRP 密码恢复过程中,
reset saved-configuration和force startup saved-configuration的区别是什么?误用会有什么后果? -
如果设备部署在无人值守的远程站点,且管理员遗忘了 Console 密码,有哪些远程恢复方案?
-
什么是"最小权限原则"在设备账号管理中的具体体现?如何为不同角色的运维人员分配权限?
下篇预告:第248篇:禁用不安全协议:Telnet、SNMPv1/v2——告别明文传输时代