API Gateway é um sistema de gerenciamento centralizado para MikroTik RouterOS, utilizando a API REST, ele trabalha como um INTERMEDIÁRIO, recebendo as requisições de uma fonte externa e encaminhando para o seu roteador MikroTik.
- Requer um Servidor Web com MySQL e PHP Versão 8.2+
- A API REST da MikroTik está disponível à partir da versão v7.1beta4 do RouterOS.
Versão 0.1.2
https://github.com/nilsonpessim/mikrotik-api-gateway/releases
- Baixe sempre a última versão disponível.
https://github.com/nilsonpessim/mikrotik-api-gateway/pulls
- Para sugestões de melhorias e funcionalidades no código, abra um PULL REQUEST diretamente no GitHub.
https://github.com/nilsonpessim/mikrotik-api-gateway/wiki
- Em caso de dúvidas, abra um ISSUE diretamente no GitHub.
- Leia sempre o nosso Changelog.
À partir da versão 7.9 do RouterOS, não é obrigado o certificado SSL para consumir a API REST, podendo ser acessado com http://{ip}/rest, utilizando o serviço www porta 80.
Em ambiente de produção, recomendamos fortemente o uso do serviço www-ssl porta 443. Segue um link de como gerar um certificado SSL para usar na API, diretamente da WiKi da MikroTik: https://help.mikrotik.com/docs/display/ROS/Certificates
- É necessário configurar um usuário no roteador, para comunicar com a API.
- Vamos criar um grupo com as suas devidas permissões, e atribuir o usuário a este grupo.
- Você também pode restringir o acesso API, informando o IP do seu servidor como origem do acesso, isso irá garantir mais segurança ao seu roteador.
/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
Requisitos mínimos do servidor para execução do Sistema.
- 📀 Linux Server.
- ✔️ Processador: 2 vCPU.
- ✔️ Memória RAM: 1GB.
- ✔️ Armazenamento: 30GB.
- ✔️ Apache/Nginx, PHP 8+, MySQL.
Pacotes necessários para funcionamento do Sistema.
- Servidor WEB;
- PHP 8.2;
- MySQL;
- Ativar a regra de reescrita.
- Envie os arquivos da pasta src para a raiz do seu servidor Web.
- Necessário Composer
- Importe o scheme SQL presente na pasta sql para o seu banco de dados.
- Se necessário altere as credenciais do banco de dados:
db: mikrotik
user: user
password: nilson
- Ajuste o IP ou Domínio do seu ambiente no arquivo app.php, juntamente com as credenciais do banco de dados (Se necessário).
- Acesse o IP do seu servidor através do navegador, a informe os dados padrões de acesso:
Email: mail@example.com
Senha: nilsonpessim
Versão 0.1.2 - 02/10/2023
- Corrigido um problema que afetava o carregamento da página de informações do MikroTik, quando a API não conseguia se conectar (usando Usuário e Senha) no RouterOS.
- Melhorias nos tratamentos das Exceptions de conexão ao RouterOS.
Versão 0.1.1 - 02/10/2023
- Reformulação do layout das páginas, na versão web (App Web).
- Adicionado compatibilidades com novos comandos do MikroTik (API WEB e REST).
- Melhorias no fluxo da API e correções de diversos bugs (API WEB e REST).
Versão 0.0.2 - 23/08/2023
- Quando criar um novo User API, o login e senha serão gerados automaticamente.
- Implementado controle de acesso via networks IPv4 e IPv6.
- Melhorias e correções de bugs.
Versão 0.0.1 - 17/08/2023
- Release Inicial
Se este Material foi útil para você, me ajude se inscrevendo no meu canal do YouTube.
(https://youtube.com/techlabs94?sub_confirmation=1)
Isso me incentiva a trazer mais materiais como este e muitos outros de redes e tecnologia.