Главная - Настройка роутера
Mikrotik: Полезные советы по настройке. Mikrotik: Полезные советы по настройке Защита сервера от внешнего взлома через микротик

Mikrotik - маршрутизатор, роутер, точка доступа.

Как настроить Mikrotik? Как защитить Mikrotik от вражеских вторжений из вне?
Первоначальная настройка Mikrotik — роутера (маршрутизатора). Первоначальная защита Mikrotik.

Для защиты Mikrotik маршрутизатора необходимо:
1. Сменить пароля администратора.
2. Отключить лишние, не востребованные сервисы.
3. Включить NAT
4. Настроить Firewall — организовать фильтрацию и прохождение пакетов.

P.S. после команды setup, R, — роутер сотрёт все настройки, но не пароли, к нему можно подключиться через WinBox по IP — 192.168.88.1

Настройка из консоли:
имя admin, пароль пустой.
Если вы забудете пароль — вас спасёт только полный резет — переустановка маршрутизатора!
Меняем пароль:
>user edit admin password
Открывается редактор, — вводим новый пароль. Для сохранения и ыхода жмём Ctrl+o (контрл и одновременно букву о)
Можно добавить нового пользователя, на всякий случай:
>use add name=mkt password=12345 group=full

Смотрим какие есть интерфейсы:
>interface print


0 X ;;; WAN
ether1 ether 1500 1600 1600
1 X ;;; LAN
ether2 ether 1500 1600 1600

Активируем нужные:
>interface enable 0
>interface enable 1
>interface print
Flags: D — dynamic, X — disabled, R — running, S — slave
# NAME TYPE MTU L2MTU MAX-L2MTU
0 R ;;; WAN
ether1 ether 1500 1600 1600
1 R ;;; LAN
ether2 ether 1500 1600 1600

Смотрим IP:
> ip address print
Для примера возьмём следующие параметры:
Провайдер(интернет) — 195.196.10.50
GW (шлюз) — 195.196.10.49
DNS server — 195.196.11.10, 195.196.12,10
Локальная сеть (внутренняя) — 192.168.18.0/24
Добавляем ip провайдера:
>ip address add address=195.196.10.10/30 interface=ether1
Добавляем локалку:
>ip address add address=192.168.18.0/24 interface=ether2
Смотрим что вышло:
> ip address print
Добавляем шлюз прова:
> ip route add gateway=195.196.10.49
Смотрим:
> ip route print

Добавляем DNS провайдера интернет:
> ip dns set servers=195.196.11.10,195.196.12,10 allow-remote-request=yes

Включить NAT (masquerade):
> ip firewall nat add chain=srcnat action=masquerade out-interface=ether1
После этих настроек у внутренней сети появится интернет.

Настроить Firewall, т.е. необходимо организовать фильтрацию пакетов (цепочки input), и естественно чтобы после защиты ваша сеть смогла работать — организовать прохождение пакетов — это цепочки forward:

P.S Для начала зайдите — через WinBox — IP -> Firewall -> Service Port — отключите всё Disable, оставьте то что необходимо, а именно в нашем случае pptp (VPN server), и если вы хотите задействовать встроенный FTP — ftp

