Oxidized 网络设备自动备份系统搭建

article/2025/9/25 17:14:17

文章目录

  • 前言
  • 一、oxidized是什么?
  • 二、oxidized搭建
    • 1.环境准备
    • 2.安装步骤
    • 3.配置文件
    • 4.router.db 文件规范
    • 5.运行
    • 6.Nginx验证登录
  • 三,踩坑总结


前言

传统的网络设备备份通常都是人工登录进行手动操作,随着管理的网络设备越来越多,进阶的的方法通常会使用脚本自动备份,然后通过网络上传工具同步,如果有一个备份系统不需要你使用脚本,不限制厂商设备且支持国外的网络设备,又同时拥有WEB界面,能够实时进行系统的增量备份,而且 配置简单,开源免费!!!


提示:以下是本篇文章正文内容,下面案例可供参考

一、oxidized是什么?

Oxidized是一款开源的网络设备自动备份工具,它最大的特点就是轻便,扩展性强,目前可以支持超过130种设备类型

二、oxidized搭建

1.环境准备

在这里插入图片描述

2.安装步骤

安装工具包

sudo yum groupinstall "Development Tools"

下载解压安装Ruby

wget https://cache.ruby-lang.org/pub/ruby/2.5/ruby-2.5.5.tar.gz
tar -zxvf ruby-2.5.5.tar.gz
cd ruby-2.5.5
./configure
make
make install

安装所有依赖

yum install make cmake which sqlite-devel openssl-devel libssh2-devel ruby gcc ruby-devel libicu-devel gcc-c++

安装Oxidized

gem install oxidized
gem install oxidized-script oxidized-web

在这里插入图片描述在这里插入图片描述
首次运行会提示 没有配置文件
在这里插入图片描述

3.配置文件

组件说明:

config  文件: 就用来存放配置文件
Sources 字段: 指出被管理主机的信息(map:这里是主机信息格式,要按照顺序编辑)
Output 字段: 指出备份文件存放的方式以及备份路径
model 字段:指出该设备的厂商所用的os名称, 核心功能就是靠这个实现的。
router.db文件 可以理解成 存放被管理主机的地方(需要自己创建)

具体的配置文件信息如下

---
username: username
password: password
model: junos
interval: 3600
log: /root/.config/oxidized/logs/oxidized.log
debug: false
threads: 30
timeout: 20
retries: 3
prompt: !ruby/regexp /^([\w.@-]+[#>]\s?)$/
rest: 0.0.0.0:8888
next_adds_job: false
vars: {}
groups: {}
models: {}
pid: "/root/.config/oxidized/pid"
input:default: ssh, telnetdebug: falsessh:secure: false
output:default: filefile:directory: "/root/.config/oxidized/configs"
source:default: csvcsv:file: "/root/.config/oxidized/router.db"delimiter: !ruby/regexp /:/map:name: 0ip: 1model: 2username: 3password: 4group: 5gpg: false
model_map:cisco: iosjuniper: junos(**Ps:注意啦!!!配置文件复制的时候记得更改文件的路径,不可以直接用的**)

4.router.db 文件规范

7A-SW11							name
192.168.1.2						设备地址
vrp								model
admin							账号
12345678						密码
group							分组

在这里插入图片描述
一切均已配置文件里面的map为主
在这里插入图片描述

5.运行

直接输入 oxidized 程序就启动了,也可以设置成后台运行

nohup oxidized >> /var/log/oxidized.log 2>&1 &

在这里插入图片描述
也可以直接网页访问 本机IP:8888
在这里插入图片描述

默认是一个小时同步一次,备份文件在配置文件里都有指定,如果访问不到页面可以先检查一下防火墙设置!!!

6.Nginx验证登录

正常访问,是直接输入IP:8888就直接进入的,现在需要利用nginx 设置一个登录验证,使用yum安装Nginx和httpd-tools

yum install -y nginx
yum install -y httpd-tools

ps:如果提示以下错误 就需要更新yum 了
在这里插入图片描述
更新yum 源

yum install epel-release
yum update

然后在 创建一个存储用户信息的文件夹并给与相应的权限

mkdir /usr/local/nginx/
chown -R 777 /usr/local/nginx/

使用httpd-tools工具创建 WEB登录的认证用户和密码

htpasswd -c /usr/local/nginx/.htpasswd oxidized

在这里插入图片描述
修改Nginx配置文件 添加一个文件

vi /etc/nginx/conf.d/default.conf
 server {listen       80;server_name  Oxidized;location / {root   /usr/share/nginx/html;index  index.html index.htm;auth_basic "Welcome to Oxidized WEB Login";auth_basic_user_file /usr/local/nginx/.htpasswd;proxy_pass http://127.0.0.1:8888;}
}

地址一定要改成127.0.0.1:8888 另外 oxidized的config 配置文件里也要改成127.0.0.1 这样才不会出现单独访问本机地址:8888 就可以直接登录,必须要通过NGINX的登录认证登录
在这里插入图片描述
然后启动 Nginx并且开机自启动

systemctl enable nginx
systemctl start nginx

在这里插入图片描述

三,踩坑总结

期间在安装 oxidized和web的时候 部分系统会出现经典的两个问题.

1,ERROR: Loading command: install (LoadError)
cannot load such file – zlib

在这里插入图片描述
遇到此问题需要进入文件目录 ruby-2.5.1/ext/zilb 执行 ruby ./extconf.rb

在这里插入图片描述
然后进行重新编译 make && make install
在这里插入图片描述
发现执行 make 报错,说明配置文件没有找到 需要手动进行指定
修改Makefile配置文件把zlib.o: $(top_srcdir)/include/ruby.h 改成 zlib.o: …/…/include/ruby.h;
在这里插入图片描述
然后再次执行 make && make install 就成功了
在这里插入图片描述
2,
继续执行 gem install oxidized 又报错了
在这里插入图片描述
同样进入 安装文件目录ruby-2.5.1/ext/openssl 修改Makefile配置文件 在文件顶部加入
top_srcdir = …/… 保存退出
在这里插入图片描述
重新执行 make && make install
在这里插入图片描述在这里插入图片描述

3,启动oxidized的时候会出现 source returns no usable nodes的报错在这里插入图片描述
这个错误反映的就是你没有按照config配置文件里面的 map格式去规定账号和密码 0 1 2 3 4 5 这些事序号 一定严格执行!!!


http://chatgpt.dhexx.cn/article/Wv9CM1G7.shtml

相关文章

网络设备自动备份工具 Oxidized 使用体验

Oxidized 是一个使用 Ruby 编写的开源网络设备配置备份工具,是 RANCID(思科的一个工具) 的替代品,轻量级且可扩展的 Oxidized 支持 130 多种操作系统。 体验一下它的功能以及各种实现,看如何能与现有的系统进行整合&a…

小波变换的matlab程序:wavename='cmor5-2'; 这里5是带宽,2是中心频率,这我知道~但是他们的单位是多少呀? Hz?kHz?MHz? 我的分析频率是e6级的,大概怎么设置参数呢

答: 嗯,照道理是没有固定单位滴,小波分析用的是相对概念,即要根据原始信号频率换算,如何设置参数从原理上都是合理的,就看你需要分析哪些特征,多试几次,选择结果好的就行。 追问&am…

超宽带(UWB)信号谱的中心频率及-10dB带宽的计算(MATLAB)

对于超宽带(UWB)信号,相对带宽或带宽及中心频率是其中两个重要的参数。如果已经得到UWB信号谱,那么通过信号谱如何来计算带宽及中心频率呢? 一般来说,UWB信号谱可以通过直接测量或者由OptiSystem得到&#…

带宽和频率

信道的带宽:对信道来说,带宽是衡量其通信能力的大小的指标。 1、对模拟信道,使用信道的频带宽度来衡量。如果一个信道,其最低可传输频率为f1的信号,最高可传输频率为f2的信号,则该模拟信道的带宽是:模拟信…

聊聊最简单的名词:频率

聊聊最简单的名词:频率 01 “频率”02 谐振频率03 中心频率04 工作频率总结: 理科的孩子们从初中起对“频率”这个词就不陌生了吧。为什么还是要说呢?在射频领域的各种频率比较容易混淆,这里还是再聊聊吧。 01 “频率” — 在数…

多普勒频率

多普勒频率:接收频率与发射频率的差值,观察者接收到的频率等于观察者在单位时间内接收到的完全波的个数,因而单位时间内通过接收者的完全波的个数,即接收的频率。 上面是原理:已知多普勒频率是指单位时间内接受者接收的到完全波的…

带通滤波器中心频率带宽matlab,带通滤波器频率设置

qsj8362234 发表于 2012-9-27 12:08 你索性把你的代码发我把 clc ;close all; clear all; fs=20000; %采样频率 dt=1/fs; f1=1000; f2=2000; %两个信号的频率 a=[1 0 1 0 1 0 1 1 0 0]; %信号,取整 nn=length(a); g1=a; g2=~a; %信号反转和g1反向,01取…

射频信号发生器的使用以及相关中心频率,载波,调制波术语解释

今日尝试使用射频信号发生器验证电平转换芯片。然只能输出交流耦合波形,遂无法实现验证。心灰之下,尝试了信号发生器的各项功能,现将相关心得记录如下。 射频信号发生器只能输出交流耦合信号,举例,设定输出1V的信号,频率为1M,输出波形为RMS均值为0V,峰峰值2V,正弦波,…

MATLAB查看连续小波的形态和中心频率

1:查看小波的中心频率和形态(如果想要查看其他的小波,将db3修改一下名字既可以) clear all; cla; close; cfreqcentfrq(db3)% 查看小波频率 [~,psi,xval]wavefun(db3); plot(xval,psi);%% 查看小波 的形态 db3 ,cfreq 0.8000 方法 2 : 画尺…

中心频率和一些概念解释

中心频率是滤波器通频带中间的频率,以中心频率为准,高于中心频率一直到频率电压衰减到0.707倍时为上边频,相反为下边频,上边频和下边频之间为通频带。 从原理上讲,再复杂的声音也可以用傅里叶分析的方法把它最后分解成若干正弦波的叠加。但是如果反过来用正弦波叠加…

带通滤波器中心频率计算公式中R是哪个值_手把手教系列之IIR数字滤波器设计实现...

喜欢就本文就点个赞吧~~ 版权声明:所有文章版权归嵌入式客栈所有,如商业使用,须嵌入式客栈授权。欢迎关注微信公众号,内容更丰富。 【导读】:在嵌入式系统中经常需要采集模拟信号,采集模拟信号的信号链中难免引入干扰,那么如何滤除干扰呢?今天就来个一步一步描述如何…

VMD分解,matlab代码,包络线,包络谱,中心频率,峭度值,能量熵,样本熵,模糊熵,排列熵,多尺度排列熵,近似熵,包络熵,频谱图,希尔伯特变换,包含所有程序MATLAB代码,-西储大学数据集为例

目录 目录 1.选取数据 2.VMD函数-matlab代码 3.采用matlab脚本导入数据并做VMD分解 4.计算中心频率 5.结果展示 6.智能算法优化VMD参数 1.选取数据 选取1797转速下的内圈故障数据,也就是105.mat,数据集可以在官网下载。下载数据文件|凯斯工程…

信号滤波器以及中心频率概念

1 信号滤波器: 最早期的合成器,用简单的振荡器发生“傻乎乎”的波形,象正弦波、三角波,还有更明亮些的锯齿波、脉冲波等。然后用变形、调制等手法来修饰它们,滤波器是非常重要的工具。 当前的合成器技术已经与早期大不…

无线RF knowledge

2.4G频段 当AP工作在2.4GHz频段的时候,AP工作的频率范围是2.402GHz~2.483GHz。在此频率范围内又划分出14个信道。每个信道的中心频率相隔5MHz,每个信道可供占用的带宽为22MHz,例如:如图所示,channel 1的中心频率为2412…

中心频率详解

该文章讲述了有关中心频率知识详细讲解(图). 中心频率详细讲解 什么是中心频率呢,中心频率就是滤波器通频带中间的频率,以中心频率为准,高于中心频率一直到频率电压衰减到0.707倍时为上边频,相反为下边频,上边频和下边频之间为通频带。 从原理…

Hector slam算法原理解析与代码详解

写了markdown 上传,公式都乱码,无果,截图上传吧 目录 1. hector 原理解析 1.4 多重分辨率地图 2.代码框架 2.1 回调函数 2.2 更新 3. 扫描匹配 3.1 多分辨率匹配 3.2 matchData_2 3.3 scan_match_3 3.4 迭代计算函数 3.5 hession 矩…

Ubuntu常用命令 如何远程连接服务器? 如何创建anaconda虚拟环境? 如何从github上下载代码到服务器? 如何移动、复制、删除文件夹? 如何在服务器间传输文件? 如何在服务器后台运行代码

目前 Ubuntu常用命令 如何远程连接服务器? 如何创建anaconda虚拟环境? 如何从github上下载代码到服务器? 如何移动、复制、删除文件夹? 如何在服务器间传输文件? 如何在服务器后台运行代码? 2.5 创建anacon…

JS逆向day05-某网站登录生成元素加密破解

逆向某网站的登录接口生成元素加密 由于是非法网站所以本文对网址进行了遮挡,但是其中的登录接口加密还是挺有意思的,故写下日志进行逆向,本文仅供参考! 登录接口解析 还是用我们的老套路,发送登录请求,获取登录的url,来看看参数加密情况 password很明显这个参数加密了,作者这…

破解 jar 包之直接修改 .class 文件方式

一、常规 JAVA 软件破解流程 先讲一下常规jar包的破解流程。 1. 快速定位。 1) 通过procmon监控相关软件,查看程序都访问了些啥。 2) 用jd-gui反编译 jar 包,得到源码。 3) 搜索关键字以定位。 这种定位方法只是千万种中的一种&#xff…

Maven项目整合MyBatis、Spring、Springmvc

一、MyBaits 1. MyBatis简介(了解) 1.1. 什么是MyBatis MyBatis 本是apache的一个开源项目iBatis,2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github。 MyBatis是一个优秀的持久层框架&…