Сначала мы хотели описать лучшие практики, но решили пойти с обратной стороны, показать какие плохие сценарии встречаются.

Переименовывание физических интерфейсов

Один из самых часто встречающихся плохих кейсов.

Только представьте, перед вами такая конфигурация.

[admin@MikroTik.Me] /interface ethernet print
Flags: X - disabled, R - running, S - slave 
 #    NAME                    MTU MAC-ADDRESS       ARP             SWITCH                
 0 R  ether1                 1500 74:4D:28:AB:C4:9B enabled         switch1               
 1  S ether2                 1500 74:4D:28:AB:C4:9C enabled         switch1               
 2  S ether5                 1500 74:4D:28:AB:C4:9F enabled         switch1               
 3  S megafon                1500 74:4D:28:AB:C4:9D enabled         switch1               
 4  S mts                    1500 74:4D:28:AB:C4:9E enabled         switch1   

Каким образом из такого вывода мы можем понять к каким физическим интерфейсам подключены провайдеры?

Да можно конечно выполнить export, но это дополнительное действие.

Так же становиться очень неудобным перенос части конфигурации на другой маршрутизатор, если на новом маршрутизаторе отличаются имена интерфейсов, вам необходимо либо изменить в конфигурационном файле перед импортом все места, где указаны имена интерфейсов, либо переименовать интерфейсы так, чтобы имена были идентичные, как и на старом маршрутизаторе.

Не переименовывайте интерфейсы !!!

Русские символы в настройках

Не указывайте кириллицей параметры в настройках.

Вот так выглядит комментарий кириллицей при print-е

[admin@MikroTik.Me] /interface ethernet print
Flags: X - disabled, R - running, S - slave 
 #    NAME                    MTU MAC-ADDRESS       ARP             SWITCH                
 0 R  ether1                 1500 74:4D:28:AB:C4:9B enabled         switch1               
 1  S ether2                 1500 74:4D:28:AB:C4:9C enabled         switch1               
 2  S ether5                 1500 74:4D:28:AB:C4:9F enabled         switch1               
 3  S megafon                1500 74:4D:28:AB:C4:9D enabled         switch1               
 4  S ;;;                 
      mts                    1500 74:4D:28:AB:C4:9E enabled         switch1

А вот так выглядит, кириллицей chain в firewall при export-е

[admin@MikroTik.Me] > /ip firewall filter export
add action=accept chain="\F5\E0\F5\E0"

Ни в одном из случаев при анализе конфигурации, смысл комментария непонятен.

Не используйте кириллицу !!!

Бездумный копипаст

Конечно это отдельная и очень большая тема, но в вкратце примерно так:

Копируем в интернете всё бездумно с разных сайтов и статей, далее думаем почему не работает.

Не копипасте!!!

Отключение дефолтных правил фильтра фаервола

Если вы не можете на 100% ответить на следующий вопрос

Для чего каждое правило в фильтре?

Не отключайте правила в дефолтных настройках, так как настройки по умолчанию относительно хорошо защищают как сеть за маршрутизатором, так и сам маршрутизатор.

Если не уверены, не трогайте дефолтные настройки!!!

Не указывают параметр interface в правилах фаервола.

Если параметр либо входящий, либо исходящий интерфейс не указан, то такое правило будет действовать на любой трафик проходящий на маршрутизатор или уходящий с маршрутизатора, естественно с учётом настроенных других параметров.

Особенно такие настройки опасны при настройках src-nat.

Конечно есть конфигурации когда такие настройки нужны, но они встречаются не так часто.

Если не уверенны в своих силах, старайтесь указывать интерфейс в правилах фаервола!!!

Используем SNMP v1 или v2

Не пытайтесь устанавливать сложное имя community при перехвате трафика злоумышленник узнает все параметры необходимые для подключения.

Используйте только SNMP v3!!!

Не настроенное время

Первое что я делаю при настройке RouterOS это настраиваю способ получения точного времени указав ntp сервера и выставив правильный часовой пояс.

Иначе в логах у вас будет неразбериха.

Настраивайте время!!!

Не делаем Backup

Тут наверное нет смысла объяснять, что делать резервное копирование маршрутизатора необходимо, есть множество способов делать хоть скриптами и отправлять на почту, хоть обходом внешним сервисом для получения export.

Делайте резервное копирование!!!

Развернули backup на другой модели

Бинарный бэкап предназначен для восстановления конфигурации маршрутизатора ТОЛЬКО на ту же модель, той же ревизии. В случае если модели будут не совместимы, вы можете получить лишние физические интерфейсы, переименование текущих и прочие грабли. И единственный способ удалить такие интерфейсы это пробить маршрутизатор с помощью netinstall.

Если вам необходимо перенести конфигурацию на другую модель маршрутизатора используйте export.

Восстанавливайте из бинарного backup только на аналогичную модель!!!

Восстанавливайте из бинарного бэкапа только на аналогичную модель!!!

Использование не long-term ветки в проде.

Опять же это не для всех, а только для тех кто пока не уверен в своих силах. Используйте всегда ветку обновления long-term в ней практически отсутствуют крупные баги, и изменения которые добавляются в них либо связаны с безопасностью либо прошли длительное тестирование в других ветках.

Используйте только long-term!!!

На этом пока все, будут продолжения.

Рассказать друзьям