Операционная система RouterOS

RouterOS — сетевая операционная система от латвийской компании MikroTik. Описание возможностей Микротик RouterOS и Firewall в RouterOS.

Комментариев: 2 Просмотров: 6617
11октября 2017
все статьи

Операционная система RouterOS

RouterOS — это сетевая операционная система от латвийской компании MikroTik. Mikro tīkls, что в переводе с латвийского означает «маленькая сеть», зарождалась как небольшая домовая сеть в 1995 г. Для решения своих повседневных задач требовался удобный инструмент.

Началась разработка своего собственного софта на базе Linux, который заложил первоначальный фундамент в RouterOS. Сейчас RouterOS завоевывает все большую и большую популярность за счет своей гибкости, надежности и функциональности. В 2013 году была выпущена уже 6 версия RouterOS, основанная на ядре Linux 3.3.5. Начиная с версии RouterOS 6.40 в стандратный firewall были внесены серьезные изменения. Постараемся раскрыть новые возможности использования firewall в этой статье.

Firewall в RouterOS MikroTik

Firewall в MikroTik Routeros имеет очень большие возможности по фильтрации, отбору и работе с трафиком. Отбор пакетов возможен по более чем 50-ти параметрам, причем к каждому пакету можно применить одно из нескольких действий таких как: accept, drop, reject, tarpit и другие.

Рассмотрим стандартные настройки firewall в Router OS с версии 6.40. На изображении ниже представлен стандартный firewall, рекомендованный MikroTik.

Чтобы правильно понимать и читать Firewall в RouterOS, нужно хорошо разбираться в нескольких базовых понятиях. Одним из таких является chain (цепочка) прохождения пакетов. В Firewall существует три цепочки движения трафика:

  1. Input — пакеты, отравленные на маршрутизатор. Для примера возьмем ситуацию, когда мы работаем по SSH или Telnet с Router OS. Весь трафик в этом случае будет идти через цепочку Input.
  2. Forward — пакеты, идущие «через» маршрутизатор. В это правило попадут все пакеты, отправляемые локальными компьютерами, например, в Интернет.
  3. Output — пакеты, отравляемые с роутера. При использовании утилиты Ping с роутера все пакеты будут генерироваться самим маршрутизатором и проходить через цепочку Output.

Особенности работы Firewall в RouterOS

Все пакеты в Firewall проходят сверху вниз через каждое правило. Пакет будет обрабатываться в Firewall до тех пор, пока он не попадет под действие какого-либо правила. Поэтому расположение правил имеет большое значение не только для корректной работы Firewall, но и для рационального использования процессорного времени.

Пакет, отравленный в цепочку Input, никогда не попадет в цепочку Forward, и наоборот. Поэтому порядок расположения правил в Firewall между цепочками Input и forward не важен, т.е. без разницы какие правила идут первыми input или forward.

Рекомендованный Firewall в RouterOS является нормально закрытым в chain (цепочке) input и нормально открытым в chain (цепочке) forward, т.е. на input запрещено все, кроме того, что разрешено. В цепочке forward разрешено все, кроме того, что запрещено.

Рассмотрим правила Firewall по умолчанию применяемые в MikroTik более детально.

Цепочка Input

  • add action= accept chain=input connection-state=established,related,untracked − данное правило разрешает прохождение пакетов, отправленных на маршрутизатор (input) со всех интерфейсов (LAN,WAN) c состоянием connection-state - established, related, untracked. Оно означает, что пакет будет обработан и пропущен этим правилом дальше в роутер только в том случае, если пакет относится к уже установленным (established), зависимым (related) или не отслеживаемым (untracked) соединениям. Более подробно об connection-state можно найти тут.
  • add action=drop chain=input connection-state=invalid − отбросить все пакеты с состоянием соединения invalid, т.е. весь неизвестный трафик для RouterOS.
  • add action=accept chain=input protocol=icmp − разрешить ICMP протокол в цепочке input. Рекомендуется не запрещать работу протокола ICMP, потому что для более корректной работы стека TCP/IP, требуется поддержка протокола ICMP.
  • add action=drop chain=input in-interface-list=!LAN − запретить все пакеты в цепочки input со всех интерфейсов, кроме сетей входящих в интерфейс лист LAN. Это правило отбрасывает все приходящие пакеты на роутер из внешних сетей, в том числи и «BOGON», кроме домашней сети LAN. Поэтому если мы хотим открыть какие-то сервисы, мы должны размещать разрешающие правила выше этого запрещающего правила.

Цепочка Forward

  • add action=accept chain=forward  ipsec-policy= in,ipsec и add action=accept chain=forward  ipsec-policy=out,ipsec — эти два правила отвечают за корректное прохождение пакетов ipsec через маршрутизатор при включенной функции fasttrack.
  • add action=fasttrack-connection chain=forward  connection-state=established,related − включение функции fasttrack. Fasttrack — технология позволяющая существенно экономить ресурсы роутера при обработке пакетов. Достигается за счет упрощённой обработки пакетов, миную ядро Linux. При включении данной технологии теряется часть функционала Router OS, такие, как очереди, IPsec и др.
  • add action=accept chain=forward  connection-state=established,related,untracked — данное правило разрешает прохождение пакетов через RouterOS c состоянием connection-state — established,related,untracked.
  • add action=drop chain=forward connection-state=invalid — запрещает все проходящие через RoureOS пакеты c состояние invalid.
  • add action=drop chain=forward  connection-nat-state=!dstnat connection-state=new in-interface-list=WAN — это правило повышает безопасность NAT, рекомендуется его использовать.

При внедрении данного Firewall необходимо создать в интерфейс листах ваши листы — WAN и LAN. Нужно внести ваши действующие интерфейсы в них. Будьте внимательны, от правильной настройки Firewall зависит безопасность вашей сети.

NAT

Одной из центральных технологий в современных сетях является NAT (network address translation).

RouterOS имеет очень гибкие возможности по управлению функциями NAT. Есть всесторонняя поддержка различных видов NAT:

  • Статический NAT — NAT один к одному, когда один IP-адрес полностью отображается на другой IP-адрес.
  • Динамический NAT — один ко многим. Один IP-адрес или группа могут отображается к нескольким, причем правила могут меняться динамически.
  • Перегруженный NAT (PAT, NAT overload) — самый распространённый вид динамического NAT, когда происходит отображение нескольких внутренних хостов на один внешний IP-адрес, также известен как маскарадинг.
  • Harpin NAT или loopback NAT — особая техника использования NAT. Предназначена для того, чтобы локальные хосты могли обращаться по внешнему IP-адресу к сервису, расположенному в той же локальной сети.
  • MAP (dst-nat) — стандартная функция NAT, поддерживаемая большинством маршрутизаторов. С ее помощью осуществляется «проброс портов» ко внутренним сервисам локальной сети.
  • Travers NAT — технология, позволяющая приложениям автоматически настраивать NAT под свои задачи.

Более подробно о практической стороне использования NAT вы можете посмотреть тут.

Описанные возможности MikroTik RouterOS — это лишь небольшая часть богатейшего функционала RouterOS в MikroTik. В следующих статьях постараемся рассказать о других интересных функционалых особенностях RouterOS и ее настройке.

поделиться материалом:

Читайте также

комментарии — 2
Иван20 ноября 2017 в 16:20
Подскажите пожалуйста. Я правильно понял, что теперь, если использовать правило add action=drop chain=input in-interface-list=!LAN, то уже нет необходимости в отдельном правиле запрещающим соединения из bogon-сетей на wan-интерфейс?
Ответить
Денис22 ноября 2017 в 16:51
Иван да вы правильно поняли.
Ответить
написать комментарий