Добавляем правила:
ip firewall filter add chain=input connection-state=invalid action=drop comment=»Drop Invalid connections»
ip firewall filter add chain=input connection-state=established action=accept comment=»Allow Established connections»
ip firewall filter add chain=input protocol=udp action=accept comment=»Allow UDP»
ip firewall filter add chain=input protocol=icmp action=accept comment=»Allow ICMP»
ip firewall filter add chain=input src-address=192.168.0.0/24 action=accept comment=»Allow access from local network»
Следующие два правила — если вы хотите настроить доступ через ваш Mikrotik, в вашу внутреннюю сеть по VPN (pptp server)
Первое — открывает порт 1723, второе разрешает протокол 47(GRE).
ip firewall filter add chain=input action=accept protocol=tcp dst-port=1723 comment=»Allow access to VPN»
ip firewall filter add chain=input action=accept protocol=gre comment=»If you have a VPN (pptp server)»
Следующее правило позволяет подключаться к вашему Mikrotik через WinBox (порт по умолчанию 8291)
P.S Естественно нужно настроить «IP Service LIST» IP -> Services -> IP Service List, щёлкнуть мышкой по строчке winbox, откроется окно редактирования данных -> изменить IP на тот, с которого вы будете подключаться, тоже самое необходимо проделать с SSH и WWW, все остальные сервисы отключить — disable. (ip_address_allow — ваш IP)
ip firewall filter add chain=input action=accept protocol=tcp src-address=ip_address_allow dst-port=8291 comment=»Allow access over WinBox»
ip firewall filter add chain=input action=accept protocol=tcp src-address=ip_address_allow dst-port=22 comment=»Allow access over SSH»
ip firewall filter add chain=input action=accept protocol=tcp src-address=ip_address_allow dst-port=80 comment=»Allow access over WWW»
Если вы хотите задействовать встроенный FTP:
ip firewall filter add chain=input action=accept protocol=tcp src-address=ip_address_allow dst-port=21 comment=»Allow access to FTP»
Всё остальное рубим:
ip firewall filter add chain=input action=drop comment=»Drop reject all other»

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

ip firewall filter add chain=forward protocol=tcp connection-state=invalid action=drop comment=»Drop invalid connections»
ip firewall filter add chain=forward connection-state=established action=accept comment=»Allow already established connections»
ip firewall filter add chain=forward connection-state=related action=accept comment=»Allow related connections»
На всякий случай разрешаем прохождение GRE протокола:
ip firewall filter add chain=forward protocol=gre action=accept comment=»Allow GRE»
Если у вас есть сервер VPN, для запуска RDP (удалённый рабочий стол) разрешить прохождение на порт 3389.
ip firewall filter add chain=forward protocol=tcp dst-port=3389 action=accept comment=»Allow 3389″

Блокируем IP адреса внутренних сетей.
ip firewall filter add chain=forward src-address=0.0.0.0/8 action=drop
ip firewall filter add chain=forward dst-address=0.0.0.0/8 action=drop
ip firewall filter add chain=forward src-address=127.0.0.0/8 action=drop
ip firewall filter add chain=forward dst-address=127.0.0.0/8 action=drop
ip firewall filter add chain=forward src-address=224.0.0.0/3 action=drop
ip firewall filter add chain=forward dst-address=224.0.0.0/3 action=drop

Либо:
ip firewall filter add chain forward protocol=udp action=accept comment=»Allow UDP»
ip firewall filter add chain forward protocol=icmp action=accept comment=»Allow ICMP Ping»
Либо:
Для icmp, udp и tcp трафика создадим цепочки, куда будем сбрасывать нежелательные пакеты:
Создадим переход в новые цепочки
ip firewall filter add chain=forward protocol=tcp action=jump jump-target=tcp
ip firewall filter add chain=forward protocol=udp action=jump jump-target=udp
ip firewall filter add chain=forward protocol=icmp action=jump jump-target=icmp

Создадим правила tcp для цепочке tcp и запретим некоторые порты:
ip firewall filter add chain=tcp protocol=tcp dst-port=69 action=drop comment=»Deny TFTP»
ip firewall filter add chain=tcp protocol=tcp dst-port=111 action=drop comment=»Deny RPC portmapper»
ip firewall filter add chain=tcp protocol=tcp dst-port=135 action=drop comment=»Deny RPC portmapper»
ip firewall filter add chain=tcp protocol=tcp dst-port=137-139 action=drop comment=»Deny NBT»
ip firewall filter add chain=tcp protocol=tcp dst-port=445 action=drop comment=»Deny Cifs»
ip firewall filter add chain=tcp protocol=tcp dst-port=2049 action=drop comment=»Deny NFS»
ip firewall filter add chain=tcp protocol=tcp dst-port=12345-12346 action=drop comment=»Deny NetBus»
ip firewall filter add chain=tcp protocol=tcp dst-port=20034 action=drop comment=»Deny NetBus»
ip firewall filter add chain=tcp protocol=tcp dst-port=3133 action=drop comment=»Deny BackOriffice»
ip firewall filter add chain=tcp protocol=tcp dst-port=67-68 action=drop comment=»Deny DHCP»

