路由交换配置基线
把设备配置标准化,让每台设备都有一份可对照、可核查的安全基线,减少因人而异的配置差异与安全隐患。本技能给出华为/思科加固命令集、基线项-命令-风险表,以及自动核查脚本——把设备配置丢进去,秒出「哪些关键加固命令缺失」。
一、核心原理
配置基线的本质是把安全最佳实践固化成一条条可判定的命令。核查脚本逐条比对「基线要求的关键命令」是否出现在设备配置里,缺失即风险。
flowchart LR
A[设备运行配置<br/>show run / display current] --> B[baseline_checker.py<br/>按厂商逐条比对]
B --> C{关键命令是否存在?}
C -->|存在| D[符合]
C -->|缺失| E[缺失清单 + 风险等级]
E --> F[生成整改命令]
基线的五大支柱:
- AAA 认证:登录走 AAA/本地强口令,杜绝默认口令。
- 管理协议安全:SSH v2 替代 Telnet,关闭 HTTP 管理。
- SNMPv3:只留加密的 v3,禁用 v1/v2c 明文 community。
- 日志与时间:Syslog 集中 + NTP 同步,保证审计时间戳可信。
- 冗余与描述:VRRP/堆叠/M-LAG 规范 + 接口描述,降低误操作。
二、参考架构(基线核查流程)
flowchart TB
T[基线模板<br/>assets/baseline-template.txt] --> D[下发到设备]
C[生产设备配置] --> CHK[baseline_checker.py]
B[基线命令风险表<br/>assets/baseline-command-risk.csv] --> CHK
CHK --> R[合规报告: 缺失/风险]
R --> FIX[整改 + 差异复核]
配套 ASCII 基线项速览(文档用):
配置基线五大类
[1] 身份鉴别 AAA + 强口令 + 管理源限制
[2] 管理协议 SSH v2(禁 Telnet/HTTP)
[3] 监控协议 SNMPv3(禁 v1/v2c)
[4] 日志时间 Syslog 集中 + NTP 同步
[5] 冗余描述 VRRP/堆叠/M-LAG + 接口描述
三、关键参数 / 决策表
| 基线项 | 华为命令 | 思科命令 | 风险 |
|---|---|---|---|
| 启用 SSH | stelnet server enable |
ip ssh version 2 |
高(明文管理) |
| 关闭 Telnet | undo telnet server enable |
transport input ssh |
高(明文口令) |
| 关闭 HTTP 管理 | undo http server enable |
no ip http server |
高(明文/弱鉴权) |
| SNMPv3 | snmp-agent sys-info version v3 |
snmp-server group GRP v3 priv |
中(v1/v2c 可枚举) |
| 集中日志 | info-center loghost <IP> |
logging host <IP> |
中(无审计) |
| NTP 同步 | ntp-service unicast-server <IP> |
ntp server <IP> |
低(时间戳不可信) |
| AAA 认证 | authentication-mode aaa |
aaa new-model |
高(弱认证) |
| 接口描述 | description <TEXT> |
description <TEXT> |
低(误操作) |
> 完整基线项-命令-风险表见 assets/baseline-command-risk.csv,核查用 scripts/baseline_checker.py。
四、分步 SOP
- 编制基线模板:按厂商编写主机名、管理地址、AAA、SSH、SNMPv3、NTP、Syslog、冗余协议的标准模板(见
assets/baseline-template.txt)。 - 安全项强制:禁用 Telnet/HTTP/SNMPv1,启用 SSH v2 与强口令策略。
- 接口规范:接口描述统一,未用端口 shutdown 或隔离。
- 下发与统一:新设备按模板配置,存量设备按整改清单收敛。
- 基线核查:跑
baseline_checker.py检查生产配置是否含关键加固命令。 - 差异复核与整改:对缺失项生成整改命令并下发,复核合规率。
- 备份与恢复:自动备份 + 恢复演练。
五、真实配置示例
华为 VRP 加固命令集
# 身份鉴别与管理协议
stelnet server enable
undo telnet server enable
undo http server enable
user-interface vty 0 4
authentication-mode aaa
protocol inbound ssh
# AAA 本地认证
aaa
local-user admin password irreversible-cipher <PASSWORD>
local-user admin privilege level 15
local-user admin service-type ssh
# SNMPv3 + 日志 + NTP
snmp-agent sys-info version v3
info-center enable
info-center loghost 10.1.99.10
ntp-service unicast-server 10.1.99.11
思科 IOS-XE 加固命令集
! 管理协议
ip ssh version 2
no ip http server
no ip http secure-server
line vty 0 4
transport input ssh
! AAA
aaa new-model
aaa authentication login default local
username admin privilege 15 secret 0 <PASSWORD>
enable secret <SECRET>
! SNMPv3 + 日志 + NTP
no snmp-server community public RO
snmp-server group GRP v3 priv
logging host 10.1.99.10
ntp server 10.1.99.11
> 完整可填空模板见 assets/baseline-template.txt,逐行解释见 references/baseline-configs.md。
六、验证方法
# 基线核查(华为)
python baseline_checker.py --config switch.cfg --vendor huawei --baseline baseline-command-risk.csv
# 基线核查(思科)
python baseline_checker.py --config router.cfg --vendor cisco --baseline baseline-command-risk.csv
| 验证项 | 达标线 | 采集方式 |
|---|---|---|
| 关键命令合规率 | 100%(高危项 0 缺失) | baseline_checker.py |
| Telnet/HTTP 关闭 | 0 台启用 | 脚本 + 配置核对 |
| SNMP 版本 | 仅 v3 | 配置核对 |
| 日志集中 | 全部接 Syslog | 配置核对 |
| 备份可恢复 | 演练通过 | 恢复演练记录 |
七、常见故障排查
| 现象 | 根因方向 | 首要动作 |
|---|---|---|
| 核查大量缺失 | 存量设备未按基线配置 | 按缺失清单批量整改 |
| 改 SSH 后登录不上 | 源限制/AAA 配置问题 | 核对 vty 配置与账号 |
| SNMP 升级后监控断 | 监控侧仍用 v1/v2c | 同步升级监控侧到 v3 |
| 关闭 HTTP 后网管失效 | 网管依赖 HTTP | 迁移到 HTTPS/NetConf 或收紧 |
| 时间戳不准 | 未配 NTP | 补 NTP 同步 |
八、输出规范
交付时应产出:标准配置模板(华为/思科)、基线符合性核查报告(缺失清单)、整改动作清单、备份与恢复验证记录。
八附、典型基线验收清单(快速核对)
| 序号 | 验收项 | 合格标准 |
|---|---|---|
| 1 | 主机名/管理地址 | 规范命名 + 独立管理地址 |
| 2 | Telnet | 已关闭 |
| 3 | HTTP 管理 | 已关闭或收敛 |
| 4 | SSH 版本 | 仅 v2 |
| 5 | AAA 认证 | 已启用 + 强口令密文 |
| 6 | SNMP 版本 | 仅 v3(authPriv) |
| 7 | Syslog 集中 | 已指向集中平台 |
| 8 | NTP 同步 | 已配置且可达 |
| 9 | 接口描述 | 关键接口均有描述 |
| 10 | 未用端口 | shutdown 或隔离 |
九、边界与风险
- 命令必须标注适用平台(华为 VRP / 思科 IOS-XE),不混用语法。
- 高危命令(如关闭服务、改认证)需标注风险与前置检查,走变更流程。
- 基线核查是「命令包含式」检查,不判断语义正确性,复杂差异需结合 diff 与人工复核。
- 口令类命令务必用密文形式(
secret/irreversible-cipher),禁止明文留存。
配套资源
- 参数手册:
references/baseline-parameters.md - 厂商加固命令对照:
references/baseline-configs.md - 故障案例库:
references/baseline-troubleshooting.md - 基线项-命令-风险表:
assets/baseline-command-risk.csv - 华为/思科加固命令集模板:
assets/baseline-template.txt - 脚本:
scripts/baseline_checker.py(设备配置基线核查器) - 配套检查清单:《路由交换配置基线清单》