Микротик. Контролишите путем СМС-а користећи ВЕБ сервер

Добар дан свима!

Овог пута сам одлучио да опишем ситуацију која изгледа није посебно описана на Интернету, иако има неких наговештаја о томе, али већина је била само дуго методично копање по коду и Вики самог Микротика.

Стварни задатак: имплементирати контролу неколико уређаја помоћу СМС-а, на примеру укључивања и искључивања портова.

Доступан:

  1. Секундарни рутер ЦРС317-1Г-16С+
  2. Микротик НЕТМЕТАЛ 5 приступна тачка
  3. ЛТЕ модем Р11е-ЛТЕ

Почнимо са чињеницом да дивна Нетметал 5 приступна тачка има на плочи залемљени конектор СИМ картице и порт за инсталирање ЛТЕ модема. Дакле, за ову тачку је у суштини најбољи модем купљен од онога што је било доступно и подржано од стране самог оперативног система тачке, односно Р11е-ЛТЕ. Приступна тачка је растављена, све је постављено на своје место (мада морате знати да се СИМ картица налази испод модема и да је није могуће добити без уклањања главне плоче), па проверите СИМ картицу да ли је функционална, у супротном ћете морати неколико пута да раставите приступну тачку.

Затим смо избушили неколико рупа у кућишту, поставили 2 пигтаила и причврстили крајеве за модем. Нажалост, ниједна фотографија процеса није сачувана. С друге стране, универзалне антене са магнетном базом биле су причвршћене за пигтаилс.

Главни кораци подешавања су прилично добро описани на Интернету, осим мањих недостатака у интеракцији. На пример, модем престаје да прима СМС поруке када их стигне 5 и оне закаче у пријемном сандучету; брисање порука и поновно покретање модема не решавају увек проблем. Али у верзији 6.44.1 пријем ради стабилније. Инбок приказује последња 4 смс, остали се аутоматски бришу и не ометају живот.

Главни циљ експеримента је искључивање и укључивање интерфејса на два рутера на истој физичкој мрежи. Главна потешкоћа је била у томе што Микротик не подржава управљање преко СНМП-а, већ дозвољава само читање вредности. Стога сам морао да копам у другом правцу, наиме Микротик АПИ.

Не постоји јасна документација како то контролисати, па сам морао да експериментишем и ово упутство је направљено за будуће покушаје.

Да бисте управљали више уређаја, биће вам потребан доступан и функционалан ВЕБ сервер на локалној мрежи; мораће да се контролише помоћу Микротик команди.

1. На Нетметал 5 морате направити неколико скрипти да бисте га укључили и искључили, респективно

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. Креирајте 2 скрипте на веб серверу (наравно, пхп мора бити инсталиран на систему у овом случају):

<?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. Преузмите роутерос_апи.цласс.пхп са Микротик форума и поставите га у доступан директоријум на серверу.

Уместо сфп-сфпплус16 потребно је да наведете име интерфејса који ће бити онемогућен/омогућен.

Сада, када шаљете поруку на број у обрасцу

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

НЕТМЕТАЛ ће покренути одговарајућу скрипту, која ће заузврат извршити команду на ВЕБ серверу.

Брзина операција приликом пријема СМС-а је делић секунде. Ради стабилно.

Поред тога, постоји функционалност за слање СМС-а на телефоне од стране Заббик система за праћење и отварање резервне интернет везе у случају квара оптике. Можда је ово ван оквира овог чланка, али одмах ћу рећи да приликом слања СМС-а њихова дужина треба да стане у стандардну величину једне поруке, јер... Микротик их не дели на делове, а када стигне дуга порука, једноставно је не шаље, поред тога, потребно је да филтрирате знакове пренете у порукама, иначе СМС неће бити послат.

Извор: ввв.хабр.цом

Додај коментар