Запретим udp порты для цепочки udp:
ip firewall filter add chain=udp protocol=udp dst-port=69 action=drop comment=»Deny TFTP»
ip firewall filter add chain=udp protocol=udp dst-port=111 action=drop comment=»Deny PRC portmapper»
ip firewall filter add chain=udp protocol=udp dst-port=135 action=drop comment=»Deny PRC portmapper»
ip firewall filter add chain=udp protocol=udp dst-port=137-139 action=drop comment=»Deny NBT»
ip firewall filter add chain=udp protocol=udp dst-port=2049 action=drop comment=»Deny NFS»
ip firewall filter add chain=udp protocol=udp dst-port=3133 action=drop comment=»Deny BackOriffice»

Разрешим только необходимые icmp коды для icmp цепочки:
ip firewall filter add chain=icmp protocol=icmp icmp-options=0:0 action=accept comment=»Drop invalid connections»
ip firewall filter add chain=icmp protocol=icmp icmp-options=3:0 action=accept comment=»Dllow established connections»
ip firewall filter add chain=icmp protocol=icmp icmp-options=3:1 action=accept comment=»Allow already established connections»
ip firewall filter add chain=icmp protocol=icmp icmp-options=4:0 action=accept comment=»Allow source quench»
ip firewall filter add chain=icmp protocol=icmp icmp-options=8:0 action=accept comment=»Allow echo request»
ip firewall filter add chain=icmp protocol=icmp icmp-options=11:0 action=accept comment=»Allow time exceed»
ip firewall filter add chain=icmp protocol=icmp icmp-options=12:0 action=accept comment=»Allow parameter bad»
ip firewall filter add chain=icmp action=drop comment=»deny all other types»

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

Защита Mikrotik

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

Начнем с первичной защиты нашего маршрутизатора – созданию стойкого к взломам логина и пароля администратора. По умолчанию, в Mikrotik используется логин admin и пустой пароль. Давайте исправим это: подключаемся через Winbox к нашему маршрутизатору и переходим в раздел настройки System Users . Видим пользователя admin , который настроен по умолчанию:

Добавим нового пользователя, который будет обладать более строгими к взлому реквизитами (логин/пароль). Для этого, нажмите на значок «+» в левом верхнем углу:


Обратите внимание, в поле Group необходимо выбрать full , чтобы предоставить администраторские привилегии для пользователя. После произведенных настроек удаляем пользователя admin и отныне используем только нового пользователя для подключения к интерфейса администрирования.

2. Сервисные порты

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


Если вы используете доступ к Mikrotik только по Winbox, то мы предлагаем Вам отключить все сервисы, за исключением winbox и ssh (на всякий случай оставить ssh), а именно:

  • api-ssl
  • www-ssl

Для отключения нажмите красный значок «х». Так как мы оставили SSH доступ к серверу, давайте «засекьюрим» его, сменив порт с 22 на 6022. Для этого, дважды нажмите на сервисный порт SSH и в открывшемся окне укажите настройку:


Нажимаем Apply и ОК .

3. Защита от брут – форса (перебора)

На официальном сайте Mikrotik существуют рекомендации о том, как защитить свой маршрутизатор от перебора паролей по FTP и SSH доступу. В предыдущем шаге мы закрыли FTP доступ, поэтому, если Вы строго следуете по данной инструкции, то используйте только код для защиты от SSH – атак. В противном случае, скопируйте оба. Итак, открываем терминал управления маршрутизатором. Для этого, в правом меню навигации нажмите New Terminal . Последовательно скопируйте указанный ниже код в консоль роутера:

