mikrotik скрипт отключения интерфейса
MikroTik: Как отключить (включить) интерфейс по расписанию
Разберем несколько способов отключить (включить) сетевой интерфейс MikroTik или отключить интернет, по расписанию: правило Firewall, NAT, планировщик заданий MikroTik или скрипт.
Содержание
Firewall правило: как отключить (включить) интерфейс по расписанию
Чтобы отключить или включить интерфейсы по расписанию, можно использовать настройку правила межсетевого экрана (Firewall) на вкладке Extra.
⚠️ Для работы правила, интерфейс должен являться master интерфейсом.
Например: ограничим работу WiFi интерфейса (wlan2-5GHz) в нерабочее время, с 19:00 до 07:00.
Если вы желаете запретить работу интерфейса в субботу и воскресенье (полный день), установите значения времени:
NAT: как разрешить (запретить) интернет по расписанию
Вы можете запрещать или разрешать доступ к интернету по времени, используя настройку правила masquerade (NAT).
Отредактируйте правило masquerade, на вкладке Extra:
Планировщик: выключение (включение) интерфейса по времени
Выключите WiFi интерфейс wlan2-5GHz после 20:00:00, используя Планировщик MikroTik:
или выполните в терминале:
Включите WiFi интерфейс wlan2-5GHz с 08:00:00, используя Планировщик MikroTik:
или выполните в терминале:
MikroTik скрипт: как отключить (включить) интерфейс
Выключать или включать интерфейс можно так же с помощью скрипта MikroTik и Планировщика заданий.
Создать скрипт
Укажите в скрипте следующие переменные:
Если скрипт не работает или работает некорректно, раскомментируйте строки :log (удалите символ # перед началом строки) и проверьте лог MikroTik при запуске скрипта.
Добавить скрипт в Планировщик
Для запуска скрипта необходимы разрешения: read, write, test, policy.
🟢 Как отключить или включить интерфейс MikroTik по расписанию или разрешить (запретить) доступ к интернету по времени, обсуждалось в этой статье. Надеюсь вы выбрали подходящий способ управления состоянием интерфейса. Однако, если вы столкнетесь с каким-то проблемами при настройке, не стесняйтесь написать в комментариях. Я постараюсь помочь.
Скрипт проверен: hAP ac lite [RouterBOARD 952Ui-5ac2nD], RouterOS 6.48.1 (stable).
MikroTik.by
For every complex problem, there is a solution that is simple, neat, and wrong.
Выключение интерфейса при отключении определённого МАС адреса
Выключение интерфейса при отключении определённого МАС адреса
Сообщение b1gst0ne » 30 янв 2018, 03:50
Re: Выключение интерфейса при отключении определённого МАС адреса
Сообщение Chupaka » 30 янв 2018, 08:52
Re: Выключение интерфейса при отключении определённого МАС адреса
Сообщение b1gst0ne » 30 янв 2018, 09:49
Можно попробовать найти MAC так:
/interface wireless registration-table find mac-address
Но есть проблема в современных телефонах, они в режиме ожидания отключаются от wifi для экономии заряда АКБ.
Для включения интерфейса будет достаточно факта регистрации в сети wifi. Помогите найти или придумать событие/условие для отключения интерфейса, чтобы не пришлось находясь фактически дома, но не пользуясь телефоном некоторое время, ловить обрывы интернета и судорожно тянуться к телефону для пробуждения и регистрации его в сети wifi.
Re: Выключение интерфейса при отключении определённого МАС адреса
Сообщение Chupaka » 30 янв 2018, 10:03
Предлагаю использовать DHCP для этого, скрипт lease-script в DHCP-сервере.
Re: Выключение интерфейса при отключении определённого МАС адреса
Сообщение b1gst0ne » 30 янв 2018, 12:17
Универсальный скрипт переключения 2-х каналов интернета Mikrotik
Около 2,5 лет назад писал статью на тему автоматического переключения канала Интернет на резервный. Скрипт, конечно, и по сей день работает «на отлично», но его внешний вид и некоторые нюансы…
Итак, встала задача улучшить скрипт, максимально устранив побочные эффекты. Что ж, приступим.
В нашем распоряжении Mikrotik RB850Gx2, для которого мы будем писать скрипт (его работоспособность также проверена на моделях RB450G и RB951G-2HnD).
Присвойте скрипту имя, например, script-check-inet
Что же будем в нем использовать?
Итак, для начала определим необходимые переменные:
где:
$firstInterface — имя нашего PPPoE-соединения основной линии связи.
$secondInterface — имя нашего Ethernet-соединения резервной линии.
$pingTo1 и $pingTo2 — IP-адреса ресурсов, которые будем «пинать».
$pingCount — количество пингов на каждый IP-адрес
$stableConnectFrom — процентное соотношение для определения «стабильности» Интернет-канала. Например, в нашем случае при потере свыше 30% пакетов пинга (`$pingStatus Создадим запись в шедулере
В поле `Name` введите имя записи, чтобы не запутаться.
Поле `Start Time` я выставил `00:00:00` для запуска ровно в полночь.
Интервал — 30 секунд
В поле `On Event` вписываем имя нашего скрипта — `script-check-inet`
И жмем «ОК».
Вот, собственно, и все!
Ниже под спойлером приведен полный код скрипта.
Так как мы ввели дополнительную переменную `$firstInterfaceName`, то удалось изменить эту конструкцию и добились работоспособности скрипта на всех перечисленных устройствах.
UPD 2
Код скрипта в очередной раз был обновлен. esudnik обратил внимание на проблему большого количества потерянных пакетов при активном подключении к сети. Таким образом, мы ввели дополнительную переменную (`stableConnectFrom`), используемую для определения процентного соотношения «качества» линии.
В примере указано значение переменной равное «70». Это значит, если процент успешно отправленных пакетов будет ниже 70%, скрипт активирует резервный канал.
UPD 3
Как заметил icCE, при использовании скрипта на прошивке 6.36rc10, выходит ошибка:
Прошивке не нравится «* 100«. Решение проблемы было простым — обрамить вычисляемые значения в дополнительные скобки, получив
MikroTik: How to disable (enable) the interface on a schedule
We will analyze several ways to disable (enable) the MikroTik network interface or disable the Internet, according to a schedule: Firewall rule, NAT, MikroTik task scheduler or MikroTik script.
Content
Article in other languages:
Firewall rule: how to disable (enable) an interface on a schedule
To disable or disable the interface on a schedule, you can use the Firewall rule setting on the Extra tab.
⚠️ For the rule to work, the interface must be the main interface.
For example: we will restrict the operation of the WiFi interface (wlan2-5GHz) during non-working hours, from 19:00 to 07:00.
If you want to disable the operation of the interface on Saturday and Sunday (full day), set the time values:
NAT: how to allow (deny) the Internet on a schedule
You can deny (or allow) access to the Internet by time using the masquerade (NAT) rule setting.
Edit the masquerade rule, under the Extra tab:
Scheduler: disable (enable) interface by time
Turn off WiFi wlan2-5GHz interface after 20:00:00 using MikroTik Scheduler:
Enable WiFi wlan2-5GHz interface from 08:00:00 using MikroTik Scheduler:
MikroTik script: how to disable (enable) the interface
You can also disable (or enable) the interface using the MikroTik script and the Task Scheduler.
Create script
Specify the following variables in the script:
If the script does not work or does not work correctly, uncomment the lines :log (remove the # symbol in front of the beginning of the line) and check the MikroTik log when the script starts.
Add script to Scheduler
To run the script, you need permission: read, write, test, policy.
🟢 How to disable (enable) the MikroTik interface on a schedule or allow (deny) access to the Internet by time was discussed in this article. I hope you have chosen a suitable way to manage the state of the interface. However, if you run into any problems while setting up, feel free to write in the comments. I will try to help.
The script is checked: hAP ac lite [RouterBOARD 952Ui-5ac2nD], RouterOS 6.48.1 (stable).
Мой MikroTik – моя цифровая крепость (часть 1)
1. Введение
В комментариях опубликованной ранее статьи один из пользователей спросил: «А можно добавить раздел про то, как нужно защитить свой, микротик чтобы управление им не ушло на сторону?». Один из пользователей написал на это следующее: «Универсальных принципов для любого сетевого устройства два – администрирование только с внутреннего интерфейса (снаружи закрыто все) и регулярно обновлять прошивку» (сохранена авторская орфография). А мы сразу поняли, что одним коротким ответом здесь не обойтись, и этот вопрос заслуживает полноценного отдельного рассмотрения с учётом широких возможностей операционной системы RouterOS, а также сопрягаемых с ней opensource решений, комплексно завершающих проблемный вопрос информационной безопасности. Кроме непосредственно настройки безопасности доступа до маршрутизатора, необходимо использовать его как полноценный барьер для разноуровневых атак, которые могут быть нацелены на защищаемую сеть. Технологий реализации этого достаточно много, поэтому разделим применяемые возможности на логические уровни и представим предметные рекомендации по администрированию сетей на базе оборудования MikroTik.
2. Общие рекомендации
Первое, что мы всегда делаем с железкой — это обновляем прошивку:
Далее смотрим, сколько создано пользователей, лишних удаляем. Ставим пароли, соответствующие политике информационной безопасности компании, если такая есть, если нет, тогда просто посильнее:
Если паранойя зашкаливает, тогда используем SSH вход без ввода пароля (и пользователя admin можно заменить на другого). Сгенерим пару RSA ключей, размер укажем 4096 бит, что уж мелочиться:
На выходе будет закрытый ключ test_user:
И открытый ключ test_user.pub:
Привяжем открытый ключ к пользователю RouterOS:
Добавляем хардкор, запретив логиниться по паролю:
Важно отметить, что если есть пользователь, для которого не импортирован публичный ключ, то, несмотря на вышепоказанную настройку, RouterOS сохраняет возможность логиниться под ним с помощью пароля. С учётными записями разобрались, далее выключаем серверы различных протоколов управления, в том числе небезопасные, разумеется, есть ли они вам не нужны:
Можно поменять прослушиваемый порт для SSH сервера. Особенно на значение, не входящее в сканируемые по умолчанию nmap-ом, но мы в этом защиты не видим, скорее маскировка:
Сканируем роутер и видим, что всё работает корректно. Сервер SSH будет недоступен, пока на роутер не пройдут попытки установления соединения на 28 порт, затем в течение 30 секунд на 29 порт, затем в течение 30 секунд на 30 порт. Если последовательность обращений верна и временные лимиты соблюдены, то IP адрес источника сможет в течение 30 секунд установить SSH сессию, а иначе drop:
Необходимо отметить, что если вы укажете порты стука примерно в таком порядке: 21, 80, 443, а прослушиваемый SSH порт перенесете на значение 8080 (все четыре входят в список по умолчанию для сканирования nmap), то ваш секретный порт 8080 определится при первом же сканировании. Если вы действительно хотите использовать технологию port knocking, то выбирайте порты в порядке уменьшения, а сами значения портов на «не сканируемые» nmap-ом: ни в режиме top 100, ни в режиме top 1000. Кроме этого, можно ограничить IP адреса, с которых доступны протоколы управления, на диапазон доверенных:
Таким образом, несмотря на то, что 22 порт готов принимать TCP соединение, однако с не доверенных IP адресов оно будет сброшено SSH сервером:
Как общие рекомендации, лучше не использовать протоколы, не имеющие шифрования для передачи защищаемой информации. Если такой возможности нет, тогда старайтесь пускать трафик по шифрованным VPN туннелям. Но лучше даже внутри таких соединений использовать безопасные протоколы, ведь VPN сеть может уходить далеко за пределы периметра, контролируемого вами. Если есть возможность, не используйте протоколы pap, http (в том числе при реализации API), ftp, smtp и т.д. Всегда используйте их безопасные аналоги: chap, mschap2, https, smtps.
Делайте регулярные резервные копии конфигураций ваших устройств. В RouterOS есть два типа backup: бинарный *.backup
и текстовый конфигурационный файл *.rsc
Первый рекомендуется откатывать только на полностью идентичных устройствах, и не подлежит редактированию (при откате восстанавливается точный образ операционной системы). Второй же, наоборот, можно вручную контролируемо построчно обрабатывать (до получения необходимо результата), однако он может содержать чувствительную информацию (если не делать /export hide-sensitive), поэтому рекомендуем обезопасить хранение такого рода backup файлов. Ставить ли регулярный backup в планировщик заданий, или нет, тут уже каждый решает сам. Главное — не запутаться во всех резервных копиях и не передавать их на удалённый сервер по открытому интернет каналу посредством ftp.
3. Защита L1
Писать правила про установку сетевого оборудования в серверных помещениях, в защищённых телекоммуникационных ящиках, сейфах и т.д. мы не будем, это не тема статьи. Для защиты L1 на оборудовании MikroTik будет достаточно программно отключить не используемые сетевые интерфейсы:
Сюда же пойдёт организация безопасности беспроводных соединений. В идеале, конечно, следует настроить WPA2-Enterprise (подробно о настройке RADIUS сервера мы напишем во второй части статьи), так как реальных угроз безопасности таких сетей пока не известно:
Если такой вариант вам не подходит, тогда используйте WPA2-PSK со словарно неподбираемым паролем, который держите в тайне от третьих лиц, и отключённый PMKID:
Ещё можно запретить подключаться к точке доступа с низким уровнем сигнала, т.е. физически удалённым пользователям, которые, можно предположить, находятся за контролируемым периметром и не легитимны:
На этом свои рекомендации по поводу L1 безопасности остановим и перейдём к более интересным вещам.
4. Защита L2
Для начала ограничим работающие сервисы уровня L2:
Первый скрипт позволяет осуществлять mac-ping только для внутренней сети. Второй ограничивает L2 подключение посредством службы Winbox:
RouterOS поддерживает работу таких протоколов, как CDP, LLDP и MNDP. Чтобы не осуществлять широковещательную рассылку пакетов указанных протоколов во все стороны, ограничиваем их работу:
Чтобы со стороны провайдера не догадывались, что у вас стоит роутер MikroTik, можно сменить MAC адрес WAN интерфейса, но это скорее баловство:
Если в вашем L2 сегменте появится второй или более незаконный DHCP сервер, то это может здорово навредить работе всей сети. Так в примере видно, что работают две указанные службы (192.168.1.1 и 192.168.3.1), раздавая по факту разные сетевые настройки:
Для защиты от такого рода атак (ведь хакер может назначить и своё устройство в качестве шлюза) существует технология «DHCP snooping». После её активации бридж пропускает DHCP пакеты только в доверенную сторону:
Защита оконечных устройств выходит за рамки данной статьи, но декларируем, что многие антивирусы справляются с этой задачей, детектируя манипуляции с ARP пакетами. На скрине видно, что действиями выше мы организовали MITM для хоста 192.168.1.3 и перехватили его HTTP запросы:
В следующем примере показаны ложные записи ARP таблицы маршрутизатора, а ведь так намеренно можно заполнить весь имеющейся пул и втупить работу легитимного DHCP сервера:
Для защиты от таких действий в RouterOS необходимо, первым делом, настроить DHCP сервер, что позволит активировать функцию заполнения ARP таблицы, либо в результате его работы, либо в ручном режиме:
После этого настраиваем бридж, переводя маршрутизатор в режим только ответа на ARP запросы (если у вас работает hotspot, то от этой идеи придётся отказаться, так как он перестанет нормально функционировать), таким образом, сторонние манипуляции будут бессильны:
Дополнительно следует выключить режим обучения портов MAC адресам:
Если ваш маршрутизатор гоняет пакеты для логически разделённых сетей, в том числе с точки зрения безопасности, то их следует разнести по различным VLAN. Важно понимать, что если через ваше устройство проходят несколько VLAN, то в случае несанкционированного доступа к роутеру или коммутатору, могут быть скомпрометированы устройства во всех этих подсетях. Здесь всё понятно. Дополнительно можно указать устройству проверять tag трафика и дропать пакеты, у которых VLAN ID не найден в его таблице VLAN:
5. Заключение
На этой админской ноте прервём наши рассуждения, которые отображают подходы, применяемые нами в построении реальных сетей и обеспечении их информационной безопасности. Никакие ноухау статья не раскрывает, но в определённой мере систематизирует имеющиеся возможности и показывает их практическое применение. Дальше будет интереснее…