UptimerRobot — Мониторим Mikrotik


Настало время настроить мониторинг Микротиков (и сервисов, через него проброшенных) извне. Мониторим с помощью UptimeRobot, просто потому что привыкли к нему — работает вроде нормально, есть не просит, оповещения всякие есть…

А т.к. пинги извне у нас закрыты, доступ к самим микротикам (и к проброшенным портам) организован по белому списку, серверы этого сервиса нужно в этот список прописать. Перечень серверов размещен тут, их довольно много, и чтоб не запивать его вручную, доверим эту работу скрипту. Ну как, скрипту… 2 строчки кода

#!/bin/sh

saveTo=/mnt/big/exchange/UptimeRobot.rsc
now=$(date);
echo "# Generated with help of Joshaven Potter on $now" > $saveTo
echo "/ip firewall address-list" >> $saveTo
wget -q -O - https://uptimerobot.com/inc/files/ips/hostnames.txt | awk -F '\r' '{ print "add list=WhiteList address="$1" comment=UptimeRobot";}' >> $saveTo

Сохраняем, назначаем права доступа 755, запускаем. Результат — готовый скрипт UptimeRobot.rsc в указанной расшаренной папочке

/ip firewall address-list
add list=WhiteList address=mail2.uptimerobot.com comment=UptimeRobot
add list=WhiteList address=engine5.uptimerobot.com comment=UptimeRobot
add list=WhiteList address=engine6.uptimerobot.com comment=UptimeRobot
add list=WhiteList address=engine7.uptimerobot.com comment=UptimeRobot
add list=WhiteList address=engine8.uptimerobot.com comment=UptimeRobot
add list=WhiteList address=engine9.uptimerobot.com comment=UptimeRobot
add list=WhiteList address=engine10.uptimerobot.com comment=UptimeRobot

и еще 50 строк

Теперь заплоадим его на наши Микротики.

И запустим.

/import file-name=UptimeRobot.rsc;

Script file loaded and executed successfully

Заглянем в Firewall/AddressList и убедимся, что список пополнился новыми адресами

Затем заглянем в Firewall/FilterRules и убедимся, что трафик с белого списка WhiteList разрешен

Наконец, заглянем в UptimeRobot и возрадуемся