/ip firewall filter #Блокируем атаки по FTP add chain=input protocol=tcp dst-port=21 src-address-list=ftp_blacklist action=drop \ comment="drop ftp brute forcers" add chain=output action=accept protocol=tcp content="530 Login incorrect" dst-limit=1/1m,9,dst-address/1m add chain=output action=add-dst-to-address-list protocol=tcp content="530 Login incorrect" \ address-list=ftp_blacklist address-list-timeout=3h #Блокируем атаки по SSH add chain=input protocol=tcp dst-port=22 src-address-list=ssh_blacklist action=drop \ comment="drop ssh brute forcers" disabled=no add chain=input protocol=tcp dst-port=22 connection-state=new \ src-address-list=ssh_stage3 action=add-src-to-address-list address-list=ssh_blacklist \ address-list-timeout=10d comment="" disabled=no add chain=input protocol=tcp dst-port=22 connection-state=new \ src-address-list=ssh_stage2 action=add-src-to-address-list address-list=ssh_stage3 \ address-list-timeout=1m comment="" disabled=no add chain=input protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage1 \ action=add-src-to-address-list address-list=ssh_stage2 address-list-timeout=1m comment="" disabled=no add chain=input protocol=tcp dst-port=22 connection-state=new action=add-src-to-address-list \ address-list=ssh_stage1 address-list-timeout=1m comment="" disabled=no

Создание резервной копии конфигурации

На случай выхода из строя или аварии роутера, необходимо иметь под рукой его конфиг для оперативного восстановления. Сделать его крайне просто: открываем терминал, нажав в меню навигации New Terminal и указываем следующую команду:

Export file=backup2020-02-10_01:01:22

Файл можно обнаружить нажав в меню навигации на раздел Files . Скачайте его себе на ПК, нажав правой кнопкой мыши и выбрав Download


Блокировка доступа к сайта

В рабочее время сотрудники должны работать. Поэтому, давайте заблокируем доступ к развлекательным ресурсам, таким как Youtube, Facebook и Вконтакте. Для этого, перейдите в раздел IP Firewall . Нажимаем на вкладку Layer 7 Protocol и затем нажимаем на значок «+» в левом верхнем углу:


Даем имя нашему правилу, которое будет оперировать на 7 уровне модели OSI, а в разделе Regexp добавляем:

^.+(youtube.com|facebook.com|vk.com).*$

Нажимаем OK и переходим к вкладке Filter Rules и нажимаем значок «+»:


В разделе Chain выбираем Forward. Переходим в том же окне во вкладку Advanced и в поле Layer 7 Protocol выбираем созданное нами правило блокировки:


Переходим во вкладку Action , и там выбираем Action = Drop:


По окончанию настроек нажимаем Apply и OK .

Полезна ли Вам эта статья?

Пожалуйста, расскажите почему?

Нам жаль, что статья не была полезна для вас:(Пожалуйста, если не затруднит, укажите по какой причине? Мы будем очень благодарны за подробный ответ. Спасибо, что помогаете нам стать лучше!

Брутфорс - это когда кто-то пытается, порой долго и упорно, подобрать наш пароль к чему-угодно методом перебора. В Linux для защиты от этого успешно используется fail2ban. В микротике такого удовольствия нет, поэтому мы будем иметь удовольствие создавать защиту от brutforce своими руками.

Полный листинг команд, который вы наверняка видели в официальной wiki (http://wiki.mikrotik.com/wiki/Bruteforce_login_prevention):

add chain=input protocol=tcp dst-port=22 src-address-list=ssh_blacklist action=drop comment="drop ssh brute forcers" disabled=no
add chain=input protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage3 action=add-src-to-address-list address-list=ssh_blacklist address-list-timeout=10d comment="" disabled=no
add chain=input protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage2 action=add-src-to-address-list address-list=ssh_stage3 address-list-timeout=1m comment="" disabled=no
add chain=input protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage1 action=add-src-to-address-list address-list=ssh_stage2 address-list-timeout=1m comment="" disabled=no
add chain=input protocol=tcp dst-port=22 connection-state=new action=add-src-to-address-list address-list=ssh_stage1 address-list-timeout=1m comment="" disabled=no

И в сети много где есть этот наборчик. Я просто чуть-чуть объясню, что он делает.

Идея такова: даем три легитимные попытки в течение короткого времени на коннект по ssh (22/tcp, если у вас другой порт - поставте свой). При четвертой попытке - баним на 10 дней. Имеем право. Итак, по шагам.

1. При установлении нового соединения (connection-state=new) с портом 22/tcp мы запоминаем ip источника и помещаем его в список "ssh_stage1" на 1 минуту:

add chain=input protocol=tcp dst-port=22 connection-state=new action=add-src-to-address-list address-list=ssh_stage1 address-list-timeout=1m comment="" disabled=no

2. Если в течение этой минуты этот "кто-то" (а его мы запомнили в "ssh_stage1") еще раз захочет установить новое соединение с 22/tcp, мы его добавим в список "ssh_stage2", и тоже на 1 минуту:

add chain=input protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage1 action=add-src-to-address-list address-list=ssh_stage2 address-list-timeout=1m comment="" disabled=no

3. Если в течение этой минуты этот "кто-то" (теперь он в "ssh_stage2") опять захочет соединиться с 22/tcp, мы его добавляем в список "ssh_stage3" (да, вы угадали, опять на 1 минуту):

add chain=input protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage2 action=add-src-to-address-list address-list=ssh_stage3 address-list-timeout=1m comment="" disabled=no

4. Если же он упорный, то что же, мы его на 10 дней добавим в наш "черный список" "ssh_blacklist", ибо нефиг.

add chain=input protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage3 action=add-src-to-address-list address-list=ssh_blacklist address-list-timeout=10d comment="" disabled=no

5. А этой командой всех из списка "ssh_blacklist" баним без тени сомнения (обратите внимание, что правило по-умолчанию неактивно):

add chain=input protocol=tcp dst-port=22 src-address-list=ssh_blacklist action=drop comment="drop ssh brute forcers" disabled=yes

В реальности, когда я сделал такую схему и попробовал соединиться из консоли Linux к внешнему ip моего mikrotik, уже со второй попытки (а не с 3 или 4) ip "злоумышленника" попал в список " ssh_blacklist ". Я ssh к микротик не использую, поэтому в моем случае это не смертельно, но если вы в самом деле подключаетесь так удаленно, то сначала может быть неплохо не включать правило (disabled=yes), отвечающее за бан . В список пускай попадают, нет вопросов. Оцените на практике, сколько раз вам требуется подключаться подряд до попадания всписок бана. После проверок активируйте правило бана по списку " ssh_blacklist "! Прошу прощения, что команды длинные, но парсер съедает обратный слеш, так что приходится в одну строку.



 


Читайте:



Flood Control ВКонтакте: рассказываем почему возникает проблема и как ее можно убрать Значит flood control

Flood Control ВКонтакте: рассказываем почему возникает проблема и как ее можно убрать Значит flood control

Быстрое решение Чаще всего такая ошибка выскакивает, когда ставишь лайк. Появляется окно Flood Control и лайк не ставится. Ошибка бывает и на...

Зарядное устройство на основе блока питания ATX Лабораторный блок питания на шим контроллере 3528

Зарядное устройство на основе блока питания ATX Лабораторный блок питания на шим контроллере 3528

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

Что делать если провод не заряжает айфон

Что делать если провод не заряжает айфон

Оригинальные зарядные устройства для устройств Apple стоят недешево, поэтому многие предпочитают использовать китайские копии, которые отличаются...

Виртуальная машина для Mac Виртуальная windows на mac os

Виртуальная машина для Mac Виртуальная windows на mac os

macOS – отличная операционная система, которая, как и «конкурентная» Windows или открытая Linux, имеет свои достоинства и недостатки. Любую из этих...

feed-image RSS