Добар дан свима!
Овог пута сам одлучио да опишем ситуацију која изгледа није посебно описана на Интернету, иако има неких наговештаја о томе, али већина је била само дуго методично копање по коду и Вики самог Микротика.
Стварни задатак: имплементирати контролу неколико уређаја помоћу СМС-а, на примеру укључивања и искључивања портова.
Доступан:
- Секундарни рутер ЦРС317-1Г-16С+
- Микротик НЕТМЕТАЛ 5 приступна тачка
- ЛТЕ модем Р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
НЕТМЕТАЛ ће покренути одговарајућу скрипту, која ће заузврат извршити команду на ВЕБ серверу.
Брзина операција приликом пријема СМС-а је делић секунде. Ради стабилно.
Поред тога, постоји функционалност за слање СМС-а на телефоне од стране Заббик система за праћење и отварање резервне интернет везе у случају квара оптике. Можда је ово ван оквира овог чланка, али одмах ћу рећи да приликом слања СМС-а њихова дужина треба да стане у стандардну величину једне поруке, јер... Микротик их не дели на делове, а када стигне дуга порука, једноставно је не шаље, поред тога, потребно је да филтрирате знакове пренете у порукама, иначе СМС неће бити послат.
Извор: ввв.хабр.цом