Oxidized 获取华为设备信息

要让 Oxidized 从华为交换机获取配置数据,核心是建立一个安全的连接通道和拥有足够的权限。主要就是两步:

  1. 配置 SSH 登录:这是 Oxidized 远程连接设备并执行 display current-configuration 命令的主要方式。
  2. (可选) 配置 SNMP:用于增强监控、自动发现设备或接收告警信息。

下面是详细的配置指南。

🔑 第一步:在交换机上配置 SSH 登录 (必需)

这是 Oxidized 工作的根本前提

1. 基础环境配置

首先,确保交换机已配置管理IP,并开启了必要的服务。

# 1. 进入系统视图
<HUAWEI> system-view

# 2. 配置管理IP (以VLANIF接口为例)
[HUAWEI] interface Vlanif 1
[HUAWEI-Vlanif1] ip address 192.168.1.100 255.255.255.0
[HUAWEI-Vlanif1] quit

# 3. 开启SSH服务和生成密钥
[HUAWEI] stelnet server enable
[HUAWEI] rsa local-key-pair create

2. 创建 AAA 用户

为了安全,不建议直接使用 admin 这类超级管理员账户。

# 1. 进入AAA视图
[HUAWEI] aaa

# 2. 创建本地用户 (例如: oxidized)
[HUAWEI-aaa] local-user oxidized password irreversible-cipher Your_Strong_Password

# 3. 设置用户级别为3 (管理级,拥有执行配置命令的权限)
[HUAWEI-aaa] local-user oxidized privilege level 3

# 4. 指定用户服务类型为SSH
[HUAWEI-aaa] local-user oxidized service-type ssh
[HUAWEI-aaa] quit

3. 配置 VTY 线路认证

允许 Oxidized 通过 SSH 协议连接到交换机的虚拟终端(VTY)。

# 1. 进入VTY配置视图
[HUAWEI] user-interface vty 0 4

# 2. 设置认证模式为AAA
[HUAWEI-ui-vty0-4] authentication-mode aaa

# 3. 设置入向协议为SSH
[HUAWEI-ui-vty0-4] protocol inbound ssh

# 4. 设置空闲超时时间 (单位:分钟,可根据需要调整)
[HUAWEI-ui-vty0-4] idle-timeout 30
[HUAWEI-ui-vty0-4] quit

4. 保存配置

配置完成后,务必保存,否则设备重启后配置会丢失。

[HUAWEI] save

⚙️ 第二步:(可选) 配置 SNMP 增强监控

SNMP 用于增强监控、自动发现设备或接收告警信息,是可选但推荐的配置。

基础 SNMPv2c 配置 (兼容性好)

# 1. 启用SNMP代理
[HUAWEI] snmp-agent

# 2. 配置SNMP版本
[HUAWEI] snmp-agent sys-info version v2c

# 3. 配置只读团体名 (作为访问密码,请替换为复杂字符串)
[HUAWEI] snmp-agent community read cipher Your_Read_Only_Community

安全 SNMPv3 配置 (推荐)

# 1. 启用SNMP代理
[HUAWEI] snmp-agent

# 2. 配置SNMP版本为v3
[HUAWEI] snmp-agent sys-info version v3

# 3. 创建SNMPv3用户 (用户名、认证协议/密码、加密协议/密码)
[HUAWEI] snmp-agent usm-user v3 oxidized_user authentication-mode sha cipher Your_Auth_Password privacy-mode aes128 cipher Your_Privacy_Password

安全提示:生产环境中,请务必为SNMP配置复杂的团体名(community)或密码,避免使用默认的 public/private,降低被攻击的风险。

🖥️ 第三步:配置 Oxidized 服务端 (与服务端对应)

交换机侧配置完成后,服务端也需要进行相应配置。

1. 准备设备清单 (router.db)

在 Oxidized 的配置目录(如 /etc/oxidized/)下,编辑 router.db 文件,将华为交换机加入设备清单。每一行代表一台设备,格式为:设备名称:操作系统型号:管理IP地址

# /etc/oxidized/router.db
Switch-Huawei-01:vrp:192.168.1.100

2. 配置 Oxidized 主配置文件 (config)

编辑 Oxidized 的主配置文件(/etc/oxidized/config~/.config/oxidized/config),为华为 VRP 设备指定登录方式和凭证。

# 全局默认配置
username: oxidized  # 交换机上创建的AAA用户名
password: Your_Strong_Password  # 对应的密码

# 指定华为 VRP 设备的模型
models:
  vrp: huawei  # 将模型名称 'vrp' 映射到华为VRP系统

# 其他配置(如备份间隔、日志等)
interval: 3600  # 备份间隔(秒)
log: /var/log/oxidized/oxidized.log

# 如果使用 Git 存储
output:
  default: git
  git:
    repo: "/var/lib/oxidized/configs"

3. 重启 Oxidized 服务

配置完成后,重启服务以加载新配置。

sudo systemctl restart oxidized

🧪 第四步:验证配置与排查故障

完成上述配置后,可以从以下几个方面验证是否成功:

验证项目 验证方法 预期结果
SSH连接测试 ssh oxidized@192.168.1.100 成功登录交换机CLI。
配置文件检查 display current-configuration 能完整输出配置。
Oxidized备份验证 tail -f /var/log/oxidized/oxidized.log 看到设备配置被成功获取的日志。
配置版本追踪 oxidized-web 或 Git 命令 在Oxidized Web界面或Git仓库中看到配置文件和变更历史。

常见问题与排查

  • 连接超时或拒绝:检查管理IP、VTY协议、AAA用户服务类型等配置,并确认网络防火墙没有阻止 22 (SSH) 或 161 (SNMP) 端口。
  • 登录后立刻断开:检查 AAA 用户的 privilege level 是否为 3 或更高。
  • 配置输出不全:检查用户是否有足够的 privilege level 来执行 display current-configuration 命令。
  • 服务端无法识别设备:检查 router.db 中的型号名称(如 vrp)与 config 文件中的模型映射是否一致。

💎 总结

配置的核心在于在交换机上创建一个拥有足够权限的SSH账户,用于Oxidized连接。为了安全性,强烈建议启用SNMPv3,并避免使用默认的团体名。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容