Página 1 de 2 12 ÚltimoÚltimo
+ Responder ao Tópico



  1. #1

    Question Acesso Mikrotik via site php (Não consigo via API)

    Bom dia amigos.
    Já tentei de tudo para acesso ao meu Mikrotik:

    • Ativei a API no Mikrotik
    • Baixei a API 'routeros_api.class.php' da Mikrotik
    • Criei o sprit PHP de teste
      <?php
      require('routeros_api.class.php');
      $API = new routeros_api();
      $API->debug = true;
      if ($API->connect('coloco_o_ip_valido', 'admin', 'coloco_a_senha')) {
      $API->write('/interface/getall');
      $READ = $API->read(false);
      $ARRAY = $API->parse_response($READ);
      print_r($ARRAY);
      $API->disconnect();
      }
      ?>
    • E ao tentar acessar o mesmo fica como que tentando e não conecta de forma alguma. As vezes me é retornado o Erro Internal 500, como que houvesse alguma falha de atributo de leitura do arquivo php, o que já verifiquei.

    Inclusive já verifiquei alguns posts aqui do fórum e teste também sem excito.

    O que pode está ocorrendo? Alguém já consegui realizar a conexão e listar alguns itens usando a API, estou precisando do auxílio dos amigos, desde já, agradeço.

  2. #2
    BR4Z1L&1R0
    Visitante

    Padrão Re: Acesso Mikrotik via site php (Não consigo via API)

    Olá,

    no exemplo que você portou existe um espaço no nome do arquivo de referência da API.

    Segue o código correto:

    <?php

    require('routeros_api.class.php');

    $API = new routeros_api();
    $API->debug = true;

    if ($API->connect('coloco_o_ip_valido ', 'admin', 'coloco_a_senha')) {

    $API->write('/interface/getall');
    $READ = $API->read(false);
    $ARRAY = $API->parse_response($READ);

    print_r($ARRAY);

    $API->disconnect();
    }
    ?>


    espero ter ajudado

  3. #3

    Padrão Re: Acesso Mikrotik via site php (Não consigo via API)

    Opa. Bão? Como que tá?
    Será que a porta está com um valor diferente do padrão 8728?
    Eu costumo fazer um pouco diferente quando estou utilizando a api.
    Tente o trecho de código abaixo e qualquer coisa me avise:

    Código :
    <?php
       require_once('routeros_api.class.php');
       $mkt_ip = '192.168.254.14';
       $mkt_user = 'admin';
       $mkt_passwd = 'senhaadmin';
       $mkt_port = '8728';  /* talvez a porta utilizada não seja a padrão. Por isso, especificar aqui */
     
       $api = new routeros_api();
       $api->port = $mkt_port;
     
       if($api->connect($mkt_ip, $mkt_user, $mkt_passwd)) {
           $api->write('/interface/print');
           $resultado = $api->read();
           echo "<pre>";
           print_r($resultado);
           echo "</pre>";
     
           $api->disconnect();
     
       }
       else {
           echo "Falha ao estabelecer conexão com o Mkt ($mkt_ip) na porta ($mkt_port)";
       }
     
    ?>
    Espero que ajude.
    Abraço.

    rod~

  4. #4

    Question Re: Acesso Mikrotik via site php (Não consigo via API)

    Boa tarde.
    Desde já te agradeço, mas o problema ainda persiste, pois realmente verifiquei a API está ativa e rodando da porta padrão "8728", tentei com o seu script e continua a ser mostrada a seguinte mensagem de erro:
    -------------------------
    Internal Server Error

    The server encountered an internal error or misconfiguration and was unable to complete your request.
    Please contact the server administrator, [email protected] and inform them of the time the error occurred, and anything you might have done that may have caused the error.

    More information about this error may be available in the server error log.
    Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
    -------------------------
    É uma característica geralmente da falha de acesso USUÁRIO x SENHA, mas não seria esse o motivo, pois consigo acessar sem problema tanto via SSH como via WINBOX com a mesma senha, será que para a API teria de ser uma senha diferente da que utilizo para acesso ao Mikrotik via SSH e WINBOX?
    Realmente não seu o que pode está ocorrendo, aparentemente seria uma atividade simples. Teria alguma outra idéia do que possa está acontecendo?

  5. #5

    Padrão Re: Acesso Mikrotik via site php (Não consigo via API)

    Qual a clasee "routeros_api.class.php" que está utilizando? Teria como anexar ela à sua resposta, para que eu possa comparar com a que tenho aqui e ver se poderia ser algo relacionado a API?

  6. #6

    Padrão Re: Acesso Mikrotik via site php (Não consigo via API)

    Creio que não seja nenhum problema com relação a senha não.
    Você está executando o script diretamente pelo browser?
    Você pode tentar fazer o seguinte: execute tanto o seu script quando o meu pela linha de comando, ou seja, utilizando o PHP-CLI.
    Assim, supondo que você utilize algum ambiente UNIX-like e o nome do arquivo seja teste.php, faça no terminal:

    php -f teste.php

    e veja o que acontece.
    Se você estiver executando o script pelo browser, veja nos logs do apache o que está aparecendo quando aquela mensagem de erro é apresentada.
    Poste os resultados aqui pra gente.
    Também, depois disso tudo se nada diferente acontecer, poste pra gente aqui essa sua classe routeros_api.class.php

    abraço!

  7. #7

    Padrão Re: Acesso Mikrotik via site php (Não consigo via API)

    Coloque a versão do MK e as config do seu firewall rules. Acredito ser um problema de filtragem na porta da API, versão incompatível etc.

    usei as configurações padrão:
    Código php:
    <?php
     
    require('routeros_api.class.php');
     
    $API = new routeros_api();
     
    $API->debug = true;
     
    if ($API->connect('111.111.111.111', 'LOGIN', 'PASSWORD')) {
     
       $API->write('/interface/getall');
       $ARRAY = $API->read();
     
       print_r($ARRAY);
     
       $API->disconnect();
     
    }
     
    ?>

    http://int21.sytes.net/ip.php

    PS teste com admin
    Última edição por int21; 06-12-2010 às 22:52.

  8. #8

    Question Re: Acesso Mikrotik via site php (Não consigo via API)

    Bom dia.
    Desde já, agradeço o apoio dos amigos. Quanto aos testes realizados:

    Versão do RouterOS: RouterOS 4.13
    Execução do comando php "php -f teste.php", resultado:
    Código :
    new terminal>php -f teste.php
    bad command name php (line 1 column 1)
    As regras do Firewall, acredito até ter sido excessivo em relação as regras, mas é que logo após o funcionamento desse servidor, achei um elemento batendo direto com usuário e senha inválido e após descobrir que se tratava de tentativa de invasão pela ssh, alterei a porta do ssh, e protegi as portas do ssh e ftp, tanto as anteriores para evitar as batidas como as atuais para inibir os acesso, abaixo o as minha regras do firewall:
    Código :
    /ip firewall filter
    add action=drop chain=input comment="Bloqueia acesso E0 porta Proxy 3128 pela placa do Link" disabled=no dst-port=3128 in-interface=Publica_eth1 protocol=tcp
    add action=drop chain=forward comment="Bloqueia WAREZ" disabled=no p2p=warez
    add action=accept chain=input comment="Limitar todos os ping s em 50k" disabled=no limit=50/5s,2 protocol=icmp
    add action=drop chain=input comment="Bloquear pings excessivos" disabled=no protocol=icmp
    add action=drop chain=input comment="Bloqueia acesso a porta 22 pela placa do Link" disabled=no dst-port=22 in-interface=Publica_eth1 protocol=tcp
    add action=drop chain=input comment="barrar brute force para ssh" disabled=no dst-port=22 protocol=tcp src-address-list=ssh_blacklist
    add action=add-src-to-address-list address-list=ssh_blacklist address-list-timeout=1w3d chain=input comment="barrar brute force para ssh2" connection-state=new disabled=no dst-port=22 protocol=tcp src-address-list=ssh_stage3
    add action=add-src-to-address-list address-list=ssh_stage3 address-list-timeout=1m chain=input comment="barrar brute force para ssh3" connection-state=new disabled=no dst-port=22 protocol=tcp src-address-list=ssh_stage2
    add action=add-src-to-address-list address-list=ssh_stage2 address-list-timeout=1m chain=input comment="barrar brute force para ssh4" connection-state=new disabled=no dst-port=22 protocol=tcp src-address-list=ssh_stage1
    add action=add-src-to-address-list address-list=ssh_stage1 address-list-timeout=1m chain=input comment="barrar brute force para ssh5" connection-state=new disabled=no dst-port=22 protocol=tcp
    add action=drop chain=input comment="Barrar brute forca para ftp" disabled=no dst-port=21 protocol=tcp src-address-list=ftp_blacklist
    add action=accept chain=output comment="Barrar brute forca para ftp2" content="530 Login incorrect" disabled=no dst-limit=1/1m,9,dst-address/1m protocol=tcp
    add action=add-dst-to-address-list address-list=ftp_blacklist address-list-timeout=3h chain=output comment="Barrar brute forca para ftp3" content="530 Login incorrect" disabled=no protocol=tcp
    add action=drop chain=forward comment="DROP em conexes invlidas" connection-state=invalid disabled=no protocol=tcp
    add action=accept chain=forward comment="Permitir conexes j estabelecidas" connection-state=established disabled=no
    add action=accept chain=forward comment="Permitir conexes relacionadas" connection-state=related disabled=no
    add action=drop chain=tcp comment="Deny TFTP" disabled=no dst-port=69 protocol=tcp
    add action=drop chain=tcp comment="Deny RPC portmapper" disabled=no dst-port=111 protocol=tcp
    add action=drop chain=tcp comment="Deny RPC portmapper" disabled=no dst-port=135 protocol=tcp
    add action=drop chain=tcp comment="Deny NetBios (Compartilhamento na Rede Interna)TCP" disabled=no dst-port=137-139 protocol=tcp
    add action=drop chain=tcp comment="Deny cifs" disabled=no dst-port=445 protocol=tcp
    add action=drop chain=tcp comment="Deny NFS" disabled=no dst-port=2049 protocol=tcp
    add action=drop chain=tcp comment="Deny NetBus" disabled=no dst-port=12345-12346 protocol=tcp
    add action=drop chain=tcp comment="Deny NetBus" disabled=no dst-port=20034 protocol=tcp
    add action=drop chain=tcp comment="Deny BackOriffice" disabled=no dst-port=3133 protocol=tcp
    add action=drop chain=tcp comment="Deny DHCP" disabled=no dst-port=67-68 protocol=tcp
    add action=drop chain=udp comment="Deny TFTP" disabled=no dst-port=69 protocol=udp
    add action=drop chain=udp comment="Deny PRC portmapper" disabled=no dst-port=111 protocol=udp
    add action=drop chain=udp comment="Deny PRC portmapper" disabled=no dst-port=135 protocol=udp
    add action=drop chain=udp comment="Deny NetBios (Compartilhamento na Rede Interna)UDP" disabled=no dst-port=137-139 protocol=udp
    add action=drop chain=udp comment="Deny NFS" disabled=no dst-port=2049 protocol=udp
    add action=drop chain=udp comment="Deny BackOriffice" disabled=no dst-port=3133 protocol=udp
    add action=drop chain=input comment="Bloqueia acesso a porta 2200 pela placa do Link" disabled=no dst-port=2200 in-interface=Publica_eth1 protocol=tcp
    add action=drop chain=input comment="barrar brute force para ssh" disabled=no dst-port=2200 protocol=tcp src-address-list=ssh_blacklist
    add action=add-src-to-address-list address-list=ssh_blacklist address-list-timeout=1w3d chain=input comment="barrar brute force para ssh2" connection-state=new disabled=no dst-port=2200 protocol=tcp src-address-list=ssh_stage3
    add action=add-src-to-address-list address-list=ssh_stage3 address-list-timeout=1m chain=input comment="barrar brute force para ssh3" connection-state=new disabled=no dst-port=2200 protocol=tcp src-address-list=ssh_stage2
    add action=add-src-to-address-list address-list=ssh_stage2 address-list-timeout=1m chain=input comment="barrar brute force para ssh4" connection-state=new disabled=no dst-port=2200 protocol=tcp src-address-list=ssh_stage1
    add action=add-src-to-address-list address-list=ssh_stage1 address-list-timeout=1m chain=input comment="barrar brute force para ssh5" connection-state=new disabled=no dst-port=2200 protocol=tcp
    add action=drop chain=input comment="Barrar brute forca para ftp 2121" disabled=no dst-port=2121 protocol=tcp src-address-list=ftp_blacklist
    add action=accept chain=output comment="Barrar brute forca para ftp 2121" content="530 Login incorrect" disabled=no dst-limit=1/1m,9,dst-address/1m protocol=tcp
    add action=add-dst-to-address-list address-list=ftp_blacklist address-list-timeout=3h chain=output comment="Barrar brute forca para ftp 2121" content="530 Login incorrect" disabled=no protocol=tcp
    add action=drop chain=input comment="Bloquear portas 21 e 23" disabled=no dst-port=22-23 in-interface=Publica_eth1 protocol=tcp
    Aguardando idéias do que pode ser feito para funcionar esse acesso ao php.
    Novamente agradeço aos amigos.

    Observações:
    Já tentei o procedimento tanto hospedando os arquivo (routeros_api.class.php e teste.php) em servidor externo onde tenho um site hospedado e funcionando os recursos php assim como colocando-os na pasta "hotspot" do servidor Mikrotik.

    Em anexo o arquivo API que estou utilizando.
    routeros_api.class.zip
    Última edição por clicsis; 07-12-2010 às 10:32. Razão: Acrescentar observações e anexar arquivo

  9. #9

    Padrão Re: Acesso Mikrotik via site php (Não consigo via API)

    API usada

    API PHP class - MikroTik Wiki

    exemplo usado:

    int21.sytes.net/ip.php

    code example:

    <?php
    require_once('routeros_api.class.php');
    $mkt_ip = 'x.x.x.x';
    $mkt_user = 'admin';
    $mkt_passwd = 'xxxxxxx';
    $mkt_port = '8728';

    $api = new routeros_api();
    $api->port = $mkt_port;

    if($api->connect($mkt_ip, $mkt_user, $mkt_passwd)) {
    $api->write('/interface/pptp-server/print');
    $resultado = $api->read();
    echo "<pre>";
    // print_r($resultado);
    echo "</pre>";

    # Numero de conectados
    $n_array = count($resultado);
    echo "Ips Conectados: ".$n_array."<br>";

    //print_r(array_slice($resultado, 0, 1));
    $a=1;
    echo '<select name="combo">';
    foreach ($resultado as $s) {
    $a=$a+1;
    echo "<option value=".$a.">".$s['user']."<----->".$s['client-address']."</option>";}
    //echo "<option value=".$s.".">".$s['user'].$s['client-address']."</option>";}
    echo "</combo>";
    $api->disconnect();
    }
    else {
    echo "Falha ao conectar";
    }
    ?>

    No exemplo acima eu uso no lugar dos DDNS assim eu sempre tenho o ip do cliente sem precisar usar serviços de externos.

  10. #10

    Question Re: Acesso Mikrotik via site php (Não consigo via API)

    Só dá falha ao tentar a conexão! Estou verificando o Firewall e LOG para tentar entender o que está acontecendo.

  11. #11

    Padrão Re: Acesso Mikrotik via site php (Não consigo via API)

    Citação Postado originalmente por clicsis Ver Post
    Bom dia.
    Desde já, agradeço o apoio dos amigos. Quanto aos testes realizados:

    Versão do RouterOS: RouterOS 4.13
    Execução do comando php "php -f teste.php", resultado:
    Código :
    new terminal>php -f teste.php
    bad command name php (line 1 column 1)
    As regras do Firewall, acredito até ter sido excessivo em relação as regras, mas é que logo após o funcionamento desse servidor, achei um elemento batendo direto com usuário e senha inválido e após descobrir que se tratava de tentativa de invasão pela ssh, alterei a porta do ssh, e protegi as portas do ssh e ftp, tanto as anteriores para evitar as batidas como as atuais para inibir os acesso, abaixo o as minha regras do firewall:
    Código :
    /ip firewall filter
    add action=drop chain=input comment="Bloqueia acesso E0 porta Proxy 3128 pela placa do Link" disabled=no dst-port=3128 in-interface=Publica_eth1 protocol=tcp
    add action=drop chain=forward comment="Bloqueia WAREZ" disabled=no p2p=warez
    add action=accept chain=input comment="Limitar todos os ping s em 50k" disabled=no limit=50/5s,2 protocol=icmp
    add action=drop chain=input comment="Bloquear pings excessivos" disabled=no protocol=icmp
    add action=drop chain=input comment="Bloqueia acesso a porta 22 pela placa do Link" disabled=no dst-port=22 in-interface=Publica_eth1 protocol=tcp
    add action=drop chain=input comment="barrar brute force para ssh" disabled=no dst-port=22 protocol=tcp src-address-list=ssh_blacklist
    add action=add-src-to-address-list address-list=ssh_blacklist address-list-timeout=1w3d chain=input comment="barrar brute force para ssh2" connection-state=new disabled=no dst-port=22 protocol=tcp src-address-list=ssh_stage3
    add action=add-src-to-address-list address-list=ssh_stage3 address-list-timeout=1m chain=input comment="barrar brute force para ssh3" connection-state=new disabled=no dst-port=22 protocol=tcp src-address-list=ssh_stage2
    add action=add-src-to-address-list address-list=ssh_stage2 address-list-timeout=1m chain=input comment="barrar brute force para ssh4" connection-state=new disabled=no dst-port=22 protocol=tcp src-address-list=ssh_stage1
    add action=add-src-to-address-list address-list=ssh_stage1 address-list-timeout=1m chain=input comment="barrar brute force para ssh5" connection-state=new disabled=no dst-port=22 protocol=tcp
    add action=drop chain=input comment="Barrar brute forca para ftp" disabled=no dst-port=21 protocol=tcp src-address-list=ftp_blacklist
    add action=accept chain=output comment="Barrar brute forca para ftp2" content="530 Login incorrect" disabled=no dst-limit=1/1m,9,dst-address/1m protocol=tcp
    add action=add-dst-to-address-list address-list=ftp_blacklist address-list-timeout=3h chain=output comment="Barrar brute forca para ftp3" content="530 Login incorrect" disabled=no protocol=tcp
    add action=drop chain=forward comment="DROP em conexes invlidas" connection-state=invalid disabled=no protocol=tcp
    add action=accept chain=forward comment="Permitir conexes j estabelecidas" connection-state=established disabled=no
    add action=accept chain=forward comment="Permitir conexes relacionadas" connection-state=related disabled=no
    add action=drop chain=tcp comment="Deny TFTP" disabled=no dst-port=69 protocol=tcp
    add action=drop chain=tcp comment="Deny RPC portmapper" disabled=no dst-port=111 protocol=tcp
    add action=drop chain=tcp comment="Deny RPC portmapper" disabled=no dst-port=135 protocol=tcp
    add action=drop chain=tcp comment="Deny NetBios (Compartilhamento na Rede Interna)TCP" disabled=no dst-port=137-139 protocol=tcp
    add action=drop chain=tcp comment="Deny cifs" disabled=no dst-port=445 protocol=tcp
    add action=drop chain=tcp comment="Deny NFS" disabled=no dst-port=2049 protocol=tcp
    add action=drop chain=tcp comment="Deny NetBus" disabled=no dst-port=12345-12346 protocol=tcp
    add action=drop chain=tcp comment="Deny NetBus" disabled=no dst-port=20034 protocol=tcp
    add action=drop chain=tcp comment="Deny BackOriffice" disabled=no dst-port=3133 protocol=tcp
    add action=drop chain=tcp comment="Deny DHCP" disabled=no dst-port=67-68 protocol=tcp
    add action=drop chain=udp comment="Deny TFTP" disabled=no dst-port=69 protocol=udp
    add action=drop chain=udp comment="Deny PRC portmapper" disabled=no dst-port=111 protocol=udp
    add action=drop chain=udp comment="Deny PRC portmapper" disabled=no dst-port=135 protocol=udp
    add action=drop chain=udp comment="Deny NetBios (Compartilhamento na Rede Interna)UDP" disabled=no dst-port=137-139 protocol=udp
    add action=drop chain=udp comment="Deny NFS" disabled=no dst-port=2049 protocol=udp
    add action=drop chain=udp comment="Deny BackOriffice" disabled=no dst-port=3133 protocol=udp
    add action=drop chain=input comment="Bloqueia acesso a porta 2200 pela placa do Link" disabled=no dst-port=2200 in-interface=Publica_eth1 protocol=tcp
    add action=drop chain=input comment="barrar brute force para ssh" disabled=no dst-port=2200 protocol=tcp src-address-list=ssh_blacklist
    add action=add-src-to-address-list address-list=ssh_blacklist address-list-timeout=1w3d chain=input comment="barrar brute force para ssh2" connection-state=new disabled=no dst-port=2200 protocol=tcp src-address-list=ssh_stage3
    add action=add-src-to-address-list address-list=ssh_stage3 address-list-timeout=1m chain=input comment="barrar brute force para ssh3" connection-state=new disabled=no dst-port=2200 protocol=tcp src-address-list=ssh_stage2
    add action=add-src-to-address-list address-list=ssh_stage2 address-list-timeout=1m chain=input comment="barrar brute force para ssh4" connection-state=new disabled=no dst-port=2200 protocol=tcp src-address-list=ssh_stage1
    add action=add-src-to-address-list address-list=ssh_stage1 address-list-timeout=1m chain=input comment="barrar brute force para ssh5" connection-state=new disabled=no dst-port=2200 protocol=tcp
    add action=drop chain=input comment="Barrar brute forca para ftp 2121" disabled=no dst-port=2121 protocol=tcp src-address-list=ftp_blacklist
    add action=accept chain=output comment="Barrar brute forca para ftp 2121" content="530 Login incorrect" disabled=no dst-limit=1/1m,9,dst-address/1m protocol=tcp
    add action=add-dst-to-address-list address-list=ftp_blacklist address-list-timeout=3h chain=output comment="Barrar brute forca para ftp 2121" content="530 Login incorrect" disabled=no protocol=tcp
    add action=drop chain=input comment="Bloquear portas 21 e 23" disabled=no dst-port=22-23 in-interface=Publica_eth1 protocol=tcp
    Aguardando idéias do que pode ser feito para funcionar esse acesso ao php.
    Novamente agradeço aos amigos.

    Observações:
    Já tentei o procedimento tanto hospedando os arquivo (routeros_api.class.php e teste.php) em servidor externo onde tenho um site hospedado e funcionando os recursos php assim como colocando-os na pasta "hotspot" do servidor Mikrotik.

    Em anexo o arquivo API que estou utilizando.
    routeros_api.class.zip
    HAHAHA MATEI

    Vc esta tentando executar isso no terminal do MK, api é pra ser usado externamente em um servidor que tenha php instalado, nada haver com a maquina com MK.

  12. #12

    Question Re: Acesso Mikrotik via site php (Não consigo via API)

    Boa tarde.
    Não executando em New Terminal, não!
    Não, não tentei no NEW Terminal do micro com Mikrotik não. Tentei colocando os dois arquivos "API e PHP" já configurados em um servidor com acesso php para teste e é apresentado a mensagem de "Falha na conexão". No micro com o servidor Mikrotik, apenas habilitei a API e deixei na porta padrão. O teste que fiz no micro foi o teste que um colega havia solicitado para executar no New Terminal, que embora achasse que não havia sentido já que não estou executando PHP no servidor Mikrotik, executei só por desencargo de consciência.

    Veja a tentativa de acesso em: hpp://www.nelnet.com.br/mikrotik/t1.php

  13. #13

    Padrão Re: Acesso Mikrotik via site php (Não consigo via API)

    Cara, parece que seu servidor linux esta com firewall habilitado, desative e faça um teste.

  14. #14

    Question Re: Acesso Mikrotik via site php (Não consigo via API)

    Boa noite. Não tenho o Linux propriamente dito rodando no micro, o servidor é Mikrotik RouterOS 4.13. Já fiz de tudo e ainda não obtive excito.

  15. #15

    Padrão Re: Acesso Mikrotik via site php (Não consigo via API)

    Citação Postado originalmente por clicsis Ver Post
    Boa noite. Não tenho o Linux propriamente dito rodando no micro, o servidor é Mikrotik RouterOS 4.13. Já fiz de tudo e ainda não obtive excito.
    Aí esta o problema. Você deve rodar a API em um Servidor Linux com suporte a PHP.

    E o nosso amigo int21 já havia falado sobre isso.

  16. #16

    Question Re: Acesso Mikrotik via site php (Não consigo via API)

    Quer dizer então que só funciona em Linux e estando na mesma rede em que está o servidor Mikrotik? Pois coloquei os arquivos PHP hospedados em um servidor onde mantenho site funcionando com recursos php e mysql sem problema. Preciso manter funcionando na mesma Rede o servidor Mikrotik que utilizo para gerenciar meus clientes e um segundo servidor com Apache + PHP para acesso à API?

  17. #17

    Padrão Re: Acesso Mikrotik via site php (Não consigo via API)

    Citação Postado originalmente por clicsis Ver Post
    Quer dizer então que só funciona em Linux e estando na mesma rede em que está o servidor Mikrotik? Pois coloquei os arquivos PHP hospedados em um servidor onde mantenho site funcionando com recursos php e mysql sem problema. Preciso manter funcionando na mesma Rede o servidor Mikrotik que utilizo para gerenciar meus clientes e um segundo servidor com Apache + PHP para acesso à API?
    Você precisar colocar a API em PHP rodando em um servidor que tenha suporte a PHP.

    Você disse anteriormente que estava rodando a API em PHP em um ROS

    Citação Postado originalmente por clicsis
    Boa noite. Não tenho o Linux propriamente dito rodando no micro, o servidor é Mikrotik RouterOS 4.13. Já fiz de tudo e ainda não obtive excito.
    Mas se você tem um linux, rodando com php + mysql, é justamente neste computador que você deve colocar a API para rodar. No RouterOS você apenas ativa o acesso através da API.

  18. #18

    Question Re: Acesso Mikrotik via site php (Não consigo via API)

    Desculpe-me, mas deve ter entendido errado. O que afirmei foi que o meu servidor local, que utilizo para gerenciar meus clientes é Mikrotik e que NÃO tenho rodando na mesma rede um servidor Linux com suporte php. Devido a essa fato, hospedei os arquivos de conexão com a API do Mikrotik em um servidor que já utilizo para hospedar alguns sites, o servidor em querstão não está na mesma rede de ip válido do meu servidor, mas como no PHP de conexão com a API eu menciono o IP Válido do servidor, então pensei não haver problema em relação em qual servidor estava hospedado os arquivos, contanto que o servidor em questão desse suporte ao funcionamento e execução de script php.

    Veja no link abaixo que eu já havia postado antes, que os arquivos "routeros_api.class.php" e o arquivo "t1.php" estão atualmente hospedados em provedor com acesso php, mas no etantato não conseguem se conectar com a API do servidor Mikrotik, embora o recurso esteja ativado em IP/SERVICES.

    Link onde estou testando:
    http://www.nelnet.com.br/mikrotik/t1.php

    Esse é o meu problema!

  19. #19
    Moderador Avatar de minelli
    Ingresso
    Aug 2006
    Localização
    Pres. Venceslau - SP | Pres. Prudente - SP
    Posts
    1.412
    Posts de Blog
    10

    Padrão Re: Acesso Mikrotik via site php (Não consigo via API)

    Caro colega de forum por favor execute os seguintes comandos no linux onde está rodando o seu API:
    É só copiar e colar no console:
    Código :
    echo "www-data ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
    apt-get update
    apt-get install php5-cli

    Após isso faça o teste novamente e nos reporte por favor.
    Esses comandos são para Debian e Ubuntu.

  20. #20

    Padrão Re: Acesso Mikrotik via site php (Não consigo via API)

    Boa noite. Obrigado pelo apoio, mas como eu já mencionado anteriormente, o meu script PHP está hospedado em um provedor que nada tem haver com o servidor mikrotik. O servidor que estou tentando acessar não é um servidor linux e sim um servidor em PC com sistema operacional Mikrotik, na versão 4.13 on x86.

    Já tentei de tudo e não consigo me conectar com o Mikrotik utilizando o API em PHP.

    Um exemplo do que preciso está no site Networks Solutions!, que utiliza a linguagem php para ir até o mikrotik e listar os usuários ativos, por exemplo. Para mim, basta que eu consiga estabalecer o contato, com o restante eu me viro por aqui...