H3C交换机配置备份与恢复实例
这是“H3C交换机中小企业运维实战”专栏的第 11 篇。交换机执行save后,配置只是保存在设备本机;设备存储损坏或整机更换时,本机文件仍可能无法使用。
本文以 H3C S5570S、Comware V7 和 Ubuntu Server 24.04 LTS 为例,把配置文件保存到内网运维服务器,并演示手动备份、每周自动归档和恢复前检查。文中的地址、端口、账号和文件名都是示例,使用时必须按现场替换。
一、示例环境
| 项目 | 示例值 |
|---|---|
| 交换机 | HQ-Access-01 |
| 管理 VLAN 接口 | Vlan-interface100 |
| 交换机 IPv4 | 192.168.100.2 |
| 交换机 IPv6 | 2001:db8:100::2 |
| Ubuntu 服务器 | 192.168.100.30 |
| SSH 端口 | TCP22222 |
| 备份账号 | h3cbackup |
| 手动备份文件 | HQ-Access-01-20260722.cfg |
这里使用非默认 SSH 端口22222。交换机、Ubuntu、防火墙和中间安全策略的端口必须一致。
二、备份前先检查
先确认当前启动文件、存储空间和双栈网络:
# 查看正在生效的配置和下次启动文件。 <HQ-Access-01> display current-configuration <HQ-Access-01> display startup # 确认存储空间和管理 VLAN 接口正常。 <HQ-Access-01> dir <HQ-Access-01> display interface Vlan-interface100 # 测试 Ubuntu 服务器的 IPv4 和 IPv6 地址。 <HQ-Access-01> ping 192.168.100.30 <HQ-Access-01> ping ipv6 2001:db8:100::30启动文件不一定都叫startup.cfg。后面的恢复命令必须以现场display startup的结果为准。
三、准备 Ubuntu 备份目录
安装 OpenSSH Server,创建只用于交换机备份的账号:
# 安装并启动 OpenSSH Server。 ubuntu@ops-server:~$ sudo apt update ubuntu@ops-server:~$ sudo apt install -y openssh-server ubuntu@ops-server:~$ sudo systemctl enable --now ssh # 创建专用账号和备份目录,再交互式设置强密码。 ubuntu@ops-server:~$ sudo useradd --user-group --create-home \ --home-dir /srv/h3c-backup --shell /bin/bash h3cbackup ubuntu@ops-server:~$ sudo passwd h3cbackup # 只允许备份账号和管理员读取目录。 ubuntu@ops-server:~$ sudo chown h3cbackup:h3cbackup /srv/h3c-backup ubuntu@ops-server:~$ sudo chmod 0750 /srv/h3c-backup新建/etc/ssh/sshd_config.d/60-h3c-backup.conf:
# 使用与交换机端一致的非默认端口。 Port 22222 # SCP 自动归档需要执行文件接收命令,不能强制为 internal-sftp。 Match User h3cbackup PasswordAuthentication yes PermitTTY no PermitTunnel no AllowTcpForwarding no X11Forwarding no Match all先检查 SSH 配置语法,再放行端口。远程操作时保留现有会话,确认新连接正常后再退出:
# 没有输出才表示 sshd 配置语法通过。 ubuntu@ops-server:~$ sudo sshd -t # UFW 已启用时,只允许交换机管理地址访问 TCP 22222。 ubuntu@ops-server:~$ sudo ufw allow proto tcp \ from 192.168.100.2 to any port 22222 comment 'H3C Backup IPv4' ubuntu@ops-server:~$ sudo ufw allow proto tcp \ from 2001:db8:100::2 to any port 22222 comment 'H3C Backup IPv6' # 放行完成后再重启 SSH,并确认监听状态。 ubuntu@ops-server:~$ sudo systemctl restart ssh ubuntu@ops-server:~$ sudo ss -lntp | grep 22222 ubuntu@ops-server:~$ sudo ufw status numbered如果已有向所有地址开放的22222规则,新增来源限制不会自动关闭旧规则,需要先确认其他管理入口再收紧。
四、手动备份并上传
先安全保存当前配置,再生成带设备名和日期的独立副本:
# 安全覆盖当前主启动配置。 <HQ-Access-01> save safely force # 另存一份独立文件,不改变启动文件指向。 <HQ-Access-01> save flash:/HQ-Access-01-20260722.cfg # 确认文件存在并记录大小。 <HQ-Access-01> dir flash:/HQ-Access-01-20260722.cfg通过管理 VLAN 接口连接 Ubuntu。密码只在提示时输入,不要写进脚本或文章:
<HQ-Access-01> sftp 192.168.100.30 22222 \ source interface Vlan-interface 100 Username: h3cbackup Password: # 确认当前目录后上传配置文件。 sftp> pwd sftp> put flash:/HQ-Access-01-20260722.cfg \ HQ-Access-01-20260722.cfg sftp> dir -l sftp> quit第一次连接出现服务器公钥指纹时,要先与 Ubuntu 管理员提供的指纹核对。
服务器端继续检查:
# 文件大小不能为 0,并应能正常读取开头内容。 ubuntu@ops-server:~$ sudo ls -lh \ /srv/h3c-backup/HQ-Access-01-20260722.cfg ubuntu@ops-server:~$ sudo head -n 20 \ /srv/h3c-backup/HQ-Access-01-20260722.cfg # 计算 SHA-256,把结果记录到备份台账。 ubuntu@ops-server:~$ sudo sha256sum \ /srv/h3c-backup/HQ-Access-01-20260722.cfg配置文件可能包含账号、认证参数和网络地址,不能放进公开代码仓库或公网网盘。
五、每周自动归档
Comware V7 可以把运行配置直接归档到远程 SCP 服务器。本例每隔10080分钟归档一次,也就是 7 天:
<HQ-Access-01> system-view # 本地归档和远程归档不能同时使用,先取消本地归档位置。 [HQ-Access-01] undo archive configuration location # 指定 SCP 服务器、非默认端口、目录和文件名前缀。 [HQ-Access-01] archive configuration server scp \ 192.168.100.30 port 22222 directory /srv/h3c-backup \ filename-prefix HQ-Access-01 # 配置 SCP 专用账号和实际强密码。 [HQ-Access-01] archive configuration server user h3cbackup [HQ-Access-01] archive configuration server password simple \ Replace-With-Strong-Password # 每隔 7 天自动归档一次。 [HQ-Access-01] archive configuration interval 10080 [HQ-Access-01] return # 手动执行一次,验证服务器确实收到文件。 <HQ-Access-01> archive configuration <HQ-Access-01> display archive configuration上面的反斜杠表示同一条长命令在文章中折行,实际输入交换机时应合并为一行。
配置变更并验证正常后,我会立即执行下面三条命令,不等每周任务:
# 保存、立即归档并查看结果。 <HQ-Access-01> save safely force <HQ-Access-01> archive configuration <HQ-Access-01> display archive configuration10080是间隔时间,不表示每周固定在某个星期和时间执行。需要固定时间备份时,应由网管或备份平台统一调度。
六、恢复配置时怎么做
恢复会影响设备下次启动,必须安排维护窗口并保证 Console 可用。先把备份下载成新文件,不要覆盖当前startup.cfg:
# 连接服务器并下载为新的本地文件。 <HQ-Access-01> sftp 192.168.100.30 22222 \ source interface Vlan-interface 100 Username: h3cbackup Password: sftp> get HQ-Access-01-20260722.cfg \ flash:/restore-HQ-Access-01-20260722.cfg sftp> quit # 检查文件大小和内容。 <HQ-Access-01> dir flash:/restore-HQ-Access-01-20260722.cfg <HQ-Access-01> more flash:/restore-HQ-Access-01-20260722.cfg确认型号、接口名称、VLAN、管理地址和软件版本能对应现场后,再指定主、备启动文件:
# 先把原启动文件保留为备用配置。 <HQ-Access-01> startup saved-configuration flash:/startup.cfg backup # 把下载的文件设为下次启动主配置。 <HQ-Access-01> startup saved-configuration \ flash:/restore-HQ-Access-01-20260722.cfg main # 再次核对主、备文件名。 <HQ-Access-01> display startup这些命令不会立即替换当前运行配置,也不会自动重启。真正重启前要再次确认 Console、业务联系人和验证人员都已就位;重启后还要验证上联聚合、Trunk、SSH、SNMP、NTP 和 Syslog。
七、常见问题
- 执行
save后服务器没有文件:save只保存启动配置,还要执行archive configuration才会立即远程归档。 - SCP 或 SFTP 连接失败:检查 SSH 服务、TCP
22222、UFW、管理 VLAN 路由和账号状态。 - 能连接但不能上传:核对
/srv/h3c-backup的属主和权限;SCP 自动归档账号不能强制使用internal-sftp。 - 恢复后配置没变化:
startup saved-configuration只设置下次启动文件,要先用display startup核对,再按维护方案处理。 - 备份文件太多:文件名至少包含设备名和日期,服务器还要记录型号、版本、文件大小和 SHA-256。
八、小结
配置备份不能只看交换机上的save。我会在配置变更验证完成后立即保存并归档,平时再保留每周自动归档;服务器端还要检查文件大小、内容和 SHA-256。
恢复时先下载成新文件,保留原启动文件作为备用,再设置下次启动主配置。网站完整版还包括 Comware V5 的差异、旧文件自动清理、完整回退方法和配置汇总:
H3C交换机配置备份与恢复实例