Mikrotik. Bi karanîna servera WEB-ê bi SMS-ê kontrol bikin

Roj baş li her kesê!

Vê carê min biryar da ku ez rewşek diyar bikim ku bi taybetî li ser Înternetê nayê ravekirin, her çend di derheqê wê de hin hûrgulî hene, lê piraniya wê tenê kolandina rêbazek dirêj a kod û wiki-ya Mikrotik bixwe bû.

Karê rastîn: pêkanîna kontrolkirina çend cîhazên bi karanîna SMS-ê, bi mînaka vekirina portan û jêbirin.

Berdeste:

  1. Routera duyemîn CRS317-1G-16S+
  2. Mikrotik NETMETAL 5 xala gihîştinê
  3. modem LTE R11e-LTE

Ka em bi vê rastiyê dest pê bikin ku xala gihîştina Netmetal 5 ya ecêb li ser pêvekek SIM-kartê ya ziravkirî û portek ji bo sazkirina modemek LTE heye. Ji ber vê yekê, ji bo vê xalê, bi bingehîn modema çêtirîn ji ya ku ji hêla pergala xebitandina xalê bixwe, ango R11e-LTE ve hatî peyda kirin û piştgirî kirin, hate kirîn. Xala gihîştinê hate hilweşandin, her tişt li cîhê xwe hate saz kirin (her çend hûn hewce ne ku zanibin ku SIM karta di binê modemê de ye û ne gengaz e ku meriv wê bêyî rakirina panela sereke bigire), ji ber vê yekê kartê SIM-ê kontrol bikin. Wekî din hûn ê neçar bibin ku çend caran xala gihîştinê ji hev derxînin.

Dûv re, me du qul di kêzikê de kolandin, 2 pigtail saz kirin û dawiya modemê ewle kir. Mixabin, tu wêneyên pêvajoyê xilas nebûn. Ji hêla din ve, antên gerdûnî yên bi bingehek magnetîkî bi pigtailan ve girêdayî bûn.

Pêngavên sazkirinê yên sereke li ser Înternetê pir baş têne vegotin, ji bilî kêmasiyên danûstendinê yên piçûk. Mînakî, dema ku 5 ji wan digihîjin, modem digihîje peyamên SMS-ê disekine û ew di Inboxê de disekinin; paqijkirina peyaman û ji nû ve destpêkirina modemê her gav pirsgirêkê çareser nake. Lê di guhertoya 6.44.1 de resepsiyonê aramtir dixebite. Inbox 4 sms-ên paşîn nîşan dide, yên mayî bixweber têne jêbirin û jiyanê asteng nakin.

Armanca sereke ya azmûnê ew e ku navbeynkariyê li ser du rêwerên li ser heman torê fîzîkî vekin û vekin. Zehmetiya sereke ev bû ku Mikrotik bi SNMP re rêveberiyê piştgirî nake, lê tenê destûrê dide nirxên xwendinê. Ji ber vê yekê, ez neçar bûm ku di rêyek din de, ango Mikrotik API, bikolim.

Li ser ka meriv çawa wê kontrol bike belgeyek zelal tune, ji ber vê yekê ez neçar bûm ku ezmûn bikim û ev rêwerz ji bo hewildanên pêşerojê hate çêkirin.

Ji bo birêvebirina gelek cîhazan, hûn ê hewceyê serverek WEB-ya gihîştî û xebitîn a li ser tora herêmî; ew ê hewce bike ku bi karanîna emrên Mikrotik were kontrol kirin.

1. Li ser Netmetal 5 hûn hewce ne ku çend nivîsan çêbikin ku bi rêzê ve wê vekin û vekin

system script
add dont-require-permissions=no name=disableiface owner=admin policy=
    ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source=
    "/tool fetch http://WEB_SERVER_IP/di.php "
add dont-require-permissions=no name=enableiface owner=admin policy=
    ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source=
    "/tool fetch http://WEB_SERVER_IP/en.php "

2. Li ser servera malperê 2 nivîsan biafirînin (bê guman, di vê rewşê de divê php li ser pergalê were saz kirin):

<?php
# file en.php enable interfaces    
require('/usr/lib/zabbix/alertscripts/routeros_api.class.php');

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

if ($API->connect('IP управляемого Mikrotik', 'логин администратора', 'пароль администратора')) {
    $API->comm("/interface/ethernet/enable", array(
    "numbers"=>"sfp-sfpplus16",));
}
   $API->disconnect();
?>

<?php
#file di.php disable interfaces
    require('/usr/lib/zabbix/alertscripts/routeros_api.class.php');

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

if ($API->connect('IP управляемого Mikrotik', 'логин администратор', 'пароль администратора')) {
    $API->comm("/interface/ethernet/disable", array(
    "numbers"=>"sfp-sfpplus16",));
}
   $API->disconnect();
?>

3. routeros_api.class.php ji foruma Mikrotik dakêşin û di pelrêçeka gihîştî ya serverê de bi cîh bikin.

Li şûna sfp-sfpplus16 hûn hewce ne ku navê navberê diyar bikin ku were neçalakkirin/çalakkirin.

Naha, dema ku di formê de ji hejmarekê re peyamek dişîne

:cmd СЕКРЕТНЫЙКОД script enableiface
или
:cmd СЕКРЕТНЫЙКОД script disableiface 

NETMETAL dê skrîpta têkildar bide destpêkirin, ku di encamê de dê fermanê li ser servera WEB-ê bicîh bike.

Leza operasyonan dema wergirtina SMS perçeyek çirkeyê ye. Bi îstîqrar dixebite.

Wekî din, fonksiyonek ji bo şandina SMS-ê ji têlefonan re ji hêla pergala çavdêriya Zabbix ve û vekirina pêwendiyek Înternetê ya hilanînê heye heke optîk têk neçe. Dibe ku ev li derveyî çarçoweya vê gotarê be, lê ez ê tavilê bibêjim ku dema şandina SMS-ê, dirêjahiya wan divê di pîvana standard a yek peyamê de cih bigire, ji ber ... Mikrotik wan li beşan dabeş nake, û dema ku peyamek dirêj tê, ew bi hêsanî wê naşîne, di heman demê de, hûn hewce ne ku karakterên ku di peyaman de hatine veguheztin fîlter bikin, wekî din SMS nayê şandin.

Source: www.habr.com

Add a comment