sitea / mikrotik-api-gateway
MikroTik API Gateway
dev-main
2024-08-16 12:04 UTC
Requires
- guzzlehttp/guzzle: ^7.0
This package is not auto-updated.
Last update: 2024-09-28 10:50:42 UTC
README
API Gateway 是一个用于 MikroTik RouterOS 的集中式管理系统,利用 REST API,它作为一个中介,接收外部源头的请求并将其转发到 MikroTik 路由器。
- 需要具有 MySQL 和 PHP 版本 8.2+ 的 Web 服务器
- MikroTik 的 REST API 从 RouterOS 的 v7.1beta4 版本开始提供。
版本 0.1.2
演示视频
查看所有版本
https://github.com/nilsonpessim/mikrotik-api-gateway/releases
- 始终下载可用的最新版本。
改进建议
https://github.com/nilsonpessim/mikrotik-api-gateway/pulls
- 对于代码中的改进和建议,请在 GitHub 上直接提交 PULL REQUEST。
访问文档
https://github.com/nilsonpessim/mikrotik-api-gateway/wiki
- 如有疑问,请在 GitHub 上直接提交 ISSUE。
- 请始终阅读我们的更新日志。
屏幕截图 - API WEB 访问
🔧 路由器配置
配置数字证书 SSL
从 RouterOS 的 7.9 版本开始,消费 REST API 不强制要求 SSL 证书,可以使用 http://{ip}/rest 访问,使用 www 服务端口 80。
在生产环境中,我们强烈建议使用 www-ssl 服务端口 443。以下是从 MikroTik WiKi 生成用于 API 的 SSL 证书的链接:https://help.mikrotik.com/docs/display/ROS/Certificates
配置 API 通信用户
- 需要在路由器上配置一个用户,以与 API 通信。
- 我们将创建一个具有适当权限的组,并将用户分配到该组。
- 您还可以通过指定服务器 IP 作为访问源来限制 API 访问,这将确保路由器的安全性。
/user group
add name=api policy="read,write,api,rest-api,!local,!telnet,!ssh,!ftp,!reboot,!policy,!test,!winbox,!password,!web,!sniff,!sensitive,!romon"
/user
add name=api password=api group=api
💻 硬件要求
执行系统所需的最小服务器要求。
- 📀 Linux 服务器。
- ✔️ 处理器:2 个 vCPU。
- ✔️ 内存 RAM:1GB。
- ✔️ 存储:30GB。
- ✔️ Apache/Nginx,PHP 8+,MySQL。
📦 必需包
系统运行所需必需包。
- Web 服务器;
- PHP 8.2;
- MySQL;
- 激活重写规则。
🔧 应用程序安装
在服务器上安装应用程序
- 将 src 目录下的文件发送到您的 Web 服务器根目录。
- 需要 Composer
- 将 sql 目录中的 SQL 方案导入到您的数据库中。
- 如果需要,请更改数据库凭据
db: mikrotik
user: user
password: nilson
- 调整 app.php 文件中的环境 IP 或域名,以及数据库凭据(如果需要)
系统访问数据
- 通过浏览器访问您的服务器 IP,并输入默认访问数据
Email: mail@example.com
Senha: nilsonpessim
⛳ 更新日志
版本 0.1.2 - 2023年10月2日- 修复了当 API 无法连接到 RouterOS(使用用户名和密码)时影响 MikroTik 信息页面加载的问题。
- 改善了与 RouterOS 连接异常的处理。
版本 0.1.1 - 2023年10月2日- 重新设计了网页布局(Web 应用)。
- 增加了对 MikroTik 新命令的兼容性(API WEB 和 REST)。
- 改善了 API 流程并修复了多个错误(API WEB 和 REST)。
版本 0.0.2 - 2023年8月23日- 创建新的用户API时,登录名和密码将自动生成。
- 实现了基于IPv4和IPv6的网络访问控制。
- 改进和修复了错误。
版本 0.0.1 - 2023年8月17日- 初始发布
💖 帮助我们成长
如果这份资料对您有帮助,请通过订阅我的YouTube频道来支持我。
(https://youtube.com/techlabs94?sub_confirmation=1)
这将激励我带来更多类似以及关于网络和技术的其他材料。



