API painel admin

Pedro, tudo bom?

Estou desenvolvendo um script no mikrotik em que, a cada X horas, ele vai baixar a lista de usuários do mk-auth (clientes_mkt.php) e restaurar no mikrotik. Isso porque, caso o mk-auth fique off, os clientes não tenham problemas para autenticar.

Porém, como vou fazer para baixar esse arquivo se tem que estar autenticado?

Então pensei numa possível API. Vi que você já colocou uma chave de API na página de dados da empresa. Então que tal se você fizer que, se essa API for enviada por GET, ele passa a valer como usuário e senha?

Exemplo, se eu colocar para o script acessar a pagina http://172.31.255.2/admin/clientes_mkt.php?api=1234567890, ele aceita e disponibiliza o arquivo.

Isso seria bom não apenas para esse arquivo de clientes, mas para outras funções do sistema, pois permitiria criarmos APIs que integram com o Mk-Auth.

No aguardo de uma possível solução.

Para adicionar comentários, você deve ser membro de MK-AUTH.

Join MK-AUTH

Votos 0
Enviar-me um email quando as pessoas responderem –

Respostas

  • http://mk-auth.com.br/forum/topics/versao-21-02-com-nova-api-com-au...

    ANDERSON P. LOPES disse:

    Boa noite Pedro, teria uma forma de Exportar somente os usuários sem os Planos? 

    tenho DNS próprio, e ele está setando o dns do google.

    Att

  • Boa noite Pedro, teria uma forma de Exportar somente os usuários sem os Planos? 

    tenho DNS próprio, e ele está setando o dns do google.

    Att

  • para onde foi essa ai agora irmão bom dia

    Pedro Filho disse:

    o sistema já cria e envia por ftp para o mikrotik um arquivo chamado mikrotik.rsc com os dados de login dos cliente, vc pode usar o script abaixo para importar amigo:

    :if ( [/file find name=mikrotik.rsc] != "" ) do={
    :log warning "Importando MikroTik Geral";
    /import mikrotik.rsc;
    /file remove mikrotik.rsc;
    }

    sobre a API, o sistema tem uma mini API que retorna os principais dados, fica na pasta /usr/local/mkauth/api/ mais é preciso pegar a KEY DA API que fica na pagina de dados do provedor e passar em uma url como abaixo:

    http://url_servidor_mk-auth/api/arquivo.php?key=keyapi&valor=oquevcprecisa

    Na lista abaixo tem do dado que cada arquivo da pasta api retorna e o valor preciso:

    ARQUIVO / DADO RETORNADO / VALOR

    titulos.php / dados do titulo / numero do titulo

    usuarios.php / dados do usuario / login do sistema

    chamados.php / dados do chamado / numero do chamado

    clientes.php / dados do cliente / login do cliente

    contas.php / dados da conta / numero da conta

    empresa.php / dados da empresa / não precisa

    todos os dados retornam no formado json


  • no log do mikrotik aparece conexões FTP ??

    Cordeiro Neto disse:

    O meu mesmo rodando os scripts manualmente via putty no mk-auth também não estão gerando o arquivo no mikrotik. E tá tudo configurado o FTP no mikrotik e mk-auth. Não aparece nada no log do mikrotik. O ssh funciona normal. Tem como gerar o arquivo dentro do mk-auth e ser feito o download do mesmo manualmente?

  • O FTP não usa apenas uma porta.

  • O meu mesmo rodando os scripts manualmente via putty no mk-auth também não estão gerando o arquivo no mikrotik. E tá tudo configurado o FTP no mikrotik e mk-auth. Não aparece nada no log do mikrotik. O ssh funciona normal. Tem como gerar o arquivo dentro do mk-auth e ser feito o download do mesmo manualmente?

  • mk-auth somente aceita a porta 21, mais vc pode criar uma regra no firewall do mikrotik para ele somente redirecionar a 21 vinda do mk-auth para a porta que vc usa...

    Pitet disse:

    Pedro se mudar a porta FTP no Mikrotik o M- auth vai acessar via FTP do mesmo jeito? ou tem que mostra pro mk auth aporta que agora está?

  • Pedro se mudar a porta FTP no Mikrotik o M- auth vai acessar via FTP do mesmo jeito? ou tem que mostra pro mk auth aporta que agora está?

    Pedro Filho disse:

    ver no log do mikrotik se aparece tentativa de acesso FTP vindo od mk-auth..

  • nao sei o porque mais aqui deu augumas falhas no meio do processo e tive que incluir augumas pausas no scrip, segue em anexo pra galera como contribuição....

    :if ( [/file find name=mikrotik.rsc] != "" ) do={
    :log warning "Zerando Configurações PPPoE";
    :delay 2s
    /ppp profile remove [/ppp profile find where comment=mkauth]
    /ppp secret remove [/ppp secret find where comment=mkauth]
    :log warning "Zerando Configurações Hotspot";
    :delay 2s
    /ip hotspot user profile remove [/ip hotspot user profile find name!=default]
    /ip hotspot user remove [/ip hotspot user find comment=mkauth]
    :log warning "Executando Mikrotik.src";
    :delay 2s
    /import mikrotik.rsc;
    :delay 2s
    :log warning "Excluindo Mikrotik.src";
    /file remove mikrotik.rsc
    }

  • O script estava funcionando bacana, até começar a aparecer algumas regras de access list em branco:

    /interface wireless access-list add interface=all forwarding=no authentication=yes signal-range=-120..120 mac-address="" disabled=yes comment=mkauth

    Sendo que meu access-list está desabilitado no painel.

    Fora que as regras estão vindo com disabled=yes

    Script:

    :if ( [/file find name=mikrotik.rsc] != "" ) do={
      :log warning "Importando MikroTik Geral";
      /ip hotspot user profile remove [/ip hotspot user profile find name!=default]
      /ppp profile remove [/ppp profile find where comment=mkauth]
      /ppp secret remove [/ppp secret find where comment=mkauth]
      /interface wireless access-list remove [/interface wireless access-list find where comment=mkauth]
      /import mikrotik.rsc;
    }

This reply was deleted.