rConfig 介绍与选型指南

rConfig V8 Core(PHP/Laravel 网络设备配置管理平台)介绍与选型:v3/v6/V8 版本演进、GPLv3 许可、架构与功能特性,并与 RANCID 3.14、Oxidized 0.37.0、Unimus 量化对比,2026-10-28 联网实查取证。

rConfigrConfig网络管理2026/10/28

rConfig 介绍与选型指南

目标:说清 rConfig 是什么、当前版本形态(V8 Core 开源版与 V8 Pro 商业版的关系,以及已停维护的 v3 老版本)、能解决什么网络运维问题,并与 RANCID、Oxidized、Unimus 做量化选型对比。本文全部版本号、许可与功能信息均于 2026-10-28 联网实查官方渠道(GitHub Releases、官方文档站 v8coredocs.rconfig.com、官网 rconfig.com、shrubbery.net)取证,未在本地部署实测;部署实测记录见《rConfig 8.2.19 Ubuntu 22.04 安装指南》。

一、环境信息

本文为认知与选型篇,所有结论来自官方公开渠道的联网取证,取证日期 2026-10-28。取证渠道与当次取到的关键值如下:

取证项渠道2026-10-28 实查值
开源版最新稳定版github.com/rconfig/rconfig/releases.atomV8 Core 8.2.19(2026-10-27 发布)
上一版本同上8.2.18(2026-10-08)、8.2.17(2026-09-11)
许可证仓库 LICENSE.txtGNU GPL v3(composer.json 元数据另标注 MIT,以 LICENSE.txt 为准)
技术栈仓库 composer.jsonPHP ^8.4.27、laravel/framework ^13.0、Vue.js 3、MariaDB/MySQL、Redis
GitHub 星数shields.io GitHub stars 徽章221
RANCID 当前版本shrubbery.net/rancid3.14(官网声明 "The current version is 3.14")
Oxidized 最新版github.com/ytti/oxidized/releases.atom0.37.0(2026-05-20 发布)
官方文档站v8coredocs.rconfig.comV8 Core Installation 等章节,页面标注 Last updated: Oct 27, 2026

⚠️ 注意:rConfig 迭代较快,读本文时请以 releases.atom 与官网的最新值为准;下文所有版本号均指 2026-10-28 实查值。

二、软件概述

rConfig 是一个面向网络工程师的网络设备配置管理(Network Configuration Management,NCM)平台:集中备份、检索与追踪网络设备(路由器、交换机、防火墙等)的运行配置,把「登设备、敲命令、拷配置、存文件」这件高频操作变成自动定时任务。它由 rConfig 团队(爱尔兰公司 rConfig Ltd,官网 rconfig.com)维护,采用 PHP/Laravel 全栈编写,Web 界面 + 定时任务 + 队列 worker 的形态,既可以通过浏览器操作,也可以在服务器上用 php artisan rconfig:* 命令行驱动。

rConfig 的差异化在于「自定义命令集」:你为设备类别(Command Group)定义一组要执行的命令(如 show running-config、show version),添加设备到类别后,定时任务就会对每台设备建立 SSH/Telnet 会话、执行命令、把输出落盘为配置快照。v3 时代即以此为核心,V8 延续并强化了这一模型。

2.1 版本演进:v3 → v6 → v7 → v8

rConfig 的版本历史是选型时最容易踩坑的地方,必须分清三条线:

版本线状态说明
rConfig v3已弃用(2023 年 2 月)自 2010 年开发的老开源版,原生 PHP(无框架),仓库 rconfig/rconfig-v3 的 README 明确声明 "this project is no longer maintained",仅作历史资料保留
rConfig v6 Core / v6 Pro已被 V8 取代2023 年初发布的完全重写版(Laravel 技术栈),Core 开源、Pro 商业订阅;官方文档站现提供 v6docs.rconfig.com 归档文档与「V6 Core to V8 Core Upgrade」升级指南
rConfig V7已被 V8 取代中间过渡版本,官方文档站保留 v7docs.rconfig.com 归档文档
rConfig V8 Core(本文基线)当前开源主线免费开源的社区版,仓库 rconfig/rconfig,2026-10-27 的最新发布为 8.2.19,官方文档站 v8coredocs.rconfig.com
rConfig V8 Pro当前商业版付费订阅产品(含优先支持、SLA、变更评审工作流 Change Manager 等企业特性),见 rconfig.com/pricing

一句话总结:今天从零开始用 rConfig,就是用 V8 Core(开源)或 V8 Pro(付费);v3 只在接手存量旧系统时才会遇到,官方不提供任何支持。

2.2 开源许可与维护方

  • 维护方:rConfig Ltd(官网 rconfig.com),GitHub 组织 rconfig 下有主仓库 rconfig/rconfig、模板仓库 rconfig/rconfig-templates、官方文档站(Astro 构建的 v8coredocs.rconfig.com)与社区论坛 community.rconfig.com。
  • 许可:仓库根目录 LICENSE.txt 为 GNU General Public License v3;同一仓库 composer.json 的 license 字段标注为 MIT,两者不一致。以正式的 LICENSE.txt 文本(GPLv3)为准更稳妥——这意味着对 rConfig 源码的修改与再分发需要遵守 GPL 传染性要求,商业集成前请过一遍法务。
  • 演示账号与默认凭据:官方安装向导交付的初始管理员是 admin@domain.com / admin,官方文档强烈要求首次登录后立即更换(本文部署篇遵循平台统一演示约定改用 admin / q1w2e3r4)。

三、核心架构

rConfig V8 Core 是一个典型的 Laravel 单体应用,外加 Redis 队列与数据库,组件协作关系如下:

浏览器 / CLI(php artisan rconfig:*)
        │  HTTP(S)
        ▼
Apache 2.4 ── PHP 8.4(Laravel 13 全栈,Web/API)
        │                     │
        │  入队                │  调度(cron:/etc/cron.d/rconfig-core)
        ▼                     ▼
Redis 6+(队列/缓存/会话)→ Horizon 队列 worker(Supervisor 托管)
                                    │  SSH / Telnet(phpseclib)
                                    ▼
                            网络设备(Cisco/Juniper/HP…)
                                    │  配置快照
                                    ▼
                  MariaDB/MySQL(元数据)+ 本地磁盘(配置文件,storage/app/rconfig/)

各组件分工:

  • Apache 2.4 + PHP 8.4:承载 Web UI 与 REST API(v1/v2,Token 鉴权基于 Laravel Sanctum)。官方要求 PHP 8.4 为强制版本,老版本 PHP 无法运行 V8 Core。
  • Redis 6+:承担缓存、会话与队列三大驱动(.env 中 CACHE_DRIVER=redis、QUEUE_CONNECTION=redis、SESSION_DRIVER=redis)。安装向导可一键加固 Redis 密码(rconfig:redis-secure)。
  • Horizon + Supervisor:Horizon 是 Laravel 的 Redis 队列管理面板,实际抓取设备配置的耗时任务全部在队列里执行;Supervisor 负责 Horizon 进程的常驻与拉起(Ubuntu 上配置文件为 /etc/supervisor/conf.d/rconfig-core-horizon.conf)。
  • cron(/etc/cron.d/rconfig-core):Laravel 调度器入口,每分钟触发一次,驱动定时备份任务、每日 3 点的配置摘要同步(rconfig:config-summaries-sync)等计划作业。
  • 存储:设备元数据、任务、模板、用户、活动日志在 MariaDB/MySQL;每台设备的配置快照按 类别/设备/年/月/日 目录树落盘在 storage/app/rconfig/ 下,权限默认收紧(文件 0440、目录 0750)。

💡 技术拓展:NCM 工具的配置快照存储形态不止 rConfig 的一种。常见三种——

存储形态代表工具特点适用场景
文件树 + 数据库索引rConfig V8、Unimus快照按目录落盘、元数据入库,界面检索快想要 Web 界面与合规审计
版本库(Git/RCS/CVS)RANCID(CVS)、Oxidized(git)每次变更自动提交版本库,天然历史与回滚已有版本库运维体系、脚本化消费
私有格式/专有服务SolarWinds NCM 等商业品与厂商生态深度绑定已购商业网管平台

rConfig V8 实际采用「文件树 + MariaDB 索引」,同时官方文档提供 Git-First Storage 与 Oxidized/RANCID 导入通道(rconfig:oxidized-load-devices、rconfig:rancid-load-devices),从版本库系工具迁移时设备清单可直接转换。

四、功能特性

以下特性清单来自 2026-10-28 实查的仓库 README 与官方文档站目录,其中标 🆕 的为 2026 年 7 月随 8.x 引入的新能力:

  • 配置备份:SSH/Telnet 连接设备执行命令集,快照落盘;支持定时任务与手动触发。
  • 多厂商支持:模板仓库 rconfig-templates 覆盖 Cisco、Arista、Aruba、Brocade、Calix、Checkpoint、Dell、Extreme、F5、Fortinet、HP 等数十厂商(仓库目录实查),rconfig:clone-templates 一键更新。
  • 设备数量不限:Core 版无人工设备数上限。
  • 配置版本与 Diff:🆕 自动追踪每个配置版本,提供 inline 与 side-by-side 两种对比视图与完整历史。
  • REST API(v1/v2):🆕 Token 鉴权的编程接口,覆盖设备、配置、模板、任务、厂商等资源,内置 API 文档。
  • 配置搜索:🆕 多关键词 AND/OR 匹配,可按标签、设备、命令组、命令过滤。
  • 定时任务:基于 cron 的计划任务,按任务/类别/标签批量抓取。
  • SSO 单点登录:Microsoft Entra ID、Google、Okta 与 SAML2/Shibboleth(.env 中 SAML2_* 等可选配置项)。
  • 导入迁移:官方内置 Oxidized、RANCID、NetMRI、SolarWinds NCM 四种存量工具的设备导入通道。
  • 安全:配置文件磁盘权限收紧(0440/0750)、Redis 密码加固、设备凭据 UI 脱敏(MASK_DEVICE_CREDENTIALS)、活动日志(spatie/laravel-activitylog)、健康检查(spatie/laravel-health)。
  • 自签名 HTTPS:8.2.19 起内置 rconfig:ssl-self-signed,一条命令生成自签证书并强制 HTTP 跳转 HTTPS。

Core 与 Pro 的功能分界(实查 README 对比表):配置备份、多厂商、不限设备、版本 Diff、REST API、配置搜索两者都有;Change Manager 变更评审工作流、企业特性、优先支持与 SLA 保证仅 Pro 提供。

五、快速开始(最小可用示例)

本节为官方推荐的最小路径概览(2026-10-28 实查官方安装文档,命令逐条转录;本文未在本地执行本节命令,完整的逐命令实测回显见《rConfig 8.2.19 Ubuntu 22.04 安装指南》)。官方要求 2 核 4GB 内存、100GB 磁盘的专用服务器,操作系统支持 Ubuntu 22.04/24.04 与 Rocky/RHEL/Alma 9 系(Ubuntu 26.04 与 RHEL 10 系暂不支持)。

在 Ubuntu 22.04 服务器上以 root 执行(官方 OS 配置指南原文):

# 1. 下载并运行官方 Ubuntu 依赖安装脚本(装 PHP 8.4、Apache、MariaDB 11.2、Redis、Supervisor、Composer)
cd ~/
apt -y install wget
wget https://dl.rconfig.com/downloads/rconfig8_ubuntu.sh -O install.sh
chmod +x install.sh
./install.sh <数据库root密码>   # 末尾自动进入 mariadb-secure-installation,完成后建议重启

# 2. 建库(README 原文)
mysql -u root -p
#   CREATE DATABASE rconfig;
#   CREATE USER 'rconfig_user'@'localhost' IDENTIFIED BY 'your_secure_password';
#   GRANT ALL PRIVILEGES ON rconfig.* TO 'rconfig_user'@'localhost';
#   FLUSH PRIVILEGES; EXIT;

# 3. 拉取应用并装依赖(README 原文)
cd /var/www/html
git clone https://github.com/rconfig/rconfig.git
cd rconfig
cp .env.example .env      # 编辑 APP_URL、APP_DIR_PATH、DB_* 各项
export COMPOSER_ALLOW_SUPERUSER=1
composer self-update --2
yes | composer install --no-dev

# 4. Web 服务与队列托管 + 安装向导
./setup_apache.sh
sudo ./setup_supervisor.sh
php artisan v8core:install   # 交互向导:校验数据库→迁移→种子数据→APP_KEY→cron(回答 yes)

向导完成后用默认账号 admin@domain.com / admin 登录 Web 界面,官方要求立即新建自己的管理员并停用默认账号;随后执行 php artisan rconfig:clone-templates 更新厂商模板、php artisan rconfig:ssl-self-signed(8.2.19 起)开启 HTTPS,即可添加第一台设备跑通备份链路。

六、适用场景与限制

适合的场景:

  1. 中大型园区/数据中心的配置合规基线:定时抓取全网设备 running-config,配合配置 Diff 与搜索,回答「谁在什么时候改了 ACL」。
  2. 变更前快照与回退:变更窗口用 rconfig:download-device <ID> 手动抓一份快照,出问题按版本历史回看。
  3. 从 RANCID/Oxidized 平滑迁移:官方内置两家工具的设备导入命令,设备清单与类型映射可自动转换。
  4. 脚本化运维集成:30 个 rconfig:* CLI 命令可被 Ansible/CI 流水线调用,REST API 覆盖日常资源管理。

限制与注意(实查官方文档):

  • 服务器须专用:官方明确要求 appliance 式独立部署,不允许与已有 Web 服务/应用混装(Apache、Redis、Supervisor 配置会被覆盖);SELinux 必须禁用或自写策略。
  • 不允许直接暴露公网:官方声明仅支持本地部署,且必须置于防火墙/VPN 之后。
  • PHP 8.4 为硬性要求,Ubuntu 22.04 自带源只有 PHP 8.1,必须用 ondrej/php PPA(官方脚本已封装)。
  • 配置文件含设备口令等敏感信息,官方警告禁止对应用目录做全目录 755 放权,权限修复须走 rconfig:set-config-permissions。
  • Core 版没有变更评审工作流(Change Manager)、SLA 与厂商支持;需要合规审批流则要上 V8 Pro 订阅。

七、同类选型对比

7.1 候选概览

网络配置管理(NCM)赛道的开源/免费常见候选共四个:rConfig(PHP/Laravel,Web 平台)、RANCID(Perl/Tcl 老牌脚本集)、Oxidized(Ruby,RANCID 的现代替代)、Unimus(Java,闭源商业、社区版免费 2 台设备)。其中 Oxidized 的详细实测与选型另见本站《Oxidized 0.37.0 介绍与选型指南》与《Ubuntu 22.04 安装 Oxidized 指南》。

7.2 量化对比

下表数据于 2026-10-28 实查各官方渠道(GitHub releases.atom / shields.io 星数徽章 / shrubbery.net / unimus.net),查询方式与日期已在第一节登记:

维度rConfig V8 CoreRANCID 3.14Oxidized 0.37.0Unimus
语言/技术栈PHP 8.4 / Laravel 13 / Vue 3Perl / Tcl(expect 风格)RubyJava(闭源)
许可GPL v3(LICENSE.txt 实查)自有宽松许可(随源分发)MIT专有
最新版本(2026-10-28 实查)8.2.19(2026-10-27)3.14(官网 current version)0.37.0(2026-05-20)官网首页未公示版本号,按订阅发布
发版节奏(近 4 个实查发布)约 1–2 次/月(8.2.16→8.2.19 为 8–16/8/9–11/10–08–10–27)多年一更数月一更商业节奏,不公开
GitHub 星数221(主仓库)无 GitHub 主仓(shrubbery.net 分发)3.6k未开源,无星数
界面Web UI + REST API v1/v2无 Web(纯脚本 + CVS/git + mailer)无官方 Web(生态有 UI 项目)Web UI
存储形态文件树 + MariaDB 索引CVS/RCS(可选 git)git 仓库私有存储 + 数据库
队列/并发模型Redis + Horizon 多进程 worker单进程轮询脚本单进程多 worker 线程内置调度
设备数限制无(Core 亦无)无无社区版限 2 台
迁移入口—rConfig 官方提供 rconfig:rancid-load-devices 导入rConfig 官方提供 rconfig:oxidized-load-devices 导入—
商业支持V8 Pro 订阅(SLA/变更评审)社区社区NetCore 商业订阅

关键差异解读:四个候选其实是两代产品——RANCID/Oxidized 是「版本库中心」的脚本形态,交付物是 git/CVS 里的配置仓库,价值在稳定、可脚本化、零数据库依赖;rConfig 与 Unimus 是「平台形态」,交付物是带检索、Diff、定时任务和权限体系的 Web 应用。rConfig 相比 Unimus 的核心优势是完全开源且无设备数上限;相比 RANCID/Oxidized 的核心优势是开箱的 Web 界面、REST API 与内置的迁移命令。

7.3 选型建议

  • 想要 Web 界面 + API + 无设备数上限的全功能 NCM,且能接受专用服务器与 PHP 栈 → rConfig V8 Core。
  • 已深度依赖 git 工作流(配置入库、code review 式审计),服务器资源紧张 → Oxidized(RANCID 3.14 仅在维护存量、已有 Tcl/OldWorld 脚本资产时考虑)。
  • 团队需要厂商级支持、SLA 与变更审批工作流 → rConfig V8 Pro 或 Unimus 订阅。
  • 只有 1–2 台设备、想零运维 → Unimus 社区版即可,不必引入 rConfig 的整套依赖。

八、参考链接