скопировано отсюда
Подготовка к настройке
Первым делом, взяв в руки Mikrotik, следует обновить версию RouterOS до актуальной. Это следует сделать по нескольким причинам, в первую очередь в целях безопасности. Еще свежа история с широкой эксплуатацией уязвимости CVE-2018-14847, несмотря на то что производитель оперативно выпустил патч. Просто пользователи не спешили обновлять свои устройства, как говорится – пока гром не грянет…
Во-вторых, начиная с RouterOS 6.41 были изменены настройки коммутации и если вы хотите использовать актуальные инструкции, перед настройкой версию ОС следует обязательно обновить.
Для этого перейдем на сайт производителя в раздел Downloads и скачаем свежую версию Winbox – графической утилиты для настройки, а также свежую версию RouterOS. Представленные на странице пакеты отличаются только архитектурой вашего роутера, если вы ее не знаете, то рядом перечислены все подходящие модели роутеров. В каждом разделе представлено два пакета: Main и Extra, первый – это основная прошивка, то, что находится в вашем устройстве из коробки, второй – дополнительные пакеты, которые можно установить самостоятельно, они нам сейчас не нужны.
Теперь подключим патч-корд к любому порту роутера, кроме первого и запустим WinBox. По умолчанию в Mikrotik включен MAC-сервер, что позволяет подключаться к устройству по MAC-адресу, не меняя настройки сетевого адаптера. Ваше устройство через некоторое время появится на закладке Neighbors, после чего щелкните мышью на поле MAC-адреса, который автоматически подставится в строку подключения, для входа используйте admin с пустым паролем.
Для обновления перейдите в раздел Files и загрузите скачанный ранее пакет c RouterOS, это можно сделать как кнопкой Upload, так и простым перетаскиванием файла в окно. После чего просто перезагрузите устройство: System – Reboot.
Следующим шагом обновим загрузчик RouterBOOT, для этого перейдем System – Routerboard и сравним текущую версию с доступной прошивкой, для обновления нажмите Upgrade и еще раз перезагрузите устройство.
И, наконец, сбросим конфигурацию устройства. Хорошей практикой настройки Mikrotik является полный сброс настроек по умолчанию и настройка устройства с нуля, таким образом вы не только настроите свой роутер именно так, как нужно вам, но и будете уверенны, что настройки не содержат никаких “сюрпризов”, которые вы могли просто не заметить. Для этого выберем System – Reset Configuration и установим флаги No Default Configuration и Do Not Backup, после чего выполним сброс устройства, при этом роутер снова будет перезагружен.
Настройка портов и коммутация
В старых версиях RouterOS было два варианта настройки коммутации: аппаратный, при помощи чипа коммутации (через мастер-порт) и программный (через мост), в современных версиях используется только один вариант – через мост, при этом чип коммутации будет задействован автоматически, при наличие такой возможности, т.е. коммутация будет по-прежнему выполняться на аппаратном уровне. Более подробно мы коснемся этого момента немного позже.
Открыв раздел Switch можно посмотреть какие чипы коммутации установлены в вашем роутере и какие порты они обслуживают:
Для примера показан RB2011, который имеет два чипа коммутации: первый обслуживает порты ether1-ether5 и spf, второй ether6-ether10. Для портов, обслуживаемых одним чипом, доступна аппаратная коммутация, между портами обслуживаемыми разными чипами коммутация будет программной. Это следует учитывать при распределении портов, скажем если мы для файлового сервера выделим ether7, а для клиентов ether2-ether5, то получим повышенную нагрузку на устройство из-за программной коммутации.
Для новичков сообщим еще одну новость: в Mikrotik нет LAN и WAN портов, любой порт может быть настроен как вам нужно. Есть два внешних канала – настроим два WAN, нужно обслуживать две внутренних сети – не проблема, создадим две группы коммутации.
Далее в нашем примере мы будем использовать пятипортовый роутер и в качестве внешнего порта будем использовать здесь и далее последний порт. Остальные порты будут объединены в группу коммутации для локальной сети. Откроем Interfaces – Interface и добавим к портам ether1 и ether5 комментарии, указывающие на их назначение. Также можно переименовать сам порт, но мы предпочитаем оставлять им оригинальные названия, что позволяет быстро понимать к какому физическому порту относится та или иная запись.
Оставим пока настройку подключения к провайдеру и объединим локальные интерфейсы в группу коммутации, для этого нам нужно будет создать мост, переходим в раздел Bridge и создаем там сетевой мост bridge1, в комментариях также указываем его принадлежность к LAN.
Затем переходим на закладку Bridge – Ports и последовательно добавляем в мост интерфейсы локальной сети ether1-ether4, обратите внимание на активную по умолчанию опцию Hardware Offload, которая включает аппаратную коммутацию, если она доступна.
Итак, мост создан, порты добавлены, теперь перейдем в Interfaces – Interface List и создадим новый список, которому дадим название local:
А затем добавим в этот список интерфейс нашего локального моста:
Осталось только присвоить нашему мосту локальный IP-адрес, для этого откроем IP – Addresses и добавим интерфейсу bridge1 нужный адрес. Обратите внимание, что используется формат записи IP/маска, т.е. вы должны указать 192.168.186.1/255.255.255.0 или более короткий вариант 192.168.186.1/24:
Теперь роутер будет пинговаться по указанному вами адресу и по нему можно будет подключиться к устройству. Для того, чтобы убедиться, что аппаратная коммутация работает перейдите в Bridge – Ports, символ H в строке порта указывает на то, что для обработки, передаваемой на уровне L2 информации, используется чип коммутации.
Настройка подключения к интернет
В зависимости от вашего провайдера способ подключения к интернет может быть разным. Чаще всего встречается прямое подключение, когда провайдер раздает настройки по DHCP или PPPoE подключение (используется федеральным провайдером Ростелеком). Мы будем рассматривать далее прямое подключение, однако если у вас коммутируемый доступ (PPPoE или VPN), то вам потребуется перейти в раздел PPP и создать коммутируемое подключение типа Client, ниже показан пример для PPPoE Ростелеком. В качестве используемого интерфейса укажите внешний интерфейс ether5:
Затем на закладке Dial Out укажите данные для подключения к серверу провайдера и если вы хотите использовать его DNS-сервера установите флаг Use Peer DNS.
В дальнейшем, вместо внешнего интерфейса ether5 вам потребуется указывать ваш коммутируемый интерфейс pppoe-out1.
Более подробно про настройку VPN-подключений в Mikrotik вы можете прочитать в нашей статье Настройка VPN-подключения в роутерах Mikrotik.
В зависимости от способа подключения вам может потребоваться настроить получение от провайдера внешнего IP-адреса, если у вас статический адрес, то переходим в IP – Addresses и добавляем еще один адрес, аналогично тому, как мы делали выше, но чаще всего провайдеры используют для присвоения адресов (даже статических) протокол DHCP. В этом случае переходим в IP – DHCP Client и добавляем нового клиента, в качестве интерфейса указываем внешний – ether5.
Здесь же можем убедиться, что IP-адрес от провайдера получен:
Для коммутируемых подключений DHCP-клиент настраивать не нужно, интерфейс получит адрес самостоятельно, чтобы убедиться в этом, еще раз откроем IP – Addresses, где должен появиться еще один адрес с индексом D (динамический) и принадлежащий коммутируемому подключению.
Настройка сетевых служб (DHCP, DNS) и раздача интернета в локальную сеть
Одной из наиболее важных сетевых служб является DHCP, сегодня уже все привыкли, что достаточно просто подключиться к сети, неважно, проводом или через Wi-Fi, а все настройки будут произведены в автоматическом режиме. Поэтому мы тоже начнем с DHCP, для этого перейдем в IP – DHCP Server и запустим мастер настройки сервера DHCP Setup. Первым шагом потребуется указать рабочий интерфейс сервера – указываем сетевой мост bridge1, который мы настроили для локальной сети.
Затем укажем обслуживаемую сеть, которую мастер подставит автоматически, на основании адреса присвоенного интерфейсу моста:
В качестве шлюза будет предложено использовать сам роутер, мастер по умолчанию подставит адрес, который мы присвоили устройству:
Потом будет предложено выделить диапазон адресов для выдачи клиентам, мастер предложить отдать весь доступный диапазон, но если дома еще можно так сделать, то в офисе однозначно нужно выделить статические диапазоны для серверов, сетевого оборудования, принтеров, камер и т.д. и т.п. Поэтому немного ограничим его аппетиты, мы выделили блок адресов 192.168.186.100-199, для дома или небольшого офиса этого вполне достаточно.
Ну и наконец укажем DNS-сервер, в его качестве также должен выступать роутер, иначе мы потеряем контроль над очень важной сетевой службой, поэтому указываем в этом окне адрес роутера.
Завершаем работу мастера и переходим на закладку Leases, здесь, по мере подключения, будут появляться клиенты, которым ваш роутер начнет выдавать адреса. Обратите внимание на “фирменную” особенность Mikrotik – он начинает выдавать адреса начиная с конца диапазона, т.е. от 199 до 100.
Следующим шагом настроим DNS-сервер, сделать это очень просто, открываем IP – DNS и добавляем в список вышестоящие DNS, это могут быть сервера провайдера или публичные службы, если вы получаете сетевые настройки от провайдера через DHCP, то его DNS-сервера уже будут указаны, они располагаются в разделе Dynamic Servers и не подлежат редактированию. Если вы добавите собственные сервера, то они будут иметь более высокий приоритет, в нашем случае указаны сервера OpenDNS.
Для того, чтобы сервер мог обслуживать запросы клиентов локальной сети, не забудьте установить флаг Allow Remote Requests.
Базовые сетевые службы настроены, но доступа в интернет у клиентов пока нет, для этого осталось настроить службу трансляции адресов – NAT. Переходим в IP – Firewall – NAT и добавим новое правило, на закладке General в поле Src. Address укажем нашу локальную сеть 192.168.186.0/24, а в поле Out. Interface – внешний интерфейс, в нашем случае ether5. Если же вы используете коммутируемое подключение, то здесь следует указать его, например, pppoe-out1.
На закладке Action укажем действие – masquerade.
Теперь можем перейти на клиентский ПК и убедиться, что сетевые настройки получены и доступ в интернет есть.
Если вы используете торренты или иной софт, требующий принимать входящие подключения, то следует также настроить службу UPnP, которая позволяет сетевому ПО автоматически осуществлять проброс нужных портов на роутере. Откроем IP – UPnP, включим службу и перейдем к настройке интерфейсов, нажав на кнопку Interfaces.
Теперь добавим два интерфейса: bridge1 как внутренний и ether5 как внешний, если вы используете коммутируемое подключение, то добавьте в список тот интерфейс, через который выходите в интернет, например, pppoe-out1.
Теперь если мы запустим на клиенте торрент, то в IP – Firewall – NAT созданные автоматически правила для проброса портов, если же закрыть торрент-клиент, то данные правила исчезнут. Это удобно и безопасно, а также позволяет полноценно использовать современные сетевые приложения.
Настройка межсетевого экрана
Сетевой экран, он же файрволл или брандмауэр (оба этих слова обозначают в английском и немецком языках противопожарную стену) является важнейшей частью роутера и было бы серьезной ошибкой выставить устройство в интернет не настроив брандмауэр. Поэтому перейдем в IP – Firewall – Filter Rules и приготовимся остаться тут надолго. Вообще-то гораздо быстрее и проще настроить межсетевой экран из командной строки, но так как наш материал рассчитан на начинающих, то мы будем это делать при помощи графического интерфейса Winbox.
Существует два основных состояния брандмауэра: нормально открытый, когда разрешено все, что не запрещено, и нормально закрытый, когда запрещено все, что не разрешено. Логично, что для внутренней сети следует использовать первую политику, а для внешней – вторую. По умолчанию все цепочки брандмауэра Mikrotik (а он построен на iptables) находятся в состоянии ACCEPT, т.е. разрешено.
Начнем с подключений к самому роутеру или цепочки input. В первую очередь добавим правило-пустышку разрешающее подключение к устройству из локальной сети. Почему “пустышку”? Потому что это и так разрешено, но данное правило будет нашей страховкой от случайного “выстрела в ногу”, когда мы случайно запретим себе доступ к устройству. Правило-пустышка расположенное первым сработает раньше всех добавленных позже правил, в отличие от действия по умолчанию, которое сработает только тогда, если ни одно правило не подошло.
Итак, добавляем новое правило и указываем в нем Chain (цепочка) – input, Src. Address – 192.168.186.0/24 – диапазон вашей сети и In. Interface – bridge1, локальный интерфейс. Действия задаются на закладке Action, но так как accept (разрешить) уже установлено по умолчанию, то можно просто нажать OK.
Также примите себе за правило давать для каждой записи детальные комментарии, чтобы впоследствии можно было быстро понять ее назначение. Особенно это касается правил, назначение которых неочевидно.
Следующим правилом разрешим входящие подключения на внешнем интерфейсе для уже установленных и связанных соединений, создаем новое правило: Chain – input, In. Interface – ether5, в Connection State устанавливаем флаг established и related, так как действие у нас снова accept, то просто сохраняем правило.
Затем запретим входящие пакеты в состоянии invalid, это пакеты которые не являются первыми и не принадлежат ни одному установленному соединению. Какого-либо смысла обрабатывать их нет, просто отбрасываем. Создаем правило Chain – input, In. Interface – ether5, в Connection State устанавливаем флаг invalid и переходим на закладку Action и ставим действие drop.
Ниже располагаем разрешающие правила для различного типа входящего трафика. Обязательно разрешим роутеру принимать протокол ICMP: Chain – input, Protocol – icmp, In. Interface – ether5. ICMP – это не только пинги, но и гораздо более важные вещи, например, определение минимального MTU канала связи (PMTU).
И самым последним создаем правило запрещающее все остальные подключения к роутеру: Chain – input, In. Interface – ether5, на закладке Action и ставим действие drop.
Если у вас коммутируемое подключение, то продублируйте правило для интерфейса, который смотрит в сеть провайдера, в большинстве случаев это избыточно, но вполне оправдано с точки зрения безопасности.
В последствии дополнительные разрешающие правила следует размещать ниже правила запрещающего invalid, но выше правила блокирующего все входящие подключения.
Данный набор правил является минимально необходимым и надежно закрывает ваше устройство от внешней сети, оно даже не будет отвечать на пинги, также невозможны внешние подключения. На наш взгляд выставлять управление устройством, особенно Winbox во внешнюю сеть – плохая идея, если же вам требуется удаленный доступ к роутеру, то следует использовать иные методы, например, через VPN.
При наличии базовых знаний по работе сетей работу с брандмауэром Mikrotik нельзя назвать сложной, особенно если вы работали с iptables (который здесь и находится “под капотом”), понимая откуда должен прийти пакет и куда попасть – создание новых правил не должно вызывать затруднений.
Закончим с собственными соединениями роутера и перейдем к транзитным, т.е. от клиентов локальной сети в интернет и обратно. За это отвечает цепочка forward, но прежде, чем переходить к правилам следует обратить внимание на еще одну фирменную технологию. Она называется Fasttrack и предусматривает упрощенную передачу пакетов, что позволяет значительно повысить производительность роутера. Однако это достигается ценой того, что к такому трафику не могут быть применены многие правила брандмауэра и иные сетевые технологии (подробнее можно прочитать на официальном сайте).
Так нужен ли Fasttrack? Смотрите сами, мы взяли RB2011 и прокачали через него при помощи Speedtest поток в 90 Мбит/с (при тарифе в 100 Мбит/с) сначала с отключенным Fasttrack:
Фактически мы уже положили роутер на лопатки, загрузив CPU на 100% при помощи только одного теста. В реальной жизни несколько активно использующих сеть клиентов сделают это даже на более узком канале. Говорить о какой-то сложной обработке трафика или каких-либо продвинутых сетевых функциях увы уже не приходится.
Включим Fasttrack и повторим тест:
Как видим, картина существенно изменилась, полная утилизация канала уже не вызывает предельной загрузки роутера и остается вполне достаточно ресурсов для реализации каких-то продвинутых сетевых конфигураций или создания сложных правил обработки трафика.
Поэтому первым делом добавим следующее правило: Chain – forward, Connection State: established, related, а на закладке Action установим действие fasttrack connection.
Таким образом мы пустим через Fasstrack все пакеты уже установленных транзитных соединений, и скажем честно, особой потребности как-то сложно обрабатывать такой трафик на роутере нет. Простую фильтрацию можно легко достичь предварительной обработкой и маркировкой пакетов, а на что-то более сложное у Mikrotik не хватит ресурсов, в этом случае есть смысл задуматься о полноценном роутере с прокси на базе Linux.
Остальной трафик из локальной сети в интернет мы никак не трогаем, потому что по умолчанию все и так разрешено, а любые дополнительные разрешающие правила окажутся пустышками, бесцельно расходующими вычислительные ресурсы роутера. Поэтому будем сразу закрываться от доступа из всемирной сети. Но прежде точно также разрешим уже установленные и связанные соединения: Chain – forward, In. Interface – ether5, Out. Interface – bridge1, ниже в Connection State устанавливаем флаги established и related, действие accept.
Запретим пакеты в состоянии invalid: Chain – forward, In. Interface – ether5, Connection State – invalid, действие drop. Ниже, если необходимо, размещаем разрешающие правила, для доступа извне в локальную сеть.
Затем закрываемся от внешнего мира: Chain – forward, In. Interface – ether5, Out. Interface – bridge1, Connection NAT State – ! dstnat, действие drop. Общий принцип здесь такой же, как и в цепочке input, разрешаем установленные и связанные соединения, запрещаем invalid, потом идут собственные правила и запрет всего остального трафика. Единственный момент, в данном правиле мы поставили исключение для dstnat-трафика, т.е. для проброшенных наружу портов, если этого не сделать, то правила созданные UPnP будут работать некорректно. В итоге вы должны получить следующую конфигурацию брандмауэра:
Это – минимально достаточная базовая конфигурация, которая обеспечивает необходимый уровень безопасности и на которую мы будем опираться в наших следующих материалах.
Настройка безопасности роутера
Основная настройка нашего роутера закончена, он уже может быть введен в эксплуатацию и обслуживать запросы клиентов локальной сети. А мы тем временем перейдем к дополнительным настройкам, которые существенно влияют на безопасность устройства.
Прежде всего перейдем в IP – Services, здесь перечислены включенные сетевые службы самого роутера, смело отключаем все неиспользуемые, включая и веб-интерфейс. Честно говоря, мы вообще не видим в нем смысла, так как по внешнему виду он полностью повторяет Winbox, но несколько менее удобен в использовании.
Обычно мы оставляем только Winbox и SSH, для Winbox не будет лишним задать диапазон допустимых адресов для подключения, ограничив их локальной сетью. При необходимости можно указать несколько сетей (сеть офиса и сеть филиала).
Следующим шагом заходим в IP – Neighbors, данные настройки отвечают за автоматическое обнаружение устройств Мikrotik в сети, по вполне понятным причинам эту функцию следует ограничить только локальной сетью. Поэтому нажимаем Discovery Settings и в списке Interface выбираем созданный нами в самом начале список интерфейсов local.
Обнаружение устройства и возможность подключения к нему по MAC-адресу – несомненно удобно, но также только в локальной сети. Открываем Tools – MAC Server и устанавливаем в Allowed Interface List список интерфейсов local.
Ну и наконец сменим учетную запись по умолчанию. Перейдем в System – Users и создадим собственный аккаунт с полными правами, выйдем из Winbox и попробуем зайти с новыми учетными данными и только после этого, убедившись, что все работает правильно, можно выключить старую учетную запись.
Настройка беспроводной сети Wi-Fi
Данный раздел мы не зря вынесли в самый конец, потому как общие шаги настройки роутера что с беспроводным модулем, что без него абсолютно одинаковые. Поэтому имеет смысл прежде выполнить все общие этапы настройки, а затем те, кому нужно дополнительно настроят у себя беспроводную сеть. Мы не будем здесь касаться всех аспектов настройки Wi-Fi на Mikrotik – это тема отдельной статьи, а дадим только базовые настройки.
Если мы откроем раздел Wireless то увидим один или два беспроводных интерфейса (для моделей 2,4 + 5 ГГц), которые будут из коробки выключены. Но не будем спешить их включать, перед тем как настраивать Wi-Fi будет не лишним изучить обстановку в эфире. Для этого сначала нажмем кнопку Freq. Usage и оценим загрузку каналов.
Как мы помним, в диапазоне 2,4 ГГц существуют три независимых канала, которые предпочтительно использовать: 1 (2412 МГц), 6 (2437 МГц) и 11 (2462 МГц), поэтому начнем наблюдать. Сразу видим, что начало диапазона занято довольно плотно и использование 11-го канала может сначала показаться хорошей идеей.
Однако не будем спешить и понаблюдаем немного подольше, как оказалось – не зря! На 11-ом канале время от времени отмечались сильные всплески непонятного характера, по которым можно было предположить наличие там не точки доступа, а какого-то иного источника излучения. Поэтому наиболее подходящим в этой ситуации можно назвать 6-й канал.
Закроем это окно и нажмем кнопку Scanner, который покажет нам все работающие в диапазоне точки доступа, при этом обращаем внимание на уровень сигнала. Сигнал в -35 dBm принимается за 100%, -95 dBm – 1%, шкала между этими значениями линейная, т.е. -65 dBm – 50%.
Как видим, на выбранном нами 6 канале есть только одна более-менее мощная точка с сигналом -59 dBm, что, впрочем, не сильно страшно, внутриканальные помехи достаточно легко преодолеваются на уровне протокола, что нельзя сказать о межканальных. С этим здесь достаточно неплохо, мощных источников на соседних каналах практически нет, чего не скажешь о начале диапазона, где есть очень мощная точка -27 dBm на первом канале (в реальности она стоит в 20 см от тестируемого нами роутера).
С каналом определились, теперь создадим профиль безопасности для нашей беспроводной сети в Wireless – Security Profiles. В нем оставляем только протокол WPA2 PSK и указываем ключ сети (пароль от Wi-Fi).
Теперь переходим в настройки интерфейса wlan1 и на закладке Wireless последовательно меняем следующие опции: Mode – ap bridge – устанавливает режим точки доступа, Band – 2GHz-only-N – только n-режим, Channel Width – 20 MHz – одна из спорных настроек, устанавливает ширину канала, но в условиях реальной загруженности диапазона 2,4 ГГц в городских условиях мы считаем что стабильные 75 Мбит/с (при стандартной ширине канала в 20 МГц) лучше, чем 150 Мбит/с время от времени (при 40 МГц).
Далее указываем желаемый SSID, опцию Wireless Protocol устанавливаем, как 802.11, в Security Profile указываем созданный нами ранее профиль и выключаем WPS: WPS Mode – disabled. На этом базовая настройка беспроводной сети закончена.
Все что вам остается – это включить беспроводной интерфейс и добавить его в сетевой мост bridge1 вашей локальной сети.
Что нужно сделать после настройки
После того, как вы все настроили и убедились в работоспособности всех функций роутера следует сделать резервную копию настроек, это позволит в случае чего быстро развернуть готовую конфигурацию, что важно, если настройки вашего роутера сложнее чем базовые. Для этого перейдите в раздел Files и нажмите кнопку Backup, укажите имя резервной копии и пароль к файлу, после чего скачайте и сохраните резервную копию в надежном месте.
Мы рекомендуем создавать резервную копию после каждого изменения настроек роутера, это не займет много времени, но позволит существенно его сэкономить в нештатной ситуации.
Также важно постоянно поддерживать в актуальном состоянии ПО роутера, теперь, когда ваше устройство имеет доступ в интернет, обновить RouterOS становится очень просто. Перейдите в System – Packages и нажмите Check For Updates, если доступна новая версия RouterOS, то вам будет предложено скачать и установить ее.