RouterOS 自制 L6 许可磁盘镜像

MikroTik RouterOS Level 6 License

之前购买过 CHR 的 P-Unlimited 许可证, 花费了 250 USD, 一直用在家里的软路由上。不得不说, RouterOS 确实好用, 可以通过 Winbox 可视化界面管理路由表、防火墙规则等。

现在想在 IDC 的独立服务器上也使用 RouterOS 作为路由器, 但实在是财力有限, 暂时无法支持购买更多的许可证, 于是又翻出了尘封已久的 60 MB 版本 L6 许可证镜像来用。

RouterOS v6 版本很稳定, 但硬件驱动并不完整。牙膏厂的 Intel I210 网卡竟然没有 igb 驱动。虽然可以升级到 RouterOS 7.23.8, 但后续升级 v7 时, 60 MB 的磁盘会遇到空间不足而无法更新。即使强行更新到新版, 也会因为磁盘空间不足而无法保存配置。

后来发现, 已经有人对 RouterOS 的许可证机制进行了逆向分析, 并分享了用于测试的密钥。正好借此机会, 研究一下相关原理, 并尝试复现整个制作流程。

RouterOS 许可原理

首先介绍一下 RouterOS 的许可证机制。

RouterOS 的软件 ID 与底层存储设备的部分信息有关, 包括磁盘容量、磁盘序列号、磁盘型号, 以及存储在磁盘引导扇区 (MBR) 中的随机数据。

因此, 如果磁盘的相关参数完全一致, 并且 MBR 中参与校验的数据也相同, 就有可能生成相同的软件 ID, 从而满足对应许可证的匹配条件。

MBR (主引导记录) 位于磁盘的起始位置, 传统布局下占用最前面的 512 字节, 主要包含引导代码、分区表及相关标识信息。在安装 RouterOS 时, 系统会在磁盘的特定位置写入随机数据, 这些数据也会参与后续的设备识别与校验。

安装许可证后, RouterOS 还会将经过加密处理的许可证数据写入磁盘 MBR 中的特定区域。

下图展示了 MBR 中与 RouterOS 相关的数据区域。其中, 蓝色方框标记的是存放随机数据的位置, 红色方框标记的是存放许可证数据的位置。

RouterOS MBR 数据

制作 RouterOS 系统盘

这里使用 RouterOS 7.25 的 ISO 镜像来制作系统盘, 彻彻底底的干净、原生、安全!

需要准备以下两个 ISO 镜像

  • mikrotik-7.25.iso: RouterOS 官方安装镜像
  • systemrescue-13.02-amd64.iso: SystemRescue 系统镜像, 用于启动 Live 环境, 并提供磁盘操作和 Vim 等工具

如果你有其他包含所需工具的 LiveCD, 也可以使用。我常用 SystemRescue 顺手就拿了

创建虚拟机

使用 VMware Workstation Pro 创建虚拟机, 创建一块大小为 6,442,450,944 字节 的虚拟磁盘, 换算后正好是 6 GiB

虚拟磁盘参数如下

I/O Controller type: LSI Logic
Virtual disk type: IDE
Maximum disk size (GB): 6
Allocate all disk space now: no
Store virtual disk as a single file: yes

接着, 将 mikrotik-7.25.iso 挂载到虚拟机的 CD/DVD 驱动器, 并删除声卡、USB 控制器、网卡等不需要的虚拟硬件。

同时, 需要确保磁盘序列号为 00000000000000000001, 磁盘型号为 VMware Virtual IDE Hard Drive

由于这里使用的是 VMware Workstation Pro, 相关磁盘参数可以直接采用默认值, 无需额外修改。

虚拟机设置

安装 RouterOS

启动虚拟机, 进入官方 RouterOS 安装程序, 安装原版系统

RouterOS 安装界面

由于虚拟磁盘有 6 GB, 不必节省空间。在安装界面按 a 选择所有软件包, 再按一次方向键

RouterOS 安装所有包

按 i 开始安装

RouterOS 确认安装

安装程序会提示确认磁盘数据清除, 输入 y, 确认清除 /dev/sda 上的所有数据

RouterOS 正在安装

此时, RouterOS 7.25 就已经写入虚拟磁盘, 你可以正常启动去购买许可了 (bushi

我们接下来还需要处理磁盘中的相关数据, 因此 安装完成后直接关闭虚拟机, 不要按回车重启进入 RouterOS

RouterOS 安装完成

RouterOS L6 授权磁盘镜像制作

激动人心的时刻终于到了!接下来, 我们将对虚拟磁盘进行处理, 然后启动 RouterOS, 看看能否成功复现预期的软件 ID

挂载 SystemRescue ISO 镜像

进入虚拟机设置, 将 CD/DVD 驱动器中的 ISO 镜像替换为 systemrescue-13.02-amd64.iso

启动虚拟机时, 快速连续按下 ESC, 进入启动设备选择菜单, 并选择从 CD-ROM Drive 启动

选择启动位置

进入启动菜单后, 选择第一个启动选项

SystemRescue 启动选项

一切准备就绪, 进入 SystemRescue 环境

SystemRescue 启动完成

检查磁盘并导出 MBR

首先检查系统是否成功识别虚拟磁盘

lsblk

NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
loop0    7:0    0  1.1G  1 loop /run/archiso/sfs/airootfs
sda      8:0    0    6G  0 disk
├─sda1   8:1    0   32M  0 part
└─sda2   8:2    0    6G  0 part
sr0     11:0    1  1.3G  0 rom  /run/archiso/bootmnt

可以看到, 虚拟磁盘已经被识别为 /dev/sda

使用 dd 命令将磁盘开头的 512 字节导出到文件

dd if=/dev/sda of=mbr_dump bs=512 count=1

使用 Vim 修改 MBR 数据

使用 Vim 以二进制模式打开刚才导出的 mbr_dump 文件

vim -b mbr_dump

进入 Vim 后, 按下 : 进入命令行模式, 执行以下命令, 将文件内容转换为 16 进制视图

:%!xxd

如果安装完成后直接关闭虚拟机, 没有重新启动进入 RouterOS, 那么可以看到随机数据区域和许可证数据区域仍然为 0

我们要做的是, 将随机码区域修改成图片上这样。如果之前不小心进入了 RouterOS, 那么需要把其他部分清零

RouterOS MBR 数据

在 16 进制视图中, 可以像编辑普通文本一样修改左侧的 16 进制数值。

需要将 0xB3 至 0x10F 范围内的数据清零, 并将偏移 0x10A 和 0x10B 处的数据分别设置为 BD 和 E8

RouterOS MBR 修改位置

修改完成后, 在 Vim 的命令行模式中执行以下命令, 将 16 进制视图还原为二进制数据, 并保存文件

:%!xxd -r
:wq

最后, 使用 dd 将修改后的数据写回虚拟磁盘

dd if=mbr_dump of=/dev/sda bs=512 count=1

完成后, 重启虚拟机

验证 RouterOS 软件 ID

重启虚拟机, 进入 RouterOS

如果相关数据与当前测试环境匹配, 系统应显示软件 ID TI09-7WK3, 系统会提示需要激活许可证

RouterOS 软件 ID

导入证书

将许可证密钥复制到 RouterOS 终端中, 直接粘贴即可

-----BEGIN MIKROTIK SOFTWARE KEY------------
mr3jH5qhn9irtF53ZICFTN7Tk7wIx7ZkxdAxJ19ydASY
ShhFteHMntBTyaS8wuNdIJJPidJxbuNPLTvCsv7zLA==
-----END MIKROTIK SOFTWARE KEY--------------

需要说明的是, 这个 Key 早已在网络上广泛传播, 在恩山论坛上就能找到多个分享相同内容的帖子, 外网上流传的一些虚拟机镜像也使用了同一份密钥。因此, 这里不再单独标注具体出处。

另外一套证书

除了前面介绍的测试密钥, 网络上还流传着另一套 RouterOS 许可证密钥。

根据原帖于 2023 年 12 月 14 日更新的内容, 这套密钥对应的软件 ID 为 4MZF-SFTR。如果要复现这一配置, 需要将虚拟磁盘的型号、序列号、容量以及 MBR 中的相关数据替换为对应参数。

相关磁盘参数如下

参数 值
软件 ID 4MZF-SFTR
磁盘型号 SSD08G
磁盘序列号 HKHYPO14032703B0778
磁盘容量 (字节) 7918460928, 约为 7.37 GiB
MBR 0x100-0x10F 48 06 55 95 09 20 03 45 05 55 A4 42 00 00 00 00

按照原帖的描述, 正确配置上述参数后, 预期得到的软件 ID 为 4MZF-SFTR

对应的密钥内容如下

-----BEGIN MIKROTIK SOFTWARE KEY------------
IMgQTb0gEpIHOmjUlX60VEfx77kT0mRyPhbgw9tAQ6+P
NtfeupMM0ktPTu0PCHXaWDFbIK/PljgsvNIVsNjWFA==
-----END MIKROTIK SOFTWARE KEY--------------

原帖还提到, 这是一套流传较广的 8G 磁盘镜像, 闲鱼上也能找到相同镜像。

需要注意, 以上参数和软件 ID 均来自原帖描述, 尚不能据此保证在其他环境中可以复现相同结果。实际测试时, 还需要确认磁盘容量、型号、序列号及相关数据是否与原始环境一致。

原帖备份


原文

【23-12-14新增Key】自己做最纯净的ROS 7.12.1 L6授权,随意升级, 不用担心有后门

最后更新于 2026-10-28