Сравнение Закладки
Бесплатно по России:
8 800 700 97 66
Санкт-Петербург:
8 812 385 40 55
Перезвонить вам?

Настройка фильтрации трафика на Mikrotik. Часть 2

Перед настройкой файрвола

В этой и следующей части статьи используется следующая топология сети:

  • WAN – 172.30.10.26/24, Default Gateway 172.30.10.1
  • DMZ – 10.10.10.1./24
  • LAN – 192.168.88.1/24

Как это настроить - смотрите статью "Разумная настройка RB2011"

Немного повторяя статью по настройке RB 2011, я позволю себе напомнить, что для начала необходимо отключить неиспользуемые на маршрутизаторе сервисы. Фактически для настройки и работы с маршрутизатором нам достаточно сервисов:

  • Winbox – порт 8291 TCP;
  • Ssh – порт 22 TCP;
  • www – порт 80 TCP;

Этап 1. Отключение ненужных сервисов

Открываем меню IP / Services и воспользовавшись кнопкой Disable отключаем ненужные нам сервисы.

IP Services Меню

Если вы используете для работы с Mikrotik протокол ssh, хорошей идеей будет изменить его стандартный порт на какой-нибудь другой, например 65522. Для этого дважды щелкаем по строке с ssh и в открывшемся окне меняем порт:

Изменение стандартного порта

Нажав ОК, подтверждаем выбор.

Также можно поменять порты winbox и www. Однако мы не наблюдали, чтобы порт 8291 (winbox) подвергался атаке по подбору пароля.

А вот в случае атаки порта ssh к маршрутизатору, находящемуся на внешнем IP адресе, производится до нескольких сотен попыток несанкционированного подключения в сутки.

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

Для этого дважды щелкаем по строке с www и заполняем поле available from :

Изменение стандартного порта

Нажав кнопку ОК, подтверждаем выбор.

Этап 2. Отключение поиска соседей и mac-сервера на внешних интерфейсах

Заходим в меню ip/neighbors, переходим на закладку Discovery Interfaces и отключаем все кроме интерфейса LAN, нажатием на кнопку Disable.

discovery interfaces

Далее идем в меню Tools/MAC Server и на закладках Telnet Interfaces и WinBox Interfaces добавляем интерфейс LAN, удаляем если есть любые другие интерфейсы и отключаем интерфейс "*all"

Tool\Mac server

Это не даст возможности подключиться к маршрутизатору снаружи, при помощи MAC - Telnet

Если кто-то считает что это излишние меры безопасности, вот что видит на WAN -портах один из установленных в работу маршрутизаторов.

Список wan-портов

При этом на два из них удалось зайти mac-telnet и получить доступ к управлению.

Этап 3. Пользователь и пароль

Теперь надо заменить пользователя по умолчанию и установить ему пароль.

Переходим в меню System/Users.

System\Users

Создаем нового пользователя с правами администратора.

Создание нового пользователя

После чего закрываем программу Winbox, запускаем его заново и заходим под новым пользователем, открываем меню System/Users и отключаем учетную запись администратора.

<p><img src="/images/cms/news/firewall_2.jpg" alt="Изменение стандартного порта" /></p>

На этом подготовительные операции можно считать законченными. Переходим к настройке firewall.

Настройка файрвола

В предыдущей части статьи мы с вами узнали, что:

  1. Трафик, идущий на маршрутизатор, попадает в цепочку файрвола input;
  2. Трафик, создаваемый маршрутизатором, попадает в цепочку файрвола output;
  3. Трафик, идущий через маршрутизатор, попадает в цепочку forward;
  4. Существуют четыре состояния соединения: new, established, related, invalid.

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

  1. Мы работаем только с цепочкой input;
  2. Мы пропускаем соединения с состоянием established и related, как уже установленные;
  3. Мы пропускаем протокол ICMP;
  4. Мы считаем как WAN, так и DMZ недоверенными сетями;
  5. Мы разрешаем прохождение некоторого трафика на маршрутизатор. Остальной трафик блокируем.

Теперь давайте определим разрешенный трафик с недоверенных интерфейсов. Итак, мы разрешаем:

  1. TCP порт 8291 – winbox, удаленное управление снаружи;
  2. 65522 ssh на измененном порту;
  3. Предположим, что у нас в дальнейшем будет настраиваться VPN-сервер по протоколу PPTP и мы разрешим порт 1723 по протоколу TCP.

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

Определяем так называемые bogon-сети (сети приватных или не распределенных IP-адресов).

  • /ip firewall address-list
  • add address=0.0.0.0/8 disabled=no list=BOGON
  • add address=10.0.0.0/8 disabled=no list=BOGON
  • add address=100.64.0.0/10 disabled=no list=BOGON
  • add address=127.0.0.0/8 disabled=no list=BOGON
  • add address=169.254.0.0/16 disabled=no list=BOGON
  • add address=172.16.0.0/12 disabled=no list=BOGON
  • add address=192.0.0.0/24 disabled=no list=BOGON
  • add address=192.0.2.0/24 disabled=no list=BOGON
  • add address=192.168.0.0/16 disabled=no list=BOGON
  • add address=198.18.0.0/15 disabled=no list=BOGON
  • add address=198.51.100.0/24 disabled=no list=BOGON
  • add address=203.0.113.0/24 disabled=no list=BOGON
  • add address=224.0.0.0/4 disabled=no list=BOGON
  • add address=240.0.0.0/4 disabled=no list=BOGON

Должно получится вот так:

bogon-сети

И запрещаем с этих подсетей соединения на WAN-порт маршрутизатора

  • /ip firewall filter
  • add action=drop chain=input in-interface=WAN src-address-list=BOGON

Разрешаем все уже установленные подключения (connection state=established)

  • /ip firewall filter
  • add chain=input connection-state=established

Разрешаем все зависимые подключения (connection state=related):

  • /ip firewall filter
  • add chain=input connection-state=related

Разрешаем ICMP:

  • /ip firewall filter
  • add chain=input protocol=icmp

Разрешаем новые соединения по портам 65522 и 8291 с любого интерфейса

  • /ip firewall filter
  • add chain=input connection-state=new dst-port=8291,65522 protocol=tcp

Разрешаем новые соединения по порту 1723 (PPTP) любого интерфейса:

  • /ip firewall filter
  • add chain=input dst-port=1723 protocol=tcp

И блокируем все новые соединения со всех интерфейсов, кроме LAN:

  • /ip firewall filter
  • add action=drop chain=input connection-state=new in-interface=!LAN

Должно получиться следующее:

 базовая настройка безопасности

На этом базовая настройка безопасности маршрутизатора завершена.

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

Почитать другие части статьи:

Технический директор Илья Князев (MTCNA, MTCWE, MTCTCE)

175258
Комментарии (68)

APTEM.ru03.10.2016

"Мы работаем только с цепочкой input;" -- а почему? В этом случае правило типа "add action=drop chain=input in-interface=WAN src-address-list=BOGON" прекрасно пропускает все богоны в NAT, то есть, на клиентов в LAN. Выходит странно - WAN-интерфейс роутера от богонов защитили, а клиентов в LAN - нет.

ответить
Сменить картинку

Руслан08.11.2016

Ув. Гуру, кто здесь прав?

ответить
Сменить картинку

Evgheny13.04.2016

подскажите пожалуйста все ли в порядке у меня с порядковым расположением правил
(все работает просто хочу максимально правильно все сделать..)
схема такая 2wan, в локалке сервер 192,168,1,254
отправляю и блокирую всю активность добавлением в список "DENY"

ip firewall nat print

0 ;;;DNS-Mikrotik
chain=dstnat action=redirect protocol=udp in-interface=bridge-local dst-port=53

1 ;;; negative snat
chain=srcnat action=masquerade protocol=tcp dst-address=192.168.1.254 out-interface=bridge-local dst-port=80

2 ;;; masquerade
chain=srcnat action=masquerade
3 ;;; negative dnat
chain=dstnat action=dst-nat to-addresses=192.168.1.254 to-ports=80 protocol=tcp src-address-list=DENY dst-port=80

4 ;;; wan2 web page
chain=dstnat action=dst-nat to-addresses=192.168.1.254 to-ports=80 protocol=tcp in-interface=ISP2 wlan1 dst-port=80



ip firewall filter print

0 chain=input action=drop src-address-list=BOGON in-interface=!bridge-local

1 chain=input action=accept connection-state=established

2 chain=input action=accept connection-state=related

3 chain=input action=accept protocol=icmp

4 ;;; pptp
chain=input action=accept protocol=tcp dst-port=1723

5 ;;; mikrotik winbox
chain=input action=accept connection-state=new protocol=tcp dst-port=56791
6 ;;; drop_new_all_gavno
chain=input action=drop connection-state=new in-interface=!bridge-local

7 ;;; for_webpage
chain=forward action=accept dst-address=192.168.1.254

8 ;;; for_webpage
chain=forward action=accept src-address=192.168.1.254

9 ;;; balance_negative src
chain=forward action=drop src-address-list=DENY

10 ;;; balance_negative dst
chain=forward action=drop dst-address-list=DENY

ответить
Сменить картинку

Виктор М.05.02.2016

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

ответить
Сменить картинку

Анатолий03.03.2016

Скриншоты правил выложи. Вообще если инет работает то и к удалённому серверу должен подключаться. В любом случае смотреть надо.

ответить
Сменить картинку

Анатолий03.03.2016

На время отключи все запрещающие правила. И проверь работает ли. Если да то тебе надо настроить разрешающее правило для TCP 3389 и не забыть включить всё обратно.

ответить
Сменить картинку

Сергей15.01.2016

Cпасибо за статью. Но никак не могу разобраться с возникшими чудесами, может быть поможете? У меня CRS109-8G-1S-2HnD-iN, вроде бы сделал все по Вашей инструкции, но видно, где-то накосячил и ни как не могу найти где. Настройки получаю от провайдера, все, что подключено проводами работает ОК, интернет есть. Проблема с wifi подключением - сетевое подключение есть, сам виден и сетевые ресурсы видит и доступ к ним имеет, но с интернетом, какая-то фигня. В браузере страницу не показывает ни по ip ни по домену, при этом внешний IP (например 81.19.93.5 – rambler.ru) без проблем с этого компа пингуется. Кроме того, по RDP c этом компа удается совершенно нормально подключить к удаленному (не локальному) серверу, а вот с отображением web-страниц засада При подключении этого компьютера через wifi к другим сетям (или просто при замене роутера на не Микротик) таких проблем нет Может подскажете, в каком направлении посмотреть, а то уже мозг кипит, а решения нет.. :((

ответить
Сменить картинку

Алексей02.02.2016

DNS на компе проверь. Какие получает комп.

ответить
Сменить картинку

Никита14.12.2015

Здравствуйте. Подскажите пожалуйста. Я хочу настроить подключение RDP с внешки по определенному мак адресу. Когда я настраиваю проброс портов без мак адреса, всё подключается и работает. Если добавляю в правило мак адрес, подключится уже не могу. пробовал с разных устройств. Что делать? есть еще какие-то пути достижения цели?

ответить
Сменить картинку

Илья Князев17.12.2015

Изучить функционал Bridge. В частности Bridge NAT

ответить
Сменить картинку

Сергей28.11.2015

Скажите, пожалуйста, я прописал правила с BOGON, и теперь же не могу попасть не через web интерфейс и не через winbox в mikrotik. Пытаюсь по SSH пройти, то же самое. Подскажите, как еще можно зайти?

ответить
Сменить картинку

Илья Князев11.12.2015

Mac-telnet через winbox.
Скорее всего в bogon интерфейс не указали.

ответить
Сменить картинку

Mark10.11.2015

Подскажите, у части пользователей 3 из 30 постоянно происходит дисконект PPTP
ошибка "terminating... - peer is not responding"
причем ранее работало очень стабильно (вместо Mikrotik стоял Linux сервер)

ответить
Сменить картинку

Илья Князев10.11.2015

Не знаю что сказать. По фотографии лечение затруднительно )

ответить
Сменить картинку

lazynchik28.10.2015

Есть французкий сервер под Debian 8, с Apache2+MySQL, на нем установлен Zabbix 2.4.6. Есть Mikrotik CCR1016-12G с открытым IP который и раздает интернет на другие микротики. Между сервером Debian 8 и этим микротиком создан простой ipip-туннель. Задача заключается в том, чтобы Zabbix видел устройства дальше данного микротика. Ping и snmpwalk с сервера дальше этого микротика ничего видит. В чем проблема, куда копать уже не знаю, перерыл кучу мануалов и форумов, а ответа так и не нашел?!

ответить
Сменить картинку

Илья Князев10.11.2015

Проблема скорее всего в маршрутизации. Смотрите маршруты.

ответить
Сменить картинку

acella08.05.2015

Ну и зачем эти адреслисты с богоном, если и так всё input дропается кроме ремоута

ответить
Сменить картинку

Илья Князев07.06.2015

Вот как раз чтобы и с ремоута не прошли.

ответить
Сменить картинку

mikis30.04.2015

Две сети, 192.168.170.0 - это вай фай и 192.168.10.0 -это локальная сеть. В бридж не объединял, dhcp только на wi-fi сеть. Подскажите как сделать доступ с локальной сети в сеть Wi-Fi и обратно?

ответить
Сменить картинку

Илья Князев07.06.2015

Задача по маршрутизации.
Можете задать вопрос на нашем форуме.

ответить
Сменить картинку

Денис04.04.2015

У меня при копировании команд, терминал ругается - сначала на двойное равно, потом на то что строка заканчивается не там где надо, потом на ошибку в синтаксисе - такое ощущение что я что-то не так делаю:

попытка 1 слово radius самопроизвольно подставляется когда я пишу ADD, двойное равно - тоже само.
[admin@MikroTik] >> radius add address==0.0.0.0/8 disabled=no list=BOGON
syntax error (line 1 column 20)

попытка 2 - теперь я стер слово radius и второе равно
[admin@MikroTik] >> add address=0.0.0.0/8 disabled=no list=BOGON
bad command name add (line 1 column 1)

что не так, подскажите, пожалуйста?

ответить
Сменить картинку

Денис04.04.2015

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

ответить
Сменить картинку

Сергей10.02.2015

Добрый день!

Илья, подскажите, пожалуйста, добавил пользователя с правами администратора и прописал что под ним можно подключаться только с определенного локального IP (winbox - user list - allowed address).
Пробую подключиться с другого локального ip с тем же логином / паролем и подключение в winbox проходит.
В таблице firewall есть правило - разрешать подключения input из локальной сети . Возможно оно пропускает подключение?

Заранее благодарен.

ответить
Сменить картинку

Илья Князев25.02.2015

Странно, не должно такого быть.
Адрес в каком виде прописали ?
К Winbox подключаетесь по MAC или по IP

ответить
Сменить картинку

Сергей25.02.2015

Илья, подключаюсь по IP.

ответить
Сменить картинку

Илья Князев25.02.2015

Адреса подключения можно править в /IP Services (Available From...)
И можно в /System Users .
Если второе не работает, это ошибка в RouterOS. Вам тогда нужно обратиться к производителю (support@mikrotik.com). В письме описать проблему и приложить файл Suppout.rif
Можно писать на русском языке.

ответить
Сменить картинку

Filipp20.10.2014

Возможно поставить ограничение, чтобы на порту клиент мог использовать только один IP адрес-? как это делается?

ответить
Сменить картинку

Илья Князев20.10.2014

Не совсем понятен вопрос. Наверное можно выставить свойство arp на интерфейсе в reply-only и руками внести связку ip и mac адреса в arp-таблицу.

ответить
Сменить картинку

Filipp21.10.2014

Хотим использовать свитчи для провайдерских услуг, конечные устройства перед клиентами. Клиентам выделяется по (1,2-10) белых IP адресов на 1-2-3 порта, задача - ограничить возможность клиентов выставлять другие IP на этих портах, кроме заданных.

ответить
Сменить картинку

Filipp22.10.2014

Делали на D-link это с помощью ACL правил, разрешали списком на порту IP, остальные запрещали. Если делать на уровне IP то приходится выделять микроподсети, в итоге для одного IP сразу "улетает" 3 дополнительных белых IP. Что довольно расточительно.

ответить
Сменить картинку

Илья Князев03.04.2015

Тут смотря какой свитч вы хотите использовать. Если это устройство под SwOS то используйте закладку ACL
Если RouterOS то используйте /interface ethernet switch acl в тех моделях, где это поддерживается.

ответить
Сменить картинку

Filipp22.10.2014

Предложенный Вами способ завязывается на мас адрес клиента. В случае физ. лиц это еще приемлемо, в случае юр. лиц завязывать завязывать работоспособность канала на на оборудование не очень удобно и не красиво.

ответить
Сменить картинку

Илья Князев22.10.2014

К сожалению пока на коммутаторах такой функционал не реализован.
Реализован на bridge.

ответить
Сменить картинку

Filipp23.10.2014

Что такое bridge-? может такую задачу можно решить по другому?

ответить
Сменить картинку

Илья Князев23.10.2014

10-12 ноября 2014г. мы будем проводить обучение по программе MTCNA.
На ней, в том числе разбирается и этот вопрос. Тренинг платный.
Регистрируйтесь и приходите. Будем рады Вас видеть.

ответить
Сменить картинку

Filipp06.11.2014

Пытаемся сделать на Bridge привязку по mac-ip через ARP List пакеты внутри Bridge продолжают ходить. В настройках Bridge стоит reply-only. Как запретить хостам строить свои ARP List?

ответить
Сменить картинку

Илья Князев25.12.2014

Воспользоваться Bridge Filters

ответить
Сменить картинку

Сергей24.12.2014

согласен не понятен вопрос, но всё же я присвоил IP клиенту и и поставил в статику и он привязан именно к этому IP-адресу

ответить
Сменить картинку

Илья Князев25.12.2014

Тогда в файрволле в 2 цепочках ( input и forward)
in-interface=port src-address=!CLIENT_IP action=drop

ответить
Сменить картинку

Александр11.07.2014

Спасибо за подробную статью.

Есть вопрос:
При включении правила с запретом BOGON сетей блокируется весь траффик, т.е интернет становится не доступен.

/ip firewall filter
add action=drop chain=input in-interface=WAN src-address-list=BOGON

Как только я исключаю из списка BOGON сетей свою LAN сеть (разумеется моя локальная сеть попадает в список BOGON сетей), то все работает.

Возможно, что проблема связана с изменением логики фаервола, в RouterOS 6.X Насколько я понимаю, статья написана до выхода 6й версии.

ответить
Сменить картинку

Александр21.07.2014

Извините, не сообразил сразу... Адрес на WAN интерфейсе должен быть публичным. Поэтому и не работало (на WAN интерфейсе был приватный адрес, который попадал в список BOGON сетей ))

ответить
Сменить картинку

Дима04.06.2014

После применения правила drop к Bogon-листу интернет перестает работать.

ответить
Сменить картинку

Илья Князев04.06.2014

Значит у вас или IP-адрес выданный провайдером находится в диапазоне приватных адресов, или в нем находятся DNS-серверы.

ответить
Сменить картинку

Дима04.06.2014

IP-адрес выданный провайдером на L2TP: 10.60.X.X
DNS серверы: 62.X.X.X
в Bogon-лист не попадают. В чем еще может быть причина?

ответить
Сменить картинку

Илья Князев04.06.2014

Как раз попадает в диапазон 10.0.0.0/8

ответить
Сменить картинку

Дима04.06.2014

Убрал этот диапазон, включил drop и снова пропал ping.

ответить
Сменить картинку

Дима04.06.2014

Может дело в интерфейсе для BOGON drop, наверное надо указывать l2tp-out1, а не ether1?

ответить
Сменить картинку

Илья Князев04.06.2014

Вообще BOGON логично вешать на все внешние интерфейсы.
Или еще, как вариант, у Вас адрес L2TP сервера попадает в этот список.

ответить
Сменить картинку

Дима04.06.2014

Если вешаю на l2tp-out1 то интернет работает даже с 10.0.0.8/8, а с ether1 никак не выходит.

ответить
Сменить картинку

Дима04.06.2014

с 10.0.0.0/8

ответить
Сменить картинку

Илья Князев04.06.2014

Дмитрий, я к сожалению не знаю что Вам ответить. Общение все больше начинает напоминать игру в "угадайку".
Статья описывает лишь общие принципы конфигурации защиты маршрутизатора. К сожалению, рассмотреть все возможные варианты конфигураций не представляется возможным.

ответить
Сменить картинку

Дима04.06.2014

Как только выполняю вашу рекомендацию "Заходим в меню ip/neighbors, переходим на закладку Discovery Interfaces и отключаем все кроме интерфейса LAN, нажатием на кнопку Disable.", то сразу падает L2TP соединение с провайдером. Что с этим можно сделать?

ответить
Сменить картинку

Илья Князев04.06.2014

На самом деле не вижу вообще никакой взаимосвязи между этими событиями.

ответить
Сменить картинку

Сергей13.05.2014

Можно уточнить, что является в терминологии этой части статьи интерфейсом LAN?
В первой части именно так ни один интерфейс назван не был.

ответить
Сменить картинку

Посетитель14.05.2014

В начале второй части статьи обозначена ссылка на то как настроить интерфейсы.
Какие именно интерфейсы настраивать выбираете вы сами.

ответить
Сменить картинку

Сергей14.05.2014

Кажется я понял, что не так в моей голове. Я, слыша слово "интерфейс", представляю физический порт, а нужно IP-адрес?
Если вернуться к изначальному вопросу, то в первой статье "внутренний" IP был привязан к bridge-local, соответственно его и указываем?

ответить
Сменить картинку

Посетитель14.05.2014

LAN - название интерфейса
У интерфейса есть IP-адрес.
Если у вас есть bridge-local вы можете считать его LAN-ом. Или переименовать, если Вам так будет проще.

ответить
Сменить картинку

Garik17.04.2014

Огромное спасибо за статью!

ответить
Сменить картинку

Дмитрий14.03.2014

Отлично, ждём с нетерпением!

ответить
Сменить картинку

ffff11.03.2014

Продолжение конечно будет, пока все силы брошены на подготовку к MUM и Тренингам:
http://spw.ru/company/sobytiya/

ответить
Сменить картинку

Артём17.04.2014

А когда ждать продолжения этих замечательных статей?

ответить
Сменить картинку

Александр09.03.2014

Я извеняюсь,спасибо конечно за неоценимую помощь-но действительно а как быть дальше?

ответить
Сменить картинку

Константин07.03.2014

А где обещанная 3-я часть?

ответить
Сменить картинку

Дмитрий26.02.2014

А продолжение будет?

ответить
Сменить картинку

Алексей26.02.2014

Огромное спасибо за статью! Очень-очень жду продолжение!

ответить
Сменить картинку

Андрей20.01.2014

Огромное спасибо за ваши статьи. Очень хороший, понятный и вменяемый материал для новичков.
С нетерпением ждем продолжения за номером 3. ))

Очень хотелось бы увидеть расширенную настройку фаера, правила для разрешения RDP, блокировки брутфорса на ssh, блокировки ip, пытающихся осуществить подключение к каким-либо портам... и вообще любые статьи по настройке оборудования Микротик. ))

ответить
Сменить картинку

I12.01.2014

Хорошая статья!
А где продолжение?

ответить
Сменить картинку

Посетитель13.01.2014

I, статью уже пишем. В скором будущем разместим.

ответить
Сменить картинку
Комментировать
Сменить картинку
все события