function mtPublicIP($host) { // Instanciate MT API call $API = new routeros_api(); $API->debug = false; // Set a default value to return if connection to MT fails $ipaddr = "0.0.0.0"; // Query Mikrotik if ($API->connect($host, 'admin', 'DataCom')) { $API->write('/ip/dhcp-client/print'); $ARRAY = $API->read(); $API->disconnect(); $ipaddr = substr($ARRAY['0']['address'], 0, -3); if ($ipaddr == "") { $API->connect($host, 'admin', 'DataCom'); $API->write('/ip/address/print'); $ARRAY = $API->read(); $API->disconnect(); foreach ($ARRAY as $addr) { if ($addr['interface'] == "ether1") { $ipaddr = substr($addr['address'], 0, -3); } } } } return $ipaddr; }
<?php ob_start(); session_start(); require 'routeros_api.class.php'; ?> <?php //Conectamos al CAPsMAN $IP = $_SESSION['ip']; $user = $_SESSION['user']; $password = $_SESSION['password']; $interfaz = $_SESSION['interfaz']; $API = new routeros_api(); if ($API->connect($IP, $user, $password)) { //Creamos dos array para almacenar los datos de trafico $rows = array(); $rows2 = array(); //Enviamos el comando de monitor para capturar el tráfico una vez $API->write("/interface/monitor-traffic", false); $API->write("=interface=" . $interfaz, false); $API->write("=once=", true); $READ = $API->read(false); $ARRAY = $API->parse_response($READ); //Si hay datos if (count($ARRAY) > 0) { //En rx almacenamos el trafico leido y en tx el de transmision $rx = number_format($ARRAY[0]["rx-bits-per-second"] / 1024, 1); $tx = number_format($ARRAY[0]["tx-bits-per-second"] / 1024, 1); //En el array establecemos un nombre y unos datos
<?php session_start(); if ($_SESSION['Authenticated'] != "1") { header('Location: ../index'); } include "../../../includes/variables.php"; require '../functions/funciones.php'; include "../action/security.php"; include "../layouts/menu.php"; require '../apimikrotik.php'; $API = new routeros_api(); $API->debug = false; ?> <!DOCTYPE html> <html lang="es"> <head> <!-- META SECTION --> <meta name="description" content="SISTEMA DE GESTION - WIFICOLOMBIA"> <title>Sistema de Gestión <?php echo $Identidad_Mikrotik; ?> </title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="author" content="<?php echo $Autor; ?> ">
<?php // Test of getting ping from tik // Load Mikrotik API Class require '/usr/local/gts/routeros_api.class.php'; $host = "172.17.10.60"; // Convert results to integer MS function convertms($resulttime) { $result1 = explode(":", $resulttime); $result2 = explode(".", $result1[2]); $msval = $result1[0] * 60 * 60 * 1000 + $result1[1] * 60 * 1000 + $result2[0] * 1000 + $result2[1]; return $msval; } // Instanciate MT API call $API = new routeros_api(); $API->debug = false; // Query Mikrotik if ($API->connect($host, 'admin', 'DataCom')) { $API->write('/interface/sstp-client/print'); $TARGET = $API->read(); $tunuser = $TARGET[0]['user']; $pingtargarr = explode(':', $TARGET[0]['connect-to']); $pingtarg = $pingtargarr[0]; echo "Ping Target: " . $pingtarg . "\n"; $API->write('/ping', false); $API->write('=address=' . $pingtarg, false); $API->write('=count=10'); $ARRAY = $API->read(); $API->disconnect(); }
$finalPort = str_replace(',,', ",", $finalPort); //Delete the last comma if ($finalPort[strlen($finalPort) - 1] == ",") { $finalPort = rtrim($finalPort, ','); } //DELETE VLAN if last PORT if ($previousPort === $actualPort) { $API = new routeros_api(); if ($API->connect($IP, $user, $password)) { $API->write("/interface/ethernet/switch/egress-vlan-tag/remove", false); $API->write("=.id=" . $cont2); $Ports = $API->read(); $API->disconnect(); } } else { $API = new routeros_api(); if ($API->connect($IP, $user, $password)) { $API->comm("/interface/ethernet/switch/egress-vlan-tag/set", array(".id" => $cont2, "tagged-ports" => $finalPort)); $API->disconnect(); } } } } } ?> <!--Boton cerrar sesión--> <?php if ($_GET['logOut'] == 'yes') { session_destroy();
$API = new routeros_api(); $IP = $_SESSION['ip']; $user = $_SESSION['user']; $password = $_SESSION['password']; if ($API->connect($IP, $user, $password)) { $API->write("/interface/ethernet/set", false); $API->write("=disabled=no", false); $API->write("=.id=" . $Ports[$cont]['name']); $Ports = $API->read(); $API->disconnect(); } } } for ($cont = 0; $cont < $numPorts; $cont++) { if (isset($_POST['disablePort' . $cont])) { $API = new routeros_api(); $IP = $_SESSION['ip']; $user = $_SESSION['user']; $password = $_SESSION['password']; if ($API->connect($IP, $user, $password)) { $API->write("/interface/ethernet/set", false); $API->write("=disabled=yes", false); $API->write("=.id=" . $Ports[$cont]['name']); $Ports = $API->read(); $API->disconnect(); } } } ?> <!--Boton cerrar sesión-->
</table> </td> <td> </div> </div> </div> </div> <?php for ($cont = 0; $cont < $numPorts; $cont++) { if (isset($_POST['formMaster' . $cont])) { $seleccion = $_POST['formMaster' . $cont]; $API = new routeros_api(); $IP = $_SESSION['ip']; $user = $_SESSION['user']; $password = $_SESSION['password']; if ($API->connect($IP, $user, $password)) { $API->write("/interface/ethernet/set", false); $API->write("=master-port=" . $seleccion, false); $API->write("=.id=" . $Ports[$cont]['name']); $ARRAY = $API->read(); $API->disconnect(); } } } ?> <!--Boton cerrar sesión-->
<?php require '/usr/local/gts/routeros_api.class.php'; $API = new routeros_api(); $API->debug = false; //Query Botruc-41 if ($API->connect('216.226.76.91', 'admin', 'P@55w0rd!')) { $API->write('/system/gps/monitor'); $API->write('=once='); $ARRAY = $API->read(); $API->write('/cancel'); $cleanlat = explode(" ", $ARRAY[0]['latitude']); $cleanlong = explode(" ", $ARRAY[0]['longitude']); $botruc41['latitude'] = $cleanlat[1] + trim($cleanlat[2], "'") / 60 + trim(trim($cleanlat[3], "'"), "'") / 3600; $botruc41['longitude'] = 0 - $cleanlong[1] - trim($cleanlong[2], "'") / 60 - trim(trim($cleanlong[3], "'"), "'") / 3600; $API->disconnect(); } //Query Botruc-40 if ($API->connect('216.226.75.139', 'admin', 'P@55w0rd!')) { $API->write('/system/gps/monitor'); $API->write('=once='); $ARRAY = $API->read(); $API->write('/cancel'); $cleanlat = explode(" ", $ARRAY[0]['latitude']); $cleanlong = explode(" ", $ARRAY[0]['longitude']); $botruc40['latitude'] = $cleanlat[1] + trim($cleanlat[2], "'") / 60 + trim(trim($cleanlat[3], "'"), "'") / 3600; $botruc40['longitude'] = 0 - $cleanlong[1] - trim($cleanlong[2], "'") / 60 - trim(trim($cleanlong[3], "'"), "'") / 3600; $API->disconnect(); } //Build device insert query $insertquery[0] = "INSERT INTO Device (accountID,deviceID,groupID,equipmentType,vehicleID,uniqueID,displayName,description,isActive,lastUpdateTime,lastInputState) VALUES ('gtg','Botruc40','lmbotruc','netmodem','Botruc40','Botruc40','Botruc40','Botruc40',1," . time() . ",40000) ON DUPLICATE KEY UPDATE groupID=VALUES(groupID),lastUpdateTime=VALUES(lastUpdateTime),displayName=VALUES(displayName),description=VALUES(description);";
</div> <?php $permitDeny = $_POST['permitDeny']; $sourceVlan = $_POST['sourceVlan']; $destinationVlan = $_POST['destinationVlan']; if (isset($_POST['submitButton'])) { $API = new routeros_api(); if ($API->connect($IP, $user, $password)) { $API->comm("/ip/firewall/filter/add", array("chain" => "forward", "action" => $permitDeny, "in-interface" => $sourceVlan, "out-interface" => $destinationVlan)); $API->disconnect(); } } for ($cont = 0; $cont < $numFirewall; $cont++) { if (isset($_POST['disableRule' . $cont])) { $API = new routeros_api(); $IP = $_SESSION['ip']; $user = $_SESSION['user']; $password = $_SESSION['password']; if ($API->connect($IP, $user, $password)) { $API->write("/ip/firewall/filter/remove", false); $API->write("=.id=" . $cont); $Ports = $API->read(); $API->disconnect(); } } } ?> <!--Boton cerrar sesión-->
<td> <input name="password" type="password" id="password" placeholder="******"></br> </td> </tr> <tr> <td colspan="2"> <div id="submitButton"> <input type="submit" name="send" value="SUBMIT" class="button" /></br> </div> </td> </tr> </table> </form> </div> <?php $API = new routeros_api(); $IP = $_POST['ip']; $user = $_POST['user']; $password = $_POST['password']; $notLogin = $_GET["logOut"]; $_SESSION['ip'] = $IP; $_SESSION['user'] = $user; $_SESSION['password'] = $password; $buttonClick = isset($_POST['send']); if ($buttonClick) { if ($API->connect($IP, $user, $password)) { header('Location:Status.php'); } else { echo "<div class='error'>Error: Login incorrecto.</div>"; } }
<?php include "../../includes/variables.php"; include "layouts/menu.php"; require 'apimikrotik.php'; $API = new routeros_api(); $API->debug = false; ?> <!doctype html> <html lang="es"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="description" content="SISTEMA DE GESTION - WIFICOLOMBIA"> <title>Sistema de Gestión <?php echo $Identidad_Mikrotik; ?> </title> <link rel="stylesheet" href="http://yui.yahooapis.com/pure/0.6.0/pure-min.css"> <!--[if lte IE 8]> <link rel="stylesheet" href="css/layouts/side-menu-old-ie.css"> <![endif]--> <!--[if gt IE 8]><!--> <link rel="stylesheet" href="css/layouts/side-menu.css"> <!--<![endif]--> </head> <body> <div id="layout"> <?php if ($API->connect(IP_MIKROTIK, USER, PASS)) { ?>
<?php session_start(); if ($_SESSION['Authenticated'] != "1") { header('Location: index'); } sleep(1); require "../../../includes/variables.php"; require '../functions/funciones.php'; include "../action/security.php"; require '../apimikrotik.php'; $API = new routeros_api(); $API->debug = false; function searchString($texto, $cadena) { if (preg_match("/" . $cadena . "/", $texto)) { return true; } else { return false; } } if ($_POST['criterio'] == "") { echo "Ingrese un criterio de busqueda"; } else { $message = $_POST['criterio']; if ($API->connect(IP_MIKROTIK, USER, PASS)) { $API->write("/log/getall"); $API->write('/cancel', false); $READ = $API->read(false); $ARRAY = $API->parse_response($READ); //print_r($ARRAY);
<?php ob_start(); session_start(); require 'routeros_api.class.php'; ?> <script src="//code.jquery.com/jquery-1.11.2.min.js"></script> <?php $API = new routeros_api(); $IP = $_SESSION['ip']; $user = $_SESSION['user']; $password = $_SESSION['password']; //Comprobamos conexion API if ($API->connect($IP, $user, $password)) { //Modelo $modeloCom = $API->comm("/system/routerboard/print"); $modelo = $modeloCom[0]['model']; //Modelo $cpuInfo = $API->comm("/system/resource/print"); } echo "<div id='model'><p class='infoBold'>Model: </p>"; echo "<p>" . $modelo . "</p>\n\t\t\t</div></br>"; echo "<div id='cpu'>\n\t\t\t\t\t<div id='cpu2'><p class='infoBold'>CPU: </p></div>\n\t\t\t\t\t<div class='progress' style='margin-bottom: 0px;'>\n \t\t\t\t\t <div class='progress-bar' role='progressbar' aria-valuenow='{$cpuInfo['0']}['cpu-load']' aria-valuemin='0' aria-valuemax='100' style='min-width: 2em; width:" . $cpuInfo[0]['cpu-load'] . "%'>" . $cpuInfo[0]['cpu-load'] . "%\n \t\t\t\t\t </div>\n\t\t\t\t</div>\n\t\t\t\t</div>"; echo "<div id='uptime'><p class='infoBold'>Uptime: </p><p>" . $cpuInfo[0]['uptime'] . "</p></div>";
<?php session_start(); if ($_SESSION['Authenticated'] != "1") { header('Location: index'); } require "../../includes/variables.php"; require 'functions/funciones.php'; include "action/security.php"; include "layouts/menu.php"; require 'apimikrotik.php'; $API = new routeros_api(); $API->debug = false; /*session_start(); if(empty($_SESSION['login_user'])) { header('Location: index'); }*/ ?> <!DOCTYPE html> <html lang="es"> <head> <!-- META SECTION --> <meta name="description" content="SISTEMA DE GESTION - WIFICOLOMBIA"> <title>Sistema de Gestión <?php echo $Identidad_Mikrotik; ?> </title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<?php session_start(); if ($_SESSION['Authenticated'] != "1") { header('Location: index'); } require "../../../includes/variables.php"; require '../functions/funciones.php'; include "../action/security.php"; require '../apimikrotik.php'; $API = new routeros_api(); $API->debug = false; if ($API->connect(IP_MIKROTIK, USER, PASS)) { //Creacion de Queues Simples $name = $_POST["name"]; $identificacion = $_POST["no_id"]; $user = $_POST["user"]; $target = $_POST["target"]; $download = trim($_POST["Download"], 'K'); $prioridad = $_POST["Segmento"]; if ($name == "") { echo "Nombre no puede estar vacío"; } elseif ($identificacion == "") { echo "Debe ingresar un número de documento"; } elseif (!filter_var($target, FILTER_VALIDATE_IP)) { echo "Debe ingresar una IP Válida"; } else { if ($prioridad == "1/1") { $uploadCalculado = 1; } elseif ($prioridad == "4/4") { $uploadCalculado = 0.75;
<?php ob_start(); session_start(); require 'routeros_api.class.php'; ?> <?php $API = new routeros_api(); $IP = $_SESSION['ip']; $user = $_SESSION['user']; $password = $_SESSION['password']; //Comprobamos conexion API if ($API->connect($IP, $user, $password)) { //Comprobamos interfaces $Ports = $API->comm("/interface/ethernet/print"); $numPorts = count($Ports); //Modelo $modeloCom = $API->comm("/system/routerboard/print"); $modelo = $modeloCom[0]['model']; //Estado Link $valoresPar = json_encode(range(0, $numPorts - 1)); $valores = substr($valoresPar, 1, -1); $API->write("/interface/ethernet/monitor", false); $API->write("=numbers=" . $valores, false); $API->write("=once=", true); $READ = $API->read(false); $statusPorts = $API->parse_response($READ); $API->disconnect(); } for ($cont = 0; $cont < $numPorts; $cont++) {
if (!empty($CONFIG['monit']['smtp_user'])) { $CONFIG['mail']['smtp_username'] = $CONFIG['monit']['smtp_user']; } if (!empty($CONFIG['monit']['smtp_pass'])) { $CONFIG['mail']['smtp_password'] = $CONFIG['monit']['smtp_pass']; } if (!empty($CONFIG['monit']['smtp_auth'])) { $CONFIG['mail']['smtp_auth_type'] = $CONFIG['monit']['smtp_auth']; } $perlscript = get_conf('monit.test_script_dir', '/usr/local/sbin/lms-monitoring.pl'); $AUTH = NULL; $LMS = new LMS($DB, $AUTH, $CONFIG); $LMS->ui_lang = $_ui_language; $LMS->lang = $_language; $GG = new rfGG(GG_VER_77); $MT = new routeros_api(); $currenttime = time(); $lasttesttime = $DB->GetOne('SELECT MAX(cdate) FROM monittime LIMIT 1;'); if ($tmp = $DB->GetCol('SELECT nodeid FROM monitwarn WHERE backtime=?', array(0))) { $noping = implode(',', $tmp); } else { $noping = NULL; } if ($tmp = $DB->GetCol('SELECT ownid FROM monitwarn WHERE backtime = ?', array(0))) { $nopingown = implode(',', $tmp); } else { $nopingown = NULL; } if (!$quiet) { printf("\n\n---------- TEST URZADZEN ZE STATUSEM DZIALAJACYCH ----------\n\n"); }
<?php session_start(); if ($_SESSION['Authenticated'] != "1") { header('Location: index'); } require "../../../includes/variables.php"; require '../functions/funciones.php'; include "../action/security.php"; include "../layouts/menu.php"; require '../apimikrotik.php'; $API = new routeros_api(); $API->debug = false; ?> <!DOCTYPE html> <html lang="es"> <head> <!-- META SECTION --> <meta name="description" content="SISTEMA DE GESTION - WIFICOLOMBIA"> <title>Sistema de Gestión <?php echo $Identidad_Mikrotik; ?> </title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="author" content="<?php echo $Autor; ?> ">
<?php session_start(); if ($_SESSION['Authenticated'] != "1") { header('Location: index'); } sleep(1); require "../../../includes/variables.php"; require '../functions/funciones.php'; include "../action/security.php"; include "../layouts/menu.php"; require '../apimikrotik.php'; $API = new routeros_api(); $API->debug = false; if ($API->connect(IP_MIKROTIK, USER, PASS)) { //Creacion Usuarios PPPoE Usermanager $customer = "admin"; $name = $_POST['name']; $phone = $_POST['no_id']; $user = strtolower($_POST['user']); $password = $_POST['password']; $plan = $_POST['plan']; $perfil = "5 minutos"; $comentarios = $_POST['comentarios']; $fecha_activacion = date('Y-m-d'); if (isset($user) || isset($password) || isset($plan)) { //valido nombre usuario $API->write("/tool/user-manager/user/getall", false); $API->write('?name=' . $user, true); $READ = $API->read(false); $ARRAY = $API->parse_response($READ);
<?php $usuario = "Usuario"; $rol = "Comercial"; include "../../includes/variables.php"; include "layouts/menu.php"; require 'apimikrotik.php'; require 'functions/funciones.php'; $API = new routeros_api(); $API->debug = false; ?> <!doctype html> <html lang="es" ng-app> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="description" content="SISTEMA DE GESTION - WIFICOLOMBIA"> <title>Sistema de Gestión <?php echo $Identidad_Mikrotik; ?> </title> <link rel="stylesheet" href="http://yui.yahooapis.com/pure/0.6.0/pure-min.css"> <!--[if lte IE 8]> <link rel="stylesheet" href="css/layouts/side-menu-old-ie.css"> <![endif]--> <!--[if gt IE 8]><!--> <link rel="stylesheet" href="css/layouts/side-menu.css"> <!--<![endif]--> </head> <body> <div id="layout">
<?php // Email Alerts Function function email_alert($message, $subject) { system("echo '{$message}' | mail -s '{$subject}' trouble@getdatacom.com -- -f alerts@mydatacomgts.com"); } // Read old states from file $oldstate = parse_ini_file("/root/oldstatefile.txt"); // Get current states from Mikrotik require '/usr/local/gts/routeros_api.class.php'; $API = new routeros_api(); $API->debug = false; // Query Mikrotik if ($API->connect('69.1.163.102', 'admin', 'd@t@c0m#')) { $API->write('/ppp/active/print'); $ARRAY = $API->read(); $API->disconnect(); foreach ($ARRAY as $item) { $currentstate[$item['name']] = $item['caller-id']; } $savefile = ""; foreach ($currentstate as $name => $ip) { $savefile .= $name . "=" . $ip . "\n"; } file_put_contents("/root/oldstatefile.txt", $savefile); } // Compare old to new arrays $newchange = array_diff_assoc($currentstate, $oldstate); $oldchange = array_diff_assoc($oldstate, $currentstate); // Figure out changed IPs and Tunnel Ups
<?php ob_start(); session_start(); require 'routeros_api.class.php'; ?> <?php $API = new routeros_api(); $IP = $_SESSION['ip']; $user = $_SESSION['user']; $password = $_SESSION['password']; //Comprobamos conexion API if ($API->connect($IP, $user, $password)) { //Comprobamos interfaces $Ports = $API->comm("/interface/ethernet/print"); $numPorts = count($Ports); //Modelo $modeloCom = $API->comm("/system/routerboard/print"); $modelo = $modeloCom[0]['model']; //Estado Link $valoresPar = json_encode(range(0, $numPorts - 1)); $valores = substr($valoresPar, 1, -1); //Switch $switches = $API->comm("/interface/ethernet/switch/print"); $numSwitches = count($switches); //Ports Switch $portsSwitch = $API->comm("/interface/ethernet/switch/port/print"); $numPortsSwitch = count($portsSwitch); //puerto Trunk CR $estadoTrunkCR = $API->comm("/interface/ethernet/switch/egress-vlan-tag/print");
<?php ob_start(); session_start(); require 'routeros_api.class.php'; ?> <?php $API = new routeros_api(); $IP = $_SESSION['ip']; $user = $_SESSION['user']; $password = $_SESSION['password']; //Comprobamos conexion API if ($API->connect($IP, $user, $password)) { //Comprobamos interfaces $Ports = $API->comm("/interface/ethernet/print"); $numPorts = count($Ports); //Todas Interfaces $Interfaces = $API->comm("/interface/print"); $numInterfaces = count($Interfaces); //Modelo $modeloCom = $API->comm("/system/routerboard/print"); $modelo = $modeloCom[0]['model']; //Estado Link $valoresPar = json_encode(range(0, $numPorts - 1)); $valores = substr($valoresPar, 1, -1); //Switch $switches = $API->comm("/interface/ethernet/switch/print"); $numSwitches = count($switches); //Interfaz VLAN $interfazVlan = $API->comm('/interface/vlan/print');