среда, 15 июля 2009 г.

MikroTik - Списки и группы адресов



Когда настраивается маршрутизатор, который отвечает за доступ к сети для нескольких человек, то достаточно прописать правила для конкретных адресов в firewall filter rules и на этом успокоится, но когда ip, которым нужно прописать доступ, не один десяток?

Для решения проблемы управления большим количеством ip адресов в MiktoTik Router OS есть механизм сознания списков адресов и объединения их в группы. Дальше составления правил для firewall-а идет на основании этих групп. Адреса можно добавлять как в ручную, так и динамически с помощью правил.

Рассмотрим ручное добавление адресов:

Перейдем в раздел address-list.
/ip firewall address-list

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

  • Mikrotik - 192.168.0.1

  • PC 5 - 192.168.0.2, web, ftp, mail сервер

  • PC 4 - 192.168.0.10, Администратор, полный доступ

  • PC 1 - 192.168.0.20, Простой доступ: http, https, icq, jabber, ftp

  • PC 2 - 192.168.0.21, Простой доступ: http, https, icq, jabber, ftp

  • PC 3 - 192.168.0.22, Простой доступ: http, https, icq, jabber, ftp


Сразу видно, что адреса можно разделить на три группы доступа:

  • SERVER (192.168.0.2)

  • FULL (192.168.0.10)

  • USER (192.168.0.20, 192.168.0.21, 192.168.0.22)


Группа создается простым упоминанием о ней. Добавим адрес 192.168.0.2 в группу SERVER:

[mkt@MikroTik] /ip firewall address-list> add address="192.168.0.2/32"
list="SERVER" comment="web, ftp, mail server"

Адрес 192.168.0.10 в группу FULL:
[mkt@MikroTik] /ip firewall address-list> add address="192.168.0.10/32"
list="FULL" comment="Administrator"

Адресa 192.168.0.20, 192.168.0.21, 192.168.0.22 в группу USER:
[mkt@MikroTik] /ip firewall address-list> add address="192.168.0.20/32"
list="USER" comment="User #1"
[mkt@MikroTik] /ip firewall address-list> add address="192.168.0.21/32"
list="USER" comment="User #2"
[mkt@MikroTik] /ip firewall address-list> add address="192.168.0.22/32"
list="USER" comment="User #3"

Посмотрим, что у нас получилось:
[mkt@MikroTik] /ip firewall address-list> print
Flags: X - disabled, D - dynamic
# LIST ADDRESS
0 ;;; web, ftp, mail server
SERVER 192.168.0.2
1 ;;; Administrator
FULL 192.168.0.10
2 ;;; User #1
USER 192.168.0.20
3 ;;; User #2
USER 192.168.0.21
4 ;;; User #3
USER 192.168.0.22

Теперь можно пересмотреть наши правила, созданные раннее.
Правила для администратора, написанные ранее:
[mkt@MikroTik] > ip firewall filter add chain=forward dst-address=192.168.0.10/32
action=accept comment="Allow all for admin"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address=192.168.0.10/32
action=accept comment="Allow all for admin"

Можно переписать так:
[mkt@MikroTik] > ip firewall filter add chain=forward dst-address-list="FULL
action=accept comment="Allow all for group FULL"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address-list="FULL
action=accept comment="Allow all for group FULL"

Изменим правила сервера, созданные ранне:
[mkt@MikroTik] > ip firewall filter add chain=forward dst-address=192.168.0.2/32
protocol=tcp src-port=80 action=accept comment="Allow http for server (in)"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address=192.168.0.2/32
protocol=tcp dst-port=80 action=accept comment="Allow http for server (out)"

[mkt@MikroTik] > ip firewall filter add chain=forward dst-address=192.168.0.2/32
protocol=tcp src-port=25 action=accept comment="Allow smtp for server (in)"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address=192.168.0.2/32
protocol=tcp dst-port=25 action=accept comment="Allow smtp for server (out)"

[mkt@MikroTik] > ip firewall filter add chain=forward dst-address=192.168.0.2/32
protocol=tcp src-port=110 action=accept comment="Allow pop for server (in)"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address=192.168.0.2/32
protocol=tcp dst-port=110 action=accept comment="Allow pop for server (out)"

На эти:
[mkt@MikroTik] > ip firewall filter add chain=forward dst-address-list="SERVER"
protocol=tcp src-port=80 action=accept comment="Allow http for group SERVER (in)"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address-list="SERVER"
protocol=tcp dst-port=80 action=accept comment="Allow http for group SERVER (out)"

[mkt@MikroTik] > ip firewall filter add chain=forward dst-address-list="SERVER"
protocol=tcp src-port=25 action=accept comment="Allow smtp for group SERVER (in)"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address-list="SERVER"
protocol=tcp dst-port=25 action=accept comment="Allow smtp for group SERVER (out)"

[mkt@MikroTik] > ip firewall filter add chain=forward dst-address-list="SERVER"
protocol=tcp src-port=110 action=accept comment="Allow pop for group SERVER (in)"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address-list="SERVER"
protocol=tcp dst-port=110 action=accept comment="Allow pop for group SERVER (out)"

Пока что оптимизация не большая, но сейчас займемся правилами для доступа простых пользователей и вместо блока, повторяющегося 3-и раза для каждой машины:
[mkt@MikroTik] > ip firewall filter add chain=forward dst-address=192.168.0.20/32
protocol=tcp src-port=80 action=accept comment="Allow http for pc1 (in)"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address=192.168.0.20/32
protocol=tcp dst-port=80 action=accept comment="Allow http for pc1 (out)"

[mkt@MikroTik] > ip firewall filter add chain=forward dst-address=192.168.0.20/32
protocol=tcp src-port=443 action=accept comment="Allow https for pc1 (in)"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address=192.168.0.20/32
protocol=tcp dst-port=443 action=accept comment="Allow https for pc1 (out)"

[mkt@MikroTik] > ip firewall filter add chain=forward dst-address=192.168.0.20/32
protocol=tcp src-port=21 action=accept comment="Allow ftp for pc1 (in)"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address=192.168.0.20/32
protocol=tcp dst-port=21 action=accept comment="Allow ftp for pc1 (out)"

[mkt@MikroTik] > ip firewall filter add chain=forward dst-address=192.168.0.20/32
protocol=tcp src-port=5190 action=accept comment="Allow icq for pc1 (in)"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address=192.168.0.20/32
protocol=tcp dst-port=5190 action=accept comment="Allow icq for pc1 (out)"

[mkt@MikroTik] > ip firewall filter add chain=forward dst-address=192.168.0.20/32
protocol=tcp src-port=5222 action=accept comment="Allow jabber for pc1 (in)"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address=192.168.0.20/32
protocol=tcp dst-port=5222 action=accept comment="Allow jabber for pc1 (out)"

Создадим блок правил для группы USER:
[mkt@MikroTik] > ip firewall filter add chain=forward dst-address-list="USER"
protocol=tcp src-port=80 action=accept comment="Allow http for group USER (in)"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address-list="USER"
protocol=tcp dst-port=80 action=accept comment="Allow http for group USER (out)"

[mkt@MikroTik] > ip firewall filter add chain=forward dst-address-list="USER"
protocol=tcp src-port=443 action=accept comment="Allow https for group USER (in)"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address-list="USER"
protocol=tcp dst-port=443 action=accept comment="Allow https for group USER (out)"

[mkt@MikroTik] > ip firewall filter add chain=forward dst-address-list="USER"
protocol=tcp src-port=21 action=accept comment="Allow ftp for group USER (in)"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address-list="USER"
protocol=tcp dst-port=21 action=accept comment="Allow ftp for group USER (out)"

[mkt@MikroTik] > ip firewall filter add chain=forward dst-address-list="USER"
protocol=tcp src-port=5190 action=accept comment="Allow icq for group USER (in)"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address-list="USER"
protocol=tcp dst-port=5190 action=accept comment="Allow icq for group USER (out)"

[mkt@MikroTik] > ip firewall filter add chain=forward dst-address-list="USER"
protocol=tcp src-port=5222 action=accept comment="Allow jabber for group USER (in)"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address-list="USER"
protocol=tcp dst-port=5222 action=accept comment="Allow jabber for group USER (out)"

Теперь, когда в сети появляется новая машина, которой нужно дать права для доступ в сеть, то достаточно добавить ее в соответствующую группу адресов.
На пример у нас появляется новая машина с адресом 192.168.0.23, которой нужен доступ как и остальных пользователей группы USER, но за исключением доступа к ICQ и JABBER, ну уж очень болтливый пользователь :)
Добавим его в группу USER, а так же в новую группу BLOCK_IM
[mkt@MikroTik] > ip firewall address-list add address="192.168.0.23/32"
list="USER" comment="User #4"
[mkt@MikroTik] > ip firewall address-list add address="192.168.0.23/32"
list="BLOCK_IM" comment="User #4"

Получим:
[mkt@MikroTik] > ip firewall address-list print
Flags: X - disabled, D - dynamic
# LIST ADDRESS
0 ;;; web, ftp, mail server
SERVER 192.168.0.2
1 ;;; Administrator
FULL 192.168.0.10
2 ;;; User #1
USER 192.168.0.20
3 ;;; User #2
USER 192.168.0.21
4 ;;; User #3
USER 192.168.0.22
5 ;;; User #4
USER 192.168.0.23
6 ;;; User #4
BLOCK_IM 192.168.0.23

Теперь машина с ip адресом 192.168.0.23 уже имеет доступ, оговоренный для группы USER, но не блокируется траффик ICQ и JABBER.
Создадим дополнительные правила для группы BLOCK_IM.
[mkt@MikroTik] > ip firewall filter add chain=forward src-address-list="BLOCK_IM"
protocol=tcp dst-port=5190 action=drop comment="Drop icq for group BLOCK_IM (out)"

[mkt@MikroTik] > ip firewall filter add chain=forward dst-address-list="BLOCK_IM"
protocol=tcp src-port=5190 action=drop comment="Drop icq for group BLOCK_IM (in)"

[mkt@MikroTik] > ip firewall filter add chain=forward src-address-list="BLOCK_IM"
protocol=tcp dst-port=5222 action=drop comment="Drop jabber for group BLOCK_IM (out)"

[mkt@MikroTik] > ip firewall filter add chain=forward dst-address-list="BLOCK_IM"
protocol=tcp src-port=5222 action=drop comment="Drop jabber for group BLOCK_IM (in)"

Посмотрим, что получилось:
[mkt@MikroTik] > ip firewall filter print
Flags: X - disabled, I - invalid, D - dynamic
0 ;;; Drop invalid connection
chain=forward action=drop connection-state=invalid

1 ;;; Allow established connections
chain=forward action=accept connection-state=established

2 ;;; Allow related connections
chain=forward action=accept connection-state=related

3 ;;; Allow UDP
chain=forward action=accept protocol=udp

4 ;;; Allow ICM Ping
chain=forward action=accept protocol=icmp

5 ;;; Allow all for group FULL
chain=forward action=accept dst-address-list=FULL

6 ;;; Allow all for group FULL
chain=forward action=accept src-address-list=FULL

7 ;;; Allow http for group SERVER (in)
chain=forward action=accept protocol=tcp dst-address-list=SERVER src-port=80

8 ;;; Allow http for group SERVER (out)
chain=forward action=accept protocol=tcp src-address-list=SERVER dst-port=80

9 ;;; Allow smtp for group SERVER (in)
chain=forward action=accept protocol=tcp dst-address-list=SERVER src-port=25

10 ;;; Allow smtp for group SERVER (out)
chain=forward action=accept protocol=tcp src-address-list=SERVER dst-port=25

11 ;;; Allow pop for group SERVER (in)
chain=forward action=accept protocol=tcp dst-address-list=SERVER src-port=110

12 ;;; Allow pop for group SERVER (out)
chain=forward action=accept protocol=tcp src-address-list=SERVER dst-port=110

13 ;;; Allow http for group USER (in)
chain=forward action=accept protocol=tcp dst-address-list=USER src-port=80

14 ;;; Allow http for group USER (out)
chain=forward action=accept protocol=tcp src-address-list=USER dst-port=80

15 ;;; Allow https for group USER (in)
chain=forward action=accept protocol=tcp dst-address-list=USER src-port=443

16 ;;; Allow https for group USER (out)
chain=forward action=accept protocol=tcp src-address-list=USER dst-port=443

17 ;;; Allow ftp for group USER (in)
chain=forward action=accept protocol=tcp dst-address-list=USER src-port=21

18 ;;; Allow ftp for group USER (out)
chain=forward action=accept protocol=tcp src-address-list=USER dst-port=21

19 ;;; Allow icq for group USER (in)
chain=forward action=accept protocol=tcp dst-address-list=USER src-port=5190

20 ;;; Allow icq for group USER (out)
chain=forward action=accept protocol=tcp src-address-list=USER dst-port=5190

21 ;;; Allow jabber for group USER (in)
chain=forward action=accept protocol=tcp dst-address-list=USER src-port=5222

22 ;;; Allow jabber for group USER (out)
chain=forward action=accept protocol=tcp src-address-list=USER dst-port=5222

23 ;;; Drop all
chain=forward action=drop

24 ;;; Drop icq for group BLOCK_IM (out)
chain=forward action=drop protocol=tcp src-address-list=BLOCK_IM dst-port=5190

25 ;;; Drop icq for group BLOCK_IM (in)
chain=forward action=drop protocol=tcp dst-address-list=BLOCK_IM src-port=5190

26 ;;; Drop jabber for group BLOCK_IM (out)
chain=forward action=drop protocol=tcp src-address-list=BLOCK_IM dst-port=5222

27 ;;; Drop jabber for group BLOCK_IM (in)
chain=forward action=drop protocol=tcp dst-address-list=BLOCK_IM src-port=5222

В таком варианте блокирование траффика IM не будет т.к. правила разрешающие его 19, 20, 21, 22 стоят выше, чем блокирующие 24, 25, 26, 27. Поднимем их повыше.
[mkt@MikroTik] > ip firewall filter move 24 5
[mkt@MikroTik] > ip firewall filter move 25 5
[mkt@MikroTik] > ip firewall filter move 26 5
[mkt@MikroTik] > ip firewall filter move 27 5

Теперь все работает, что надо пропустить - пропускается, что надо заблокирова - блокируется.

Но адреса можно добавлять не только в ручную, но и динамически, для этого используется таблица Mengle.

Рассмотрим динамическое добавление адресов.

К примеру, нам необходимо заблокировать пользователей, подключающихся из вне к маршрутизатору по протоколу Telnet.
Создаем правило в таблице Mangle, которое добавляет ip адрес источника при попытке подключиться по протоколу tcp на 23 порт через интерфейс ether1, который подключен к провайдеру в группу BLOCK.
[mkt@MikroTik] > ip firewall mangle add chain=prerouting protocol=tcp dst-port=23
in-interface=ether1 action=add-src-to-address-list address-list="BLOCK"

Теперь создадим правило, которое будет блокировать ip адреса, внесенные в группу BLOCK, а заодно поднимем правило на самый верх таблицы.
[mkt@MikroTik] > ip firewall filter add chain=forward src-address-list=BLOCK
action=drop comment="Block incomming from group BLOCK"

[mkt@MikroTik] > ip firewall filter move 28 0

После того, как кто то попробует подключиться к маршрутизатору из вне, то, он автоматически будет включен в группу BLOCK, как это получилось с адресом 192.168.1.217.
[mkt@MikroTik] > ip firewall address-list print
Flags: X - disabled, D - dynamic
# LIST ADDRESS
0 ;;; web, ftp, mail server
SERVER 192.168.0.2
1 ;;; Administrator
FULL 192.168.0.10
2 ;;; User #1
USER 192.168.0.20
3 ;;; User #2
USER 192.168.0.21
4 ;;; User #3
USER 192.168.0.22
5 ;;; User #4
USER 192.168.0.23
6 ;;; User #4
BLOCK_IM 192.168.0.23
7 D BLOCK 192.168.1.217

Это ни в коем случае не "рабочее" решение по защите маршрутизатора, а просто демонстрация работы таблицы Mangle и автоматического добавления адресов в группу.

Продолжение следует.
Progg it

94 комментария:

  1. Сергей, а как можно с микротика получить текущую загрузку канала отдельно каждого пользователя? Я нашел только общий график загрузки канала (в winbox или через веб-интерфейс).

    ОтветитьУдалить
  2. Можно создать индивидуальные правла для клиентских IP и определенных интерфейсов в /queue simple и считывать показания Upload Rate и Download Rate.

    ОтветитьУдалить
  3. Категорически полезный tutorial.

    Кто умеет работать с Cisco и осознает насколько дорогие у них решения, не должен пропустить знакомство с Микротиком. Здесь могут быть решены нетривиальные сетевые задачи так же легко и надежно.

    ОтветитьУдалить
  4. Сергей,может подскажите как можно делать такую вот штуку.
    Есть микротик. На локальном интерефейсе адрес 192.168.0.2/24 , на внешнем ( имеет выход в интернет ) адрес 193.23.х.70. Также имеется VLAN, который висит на локальном интерефейсе. Для интерфейса с vlan прицеплен адрес 10.9.0.2.
    Есть еще сеть с локальным ресурсом 172.30.0.0/16.
    В Simple queue заведены пользователи и там им режется скорость.
    Так вот... Нужно что бы доступ к локальному ресурсу в сети 172.30.0.0/16 происходил без обрезания скорости. А то, когда пользователь идет в инет - скорость режется, когда на локальный ресурс - тоже режется.
    Почему для доступа к лок. ресурсу используется 10.9.0.2? Т.к. через 10.9.0.2 попадаем на маршрутизатор сети в которой есть лок. ресурс. адрес этого маршрутизатора 10.9.0.1, а он уже пропускает нас к 172.30.0.0/16. В route list имеется маршрут: dest 172.30.0.0/16 gateway 10.9.0.1.
    Вот такая вот проблема.. Помогите пожалуйста, если сможете.

    ОтветитьУдалить
  5. С Vlan-ами действидельно существует какая то магия, которую я до конца еще не разобрал (на одном внешнем интерфейсе 5-ть адресов, а отвечает только первый не зависимо на какой приходит запрос), но это мелочи, которые сильно не мешают.

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

    Решение простое в simple queue правила выполняются по порядку, так же как и в firewall rules, так что достаточно в самом начале таблицы (вверху) завести правило, что все соединения, направляющиеся в подсеть 172.30.0.0/16 идут либо без ограничения, либо с ограничением в 100Мб, причем тут можно задать ограничения на конкретных пользователей, которые будут иметь большую скорость (на пример те, которые работают с файлами по сети) и пользователи, которым большая скорость не нужна (терминальные клиенты), что бы случайно кто то не нагрузил канал, когда он действительно понадобится.

    Можно еще для подстраховки сделать несколько правил для доступа в бесплатную сеть, но которая скрывается за внешним ip, одно без ограничения, другое с большим ограничением (буквально в 3кб/с), в первом надо указать интерфейс, который действительно смотрит в ту сеть, а во втором будет другой внешний интерфейс. Надо это для того, что бы если станет проблема с маршрутизацией (по причине отказа интерфейса для доступа без ограничений), что бы трафик не пошел по каналу, который выставить счет за такие глупости.

    ОтветитьУдалить
  6. Сергей, пробовал сделать правило в simple queue. Только может не то делал. Создавал правило, на вкладке Advanced выбирал Dst Address 172.30.0.0/16 , выбирал интерфейс по которому ходит в эту сеть. Target upload и Target Download стаил unlim. На вкладке General пробовал и с Target Address 192.168.2.0/24 и без него. Target up и down ставил на 2 МБ.
    Подскажите как по конкретней сделать такое правило....

    ОтветитьУдалить
  7. Очередь применяется к реальным интерфейсам, попробуй выбрать в качестве исходящего интерфейса физический интерфейс на котором создан vlan.

    ОтветитьУдалить
  8. http://slagovskiy.blogspot.com/2009/10/mikrotik-qos-bandwidth-control.html несколько примеров по простому ограничению с ситуацией, похожей на твою

    ОтветитьУдалить
  9. Здр. Сергей.
    Знаю что в Mikrotik есть возможность, блокировать контент в котором встречается определенная последовать (цепочка) байт. Подскажите ошибаюсь ли я , и если нет то к примеру как осуществиить блокирование html странички передаваемой с одного интефейса на второй , HTTP > TCP/IP, к примеру содержащей слово "test" или любую другую последовательность байт, если влом обьяснять - намекните куда копать.

    Заявленно -

    Функции для работы с протоколом TCP/IP :
    Firewall и NAT – мощные настройки фильтрации пакетов (применимо к P2P соединениям), прекрасная реализация SNAT и DNAT, возможность классификации пакетов по:
    MAC-адресу источника;
    IP адресам (возможность задания сетей);
    диапазонам портов;
    IP протоколам;
    опциям протоколов (ICMP типам, TCP флагам и MSS);
    интерфейсам;
    внутренним цепочкам маркированных пакетов;
    ToS (DSCP);
    по содержимому пакетов;
    по размеру пакетов и др;

    К моему вопросу применимы последнии 4 пункта

    ОтветитьУдалить
  10. > как осуществиить блокирование html странички

    Вообще по моему это работа для proxy.
    Вариант номе два firewall filter можно создать правило, с параметром content="blablabla", правда сильно много я с этим не игрался и получилось это только если это "blablabla" содержится в адресе.

    На пример способ блокировать одноклассников для группы манагеров.
    /ip firewall filter add out-interface=ISP1
    dst-address-list=managers content="odnoklasniki.ru"
    action=drop

    ОтветитьУдалить
  11. да обходят она это в два счета пользуя всяческие http://itcnr.ru/index.php http://dp-nw.ru/index.php и тому подобные сервисы. По этому хочется блокировать по контенту. Я так понимаю есть возможность блокировать по -

    внутренним цепочкам маркированных пакетов;
    ToS (DSCP);
    по содержимому пакетов;

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

    ОтветитьУдалить
  12. Это битва не на жизнь :)
    Блокирование именно по контенту тоже может спорным по эффективности, ведь та же страничка не приходит к тебе вся за раз, она приходит в несколько пакетов, к тому же она может придти не в виде текста, а упакованной zip-ом.
    По моему блокирование таких ресурсов это не только техническая задача, но и административная, большой босс издает внутреннее распоряжение, что нельзя, техническая сторона блокирует законные и около законные возможности, а пользователи живут с этим, в случае если поймали за руку (за ногу, за кэш или куки), то это уже нарушение внутреннего распорядка, правил пользования сетью и т.д. и т.п.

    ОтветитьУдалить
  13. Добырй День! Подскажите пожалуйста, можно ли в Queues List добавить сразу груупа адресов?то есть у меян етьс дареса 192.168.0.1-255 могу ли я их все сразу, а не по одному добавить в список?

    ОтветитьУдалить
  14. > Подскажите пожалуйста, можно ли в Queues List добавить сразу груупа адресов?

    Да, можно, объединяешь адреса в группу, маркируешь пакеты этой группы и потом строишь ограничения для этих пакетов. подробнее смотри пост http://slagovskiy.blogspot.com/2009/10/mikrotik-qos-bandwidth-control_19.html

    ОтветитьУдалить
  15. Доброго времени суток !

    С Новым Годом !

    Подскажите , как заблокировать весь p2p - трафик проходящий через Микротик ?

    Причем на все адреса .

    Будет ли при этом блокироваться mTorrent ?

    ОтветитьУдалить
  16. > Подскажите , как заблокировать весь p2p - трафик проходящий через Микротик ?

    Попробуйте такое.
    /ip firewall filter add p2p=all-p2p action=drop

    ОтветитьУдалить
  17. спасибо большое!
    Написано все грамотно и правильно, а главное - доступно.
    Премного благодарен автору!

    ОтветитьУдалить
  18. Анонимный11 мая 2010 г., 16:39

    Сергей, скажите, тут нет ошибки? в листе указываем list=FULL а в firewall filter: -address-list="ADMIN"

    Это просто опечатка? или так должно быть?
    Я собираю для себя сервер по вашим инструкциям

    [mkt@MikroTik] /ip firewall address-list> add address="192.168.0.10/32"
    list=*****"FULL"****** comment="Administrator"

    Можно переписать так:

    [mkt@MikroTik] > ip firewall filter add chain=forward dst-address-list=*****"ADMIN"*****
    action=accept comment="Allow all for group ADMIN"

    ОтветитьУдалить
  19. > Сергей, скажите, тут нет ошибки?

    Да, есть. Большое спасибо, что указали на нее, правила подправил.

    ОтветитьУдалить
  20. Анонимный11 мая 2010 г., 18:17

    Сергей скажите, можно за подсказкой обратиться по майл. А то как то неудобно задавать ламерские вопросы на форуме...
    типа такого : при блокировке отдельных портов для отдельных групп
    надо поднимать выше прав админа? (указана строка 5)
    или только над правилами разрешающими эти порты?
    в вашем примере над (19) то есть на пять строк

    ОтветитьУдалить
  21. > Сергей скажите, можно за подсказкой обратиться по майл.

    Можно, slagovskiy@gmail.com
    Но не могу гарантировать моментальный ответ ;)

    ОтветитьУдалить
  22. > : при блокировке отдельных портов для отдельных групп надо поднимать выше прав админа?

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

    пример: есть группу mail, ей разрешена отправка во вне по протоколу smtp, остальным запрещена. есть группа full, ей разрешен весь траффик, есть группа user, где разрешен только веб. правильнее будет так (сверху вниз):

    1 разрешить все для группы full
    2 разрешить отправку на 25 порту группе mail
    3 запретить всем отправку на 25 порт
    4 зазрешить группе user доступ на 80 порт
    5 запретить всем все

    если ты находишься в группе full, то проходишь по первому правилу и имеешь доступ везде. Если ты в группе user то 1 и 2 правила на тебя не дейстуют, 3-м првилом тебе блокируют доступ на 25 порт (приведено для примера т.к. оно и так будет заблокировано по простому правило, все что не разрешено, то запрещено), 4-м првилом разрешаю веб, 5-м блокирует любой другой доступ. Но если какому то пользователю понадобится доступ на 25 порт, то его достаточно включить еще в группу mail, тогда т.к. он в группе mail его пропустят на 2-м правиле, ограничение 3-го правила не будет играть роли, на 4-м правиле т.к. пользователь в группе user будет разрешен доступ на веб...

    вот как то так.

    ОтветитьУдалить
  23. > А то как то неудобно задавать ламерские вопросы на форуме...

    Все правильно, для этого и нужны комментарии т.к. статья это одно, а дополнительные тонкости можно найти как раз в комментариях, которые в последствии могут вырасти в отдельную статью по "тонкостям".

    ОтветитьУдалить
  24. Анонимный12 мая 2010 г., 12:19

    ip firewall mangle add chain=prerouting protocol=tcp dst-port=23 in-interface=ether1 action=add-src-to-address-list address-list="BLOCK"
    ip firewall filter add chain=forward src-address-list="BLOCK" action=drop comment="Block incomming from group BLOCK"


    обалденная штука! Не успел поставить, через пару минут выдал IP 87.21.*.* - в ip2.ru посмотрел - Италия! кризисс, хакеры злые и голодные :)

    ОтветитьУдалить
  25. Анонимный13 мая 2010 г., 21:04

    Сергей скажите, можно как нибудь настроить микротик, чтобы он собирал самые посещаемые сайты? и потом добавить на них приоритет? или лучше просто прокси запустить?

    ОтветитьУдалить
  26. > можно как нибудь настроить микротик, чтобы он собирал самые посещаемые сайты?

    Ну если сильно захотеть, то все можно, только будет ли от этого польза.

    На пример вариант 1 - поставить какой нибудь netflow коллектор, в нем собрать статистику, выделить ip и на основании полученных данных сделать вывод, стоит делать или нет.

    Вариант 2 (утрешний/бредовый) - через упоминаемый выше action=add-src-to-address-list сделать правило, которое будет в адрес лист добавлять ip адреса сайтов на которые заходим на 80-й порт, причем, один заход - одно добавление, выделить под это какую нибудь не нужную группу. Как результат получим "мусор" в адрес листе. Далее пишем скрипт на языке сценариев микротика, который будет проходиться по адрес листу и выбирать это "мусорную группу", считать количество упоминаний конкретного ip и после подсчета он должен создать строчку в адрес листе (или обновить если строка уже есть) с этим ip, но уже внеся его в другую группу и в комментарии к этой строчке поставить (добавить) количество, посчитанное в первой группе, потом удалить упоминание этого ip из "мусорной" группы :) уже весело, так мы постепенно агрегируем данные. Следующим шагом второй скрипт проходит по агрегированным данным, выделяет (допустим) 15 адресов с максимальным числом упоминаний (в комментарии) и дублирует это строчки в третью группу (которую надо предварительно очистить), дальше уже должны быть созданы правила, что обращения к адресам из третьей группы (там где 15 адресов) повышаются в приоритете. Скрипты запускать по планировщику. Вариант действительно бредовый, нагрузку при переборе всех этих адресов определенно создавать будет, но, я думаю, и работать такая идея тоже будет.

    Вариант 3 - это модификация 2-ой идеи, но делать все через стороннюю программу, которая будет обращаться к микротику через API интерфейс (в 3-й версии это возможно), забирать "мусорную" группу и выдавать готовый результат.

    Вариант 4 - Предоставить работу над всем прокси серверу.

    ОтветитьУдалить
  27. Анонимный27 мая 2010 г., 14:54

    Доброе время суток Сергей! Во-первых хочу поблагодарить тебя за отличные статьи по Микротику. Все описано ясно и понятно даже не сильно посвященному.
    Возникла проблема которую долго не могу решить:
    есть сервер через интернет к нему конектятся, интернет раздает РС с микротик, конектятся постоянно одни и тежи, но статического ip у них нет. Требуется сделать доступ по МАК адресу, чтобы левые пользователи не могли попасть на сервер. Как привязаться к только МАКу в Микротике так и не понял. Если можешь то подскажи как сделать или хотябы в какую сторону рыть. Может есть иные способы решения не через привзку к Маку. Микротик 2.9. Заранее благодарен за помощь! С Ув.Вадим.

    ОтветитьУдалить
  28. > Как привязаться к только МАКу в Микротике
    > так и не понял. Если можешь то подскажи
    > как сделать или хотябы в какую сторону рыть.
    > Может есть иные способы решения не через привзку к Маку.

    Привязка в маку обычно предполагает связку mac-ip, для этого есть таблица ARP в разделе ip, но коль адрес не постоянный, то смею предположить, что у Вас еще dhcp, то тут я бы сделал сперва привязку в dhcp, что бы конкретному маку выдавался конкретный ip, а потом бы сделал привязку в arp, что если бы кто то другой получил этот ip, то из за не соотвествия mac-у у ниго бы ничего не работало.

    ОтветитьУдалить
  29. Анонимный28 мая 2010 г., 15:12

    Сергей наверно я плохо описал ограничить доступ (фильтрация) нужно людям входящим не из локальной сети, Dhcp на локалку настроен, а тем кто коннектится к серверу из интернета.
    PS или я не до конца разобрался? и dhcp можно сделать и для входящих из интернета (только не совсем понятно как это реализовать?) С Ув.Вадим

    ОтветитьУдалить
  30. > ограничить доступ (фильтрация) нужно людям входящим не из локальной сети

    Скорее на этом моменте надо как то по подробнее рассказать, как они к вам заходят (vpn или на порты, выведенные через nat...)

    ОтветитьУдалить
  31. Анонимный28 мая 2010 г., 15:33

    Прости если напрягаю просто проблема не распрастраненная.
    Подробнее:
    Статический IP, На микротике переадресация(NAT) на Сервер,
    удаленный рабочий стол, RDP протокол - 3389
    PS VPN не поднят, лишь потому что все таки нужно чтоб только я мог редактировать доступ, а у впн логин пароль и с любого компа есть доступ. С Ув.Вадим

    ОтветитьУдалить
  32. > Прости если напрягаю просто проблема не распрастраненная.

    Да нет, все нормально.

    > Статический IP, На микротике переадресация(NAT) на Сервер,
    > удаленный рабочий стол, RDP протокол - 3389

    Провел эксперимент :) сделать можно...
    есть такой параметр src-mac-address в него указываем мак с которого принимаем запросы. Можно применять в этом нате, можно через таблицу mangle пометить соединения с нескольких мак-ов, собрав их в группу и потом на основании этого маркера потом делать правила ната, но тут есть одно но, у меня это получилось сделать на микротиках, которые находятся на расстоянии одного хопа т.е. буквально в одной стойке и одном хабе стоят, если я делаю это между машинами с расстоянием в несколько хопов, то ничего не получается, подозреваю, что причина в том, что микротик-получатель пытается фильтровать по маку с последнего хопа т.е. по маку у шлюза провайдера.
    Так что тут вариант с одной стороны рабочий, с другой сложно применимый.
    Как вариант ограничить диапазон адресов с которых можно заходить на этот порт или смотреть в сторону защиты самого rdp, на пример усилить (усложнить) процедуру авторизации, перенести на нестандартный порт...

    Буду признателен, если расскажете к чему в итоге пришли, ну или спрашивайте ;)

    ОтветитьУдалить
  33. Анонимный28 мая 2010 г., 16:58

    > есть такой параметр src-mac-address...
    Первым дело его и начал отрабатывать (не получилось, думал что с синтаксизом гдето накосячил)
    Вот пример исходника ->
    ip firewall filter add chain=forward src-mac-address=00:11:22:33:11:22 action=drop (т.к. сервер рабочий когда пробывал изменил ACCEPT на DROP)
    > Как вариант ограничить диапазон адресов с которых можно заходить на этот порт
    Юзеры раскиданы по всей стране ip-адреса постоянно разные.
    Если можно рассказать про адресса в этой сфере не сильно много знаю.
    > смотреть в сторону защиты самого rdp
    Написал 3389 - чтоб Вы поняли про что идет речь он изначалоно был не стандартный.
    А как можно усилить процедуру авторизации?
    Можно ли сделать на микротике двойную авторизацию? Т.е. непосредственно в микротике, а потом на самом сервере.
    P.S. Тут проблема в том, что народ просто копирует ярлык RDP и дома работает и т.п.
    Как обычно благодарен за помощь. С Ув.Вадим

    ОтветитьУдалить
  34. Здравствуйте Сергей
    Прошу помочь советом в такой ситуации. Вот есть такая схема сети: на управляемый коммутатор L2 "приходят" пользователи со своими VLANами, порты untagged, а один порт tagged смотрит на микротик. У всех пользователей белые IP, т.е. кол-во ограничено. Микротик - роутер выпускающий пользователей в интернет, имеет 1 IP адрес на локальном интерфейсе, он же адрес шлюза по умолчанию для пользователей. Скажите, как правильно настроить VLANы на микротике чтобы эта схема работала? Я пробовал создавать на микротике такие же VLANы, привязывал их к локальному интерфейсу, но пока не задам ИП адрес на каждом VLANe, не работает. Как бы "сказать" микротику, что все что приходит на VLAN 1(2,3,4) отправлять на интерфейс ether1? Может немного сбивчиво объяснил, но примерно так.

    ОтветитьУдалить
  35. Здравствуйте, с большим интересом читаю ваши статьи по Микротику. Я начал разбиратьсться с ним не так давно, ваши статьи здорово помогли, спасибо. Если можно, хотелось бы задать вам пару вопросов. Худо-бедно я настроил роутер для раздачи интернета пользователям с помощью PPTP . Провайдер даёт диапазон IP адресов **.**.**.1 - **.**.**.7, при необходимости обещал его расширить, **.**.**.1 - их шлюз, **.**.**.2 я присвоил WAN интерфейсу Микротика и сделал через него маскарад. сейчас пытаюсь разобраться с выдачей реальных IP адресов, вроде всё работает, интересует корректность некоторых моментов:
    1. Для выдачи адреса пользователю, подключённому через PPTP, здесь http://forum.nag.ru/forum/index.php?showtopic=50239 советуют включать proxy-arp на WAN интерфейсе, насколько я понимаю, чтоб к полученному IP адресу можно было досучаться снаружи через WAN интерфейс. Я пробовал сделать как описано выше, всё работает, но есть некоторые сомнения, может что подскажете?
    2.Есть также пользователь который в силу каких-то причин не хочет использовать PPTP, он должен быть подключён к отдельной сетевой карте на микротике с адресом 192.168.6.1 , я пока дал ему локальный адрес 192.168.6.2 и применил dst-nat с его адреса на адрес **.**.**.3. Заработало только когда назначил этот же IP вторым на WAN интерфейс, то есть у WAN интерфейса получилось два IP - **.**.**.2 и **.**.**.3.
    Корректно ли это, или можно как-то по другому сделать доступным адрес **.**.**.3 через WAN интерфейс?
    И если пользователю сразу назначить IP **.**.**.3, чтоб не использовать nat, как правильно нужно настроить интерфейс смотрящий к пользователю и машрутизацию?

    ОтветитьУдалить
  36. Здравствуйте Сергей. Объясните мне пожалуйста, поставил себе Микротик. Настроил Web-Proxy, все пользователи в интернет через браузер ходят через него, а вот icq не хочет конектиться к своему серверу, говорит проверьте настройки Proxy.

    ОтветитьУдалить
  37. > Настроил Web-Proxy, все пользователи в интернет
    > через браузер ходят через него, а вот icq не
    > хочет конектиться к своему серверу

    Странно, я Web-proxy практически не использую на микротике, но буквально сейчас включил, сделал проверку браузером, аськой, джабером, все сразу же заработало (пробовал не прозрачный прокси), может в настройках клиента аськи чего не того?

    ОтветитьУдалить
  38. В настройках аськи прописано: тип подключение прокси http(s) 192.168.1.126 port 3128

    ОтветитьУдалить
  39. > В настройках аськи прописано: тип подключение прокси http(s) 192.168.1.126 port 3128

    смените на простой http, именно он по умолчанию настраивается

    ОтветитьУдалить
  40. День добрый, Сергей.
    Вот такой вопрос образовался: необходимо раздать инет с вафли на лан (в первичной настройке проблем нет и без чтения манов даже). но есть одно большое НО. в сети есть куча юзеров, некоторые из них "плохие товарищи" пытаются юзать раздаваемый инет, потому и вопрос - как раздавать инет только нужным MAC'ам? Осложняется всё тем, что в сети dhcp, который не мой и в общем-то он и мешает, потому обычно прописываются ipconfig'и руками у клиентов.
    в общем суть: нужно давать инет только определённым MAC'ам с любым IP. сколько ни копал понять как это сделать красиво не смог. хотя на тех же SOHO ASUS'ах есть access list для MAC'ов где можно сделать вайт лист и всё будет душевно ))

    ОтветитьУдалить
  41. > как раздавать инет только нужным MAC'ам?

    На первый взгляд вижу вариант - избавиться от мешающего dhcp, его функции можно перенести на микротик, в микротике можно зарезервировать за маками определенные адреса. в /ip/arp можно выставить жесткую привязку mac-ip, получается что, раздаются нужным картам нужные адреса, если какая то карта получит не свой адрес, то она не сможет работать из-за привязки в arp.

    ОтветитьУдалить
  42. к сожалению dhcp не наше в сети, потому избавиться не получиться.

    ОтветитьУдалить
  43. просто интересовал момент именно самой фильтрации по маку (ибо заявлено в возможностях)

    ОтветитьУдалить
  44. Здравствуйте
    Подскажите или дайте ссылку по настройке Микротика через Винбокс. Мне нужно настроить ограничение по загрузке файлов (фильмы, музыка и прочая отвлекающая пользователей хрень), также настроить черный список сайтов.

    ОтветитьУдалить
  45. Здравствуйте Сергей! Подскажите как в ВинБоксе настроить черный список сайтов! Помогите пожалуйста!

    ОтветитьУдалить
  46. > Подскажите как в ВинБоксе настроить черный список сайтов

    Вариант 1: Использовать web-proxy и уже там прописывать сайты.

    Вариант 2: В фаерволе делать правила фильтрации на основании контента (на второй вкладочке можно указать), но работает не всегда.

    Вариант 3: В фаерволе делать правила фильтрации по ip адресам сайтов.

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

    ОтветитьУдалить
  47. Добрый день.
    С линуксом пришлось столкнуться по нужде... Впервые..
    Поэтому прошу помощи, даже после прочтения нескольких десятков страниц для чайников и иже с ними...
    Микротик 3.30. цель: зарубить торенты, отавить серфинг, Voip, icq, и пару бугалтерских прог.
    http работает, https не совсем, например скайп скачать не удалось.
    icq пытается подключиться, даже добивается до сервера (выбивает запущенную на другом компе, но на этом и все)
    SIPnet так же не удалось запустить(((..
    Хотя торент вроде как уже ни чего и не качает..
    Скайп попробовать пока не могу, он на виртулбоксе не запускается. Но судя по форумам он должен заработать даже на 443 порту...
    /Подскажите плиз, как исправить? необходимо разбираться в маркировке трафа? Но с VoIP это врятле поможет...
    10.10.5.2-4 в списке USER
    При переносе в список FULL все работает..
    Все правила дублируются IN-OUT аналогично первому HTTP
    add action=accept chain=input comment="Added by webbox" disabled=no protocol=\
    icmp
    add action=accept chain=input comment="Added by webbox" connection-state=\
    established disabled=no in-interface=ether1
    add action=accept chain=input comment="Added by webbox" connection-state=\
    related disabled=no in-interface=ether1
    add action=drop chain=input comment="Added by webbox" disabled=no \
    in-interface=ether1
    add action=jump chain=forward comment="Added by webbox" disabled=no \
    in-interface=ether1 jump-target=customer
    add action=accept chain=customer comment="Added by webbox" connection-state=\
    established disabled=no
    add action=accept chain=customer comment="Added by webbox" connection-state=\
    related disabled=no
    add action=drop chain=customer comment="Added by webbox" disabled=no
    add action=drop chain=input comment="Drop invalid connection packets" \
    connection-state=invalid disabled=no
    add action=accept chain=input comment="Allow established connections" \
    connection-state=established disabled=no
    add action=accept chain=input comment="Allow related connections" \
    connection-state=related disabled=no
    add action=accept chain=input comment="Allow UDP" disabled=no protocol=udp
    add action=accept chain=input comment="Allow ICMP Ping" disabled=no protocol=\
    icmp
    add action=accept chain=forward comment="Allow all for group FULL" disabled=\
    yes dst-address-list=FULL
    add action=accept chain=forward comment="Allow all for group FULL" disabled=\
    yes src-address-list=FULL
    add action=accept chain=forward comment="Allow http for group USER (in)" \
    disabled=no dst-address-list=USER protocol=tcp src-port=80
    add action=accept chain=forward comment="Allow http for group USER (out)" \
    disabled=no dst-port=80 protocol=tcp src-address-list=USER
    add action=accept chain=forward comment="Allow https for group USER (in)" \
    disabled=no dst-address-list=USER protocol=tcp src-port=443
    add action=accept chain=forward comment="Allow ftp for group USER (in)" \
    disabled=no dst-address-list=USER protocol=tcp src-port=21
    add action=accept chain=forward comment="Allow icq for group USER (in)" \
    disabled=no dst-address-list=USER protocol=tcp src-port=5190
    protocol=tcp
    add action=accept chain=forward comment="Allow SIP for group USER (in)" \
    disabled=no dst-address-list=USER protocol=tcp src-port=11024
    add action=drop chain=forward comment="All other forwards drop" disabled=no

    ОтветитьУдалить
  48. Сергей, подскажите пожалуйста, можно ли половине юзеров запретить доступ к локальной сети, не запрещая интернет? все юзеры подключены к 2му порту и у всех должен быть инет... ковырял полдня firewall filter - пока безрезультатно...

    ОтветитьУдалить
  49. > можно ли половине юзеров запретить доступ к локальной сети, не запрещая интернет

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

    ОтветитьУдалить
  50. совсем забыл... пользователь, который физически рядом с ограниченными пользователями (по одному кабелю они все приходят) должен иметь доступ к сети. арендой ip на dhcp могу разнести по разным подсетям. Вот пока набирал - додумался:
    первая подгруппа (неограниченные): адреса 1.1-1.128 gw 1.1, 2ая группа (без доступа к сети) 1.129-1.200 gw 1.129. Но где теперь копать про создание второго шлюза?

    ОтветитьУдалить
  51. > Но где теперь копать про создание второго шлюза?

    если ты используешь 19.168.1.*, то шлюз так и остается один, а если ты раскидаешь одних в 192.168.1.*, а других в 192.168.2.*, то идешь в микротик /ip/address и добавляешь к локальному интерфейсу еще одну запись для второй подсети.

    ОтветитьУдалить
  52. сделал. инет есть в обеих сетях, но они продолжают пинговать друг друга..

    ОтветитьУдалить
  53. > сделал. инет есть в обеих сетях, но они продолжают пинговать друг друга..

    ну а теперь, когда они видят друг друга не из-за маски, а из-за того, что у тебя маршруты на микротике автоматически прописались можно добавить в фаервол что нить типа:
    если источник 192.168.1.0.24 и назначение 192.168.2.0.24, то заблокировать
    и второе в обратную сторону

    ОтветитьУдалить
  54. ошибся
    если источник 192.168.1.0/24 и назначение 192.168.2.0/24, то заблокировать
    и второе в обратную сторону

    ОтветитьУдалить
  55. спасибо за помощь в решении такой нетривиальной задачи! получилось.
    С уважением, Кирилл

    ОтветитьУдалить
  56. имеется wan1 интефейс на нем поднят dhcp клиент из сетки 192,168,1,0/24 за натом находится сеть 10,10,10,0/24 Вопрос как настроить микротик чтобы из первой сети был доступ во вторую?

    ОтветитьУдалить
  57. Здравствуйте Сергей. Подскажите пожалуйста имеются два микротика подключённых к городской LAN, между ними я поднял EoIP тунель, на одном из них поднят интернет (через PPPoE) на все шлюзы он раздаёт, как сделать так что бы интернет был и на втором марше с которым первый соединён по EoIP??? Спасибо.

    ОтветитьУдалить
  58. Здравствуйте, Сергей! Создал список пользователей FULL и USER, при подключении пользователей из списка USER по PPTP они почему-то автоматом переносятся в FULL, хотя их айпи адреса из диапазона списка USER... Где копать?

    ОтветитьУдалить
  59. > при подключении пользователей из списка USER по PPTP
    > они почему-то автоматом переносятся в FULL

    Может чего те не так в настройках сервера pptp, ведь при подключении он назначает новый адрес и шлюз.

    ОтветитьУдалить
    Ответы
    1. Спасибо, что ответили, нет, в настройках pptp всё ок, диапазон адресов в сети выдаётся dhcp, а при подключении по pptp клиент получает адрес vpn, этот адрес и указан в списке пользователей

      Удалить
  60. Я кажется, сам понял причину: в профилях PPTP можно указать адресный лист для профиля, по умолчанию стоял FULL, теперь знаю, где копать :)

    ОтветитьУдалить
  61. Давно никто сюда не писАл. Сергей, да Вы - полковник!(с) )))
    С микротиковским sniffer'om пробовали эксперименты?

    ОтветитьУдалить
  62. Анонимный27 июля 2012 г., 18:42

    Здравствуйте Сергей,у меня вот какая проблема:я создал списки пользователей, которые работают без проблем, но необходимо создать еще одну группу, которой будет разрешена только почта Mail.ru. С любым другим сайтом проблем не возникает, создавал такие группы для многих сайтов без всяких проблем, но только не с mail, тут или нет доступа к интернету вообще, или работает наоборот все!!! Подскажите пожалуйста что можно сделать.

    ОтветитьУдалить
  63. Помогите пожалуйста!!!Не знаю как настроить IP-TV на MikroTik RB750GL.Провайдер Триолан. Заранее спасибо!!!

    ОтветитьУдалить
    Ответы
    1. ищите в сторону мультикастов

      Удалить
  64. доброго времени суток. у меня вопрос как на MikroTik RB750GL создать список ip адресов которым будет разрешено выход в интернет а остальным ip которых нет в этом списке нет.

    ОтветитьУдалить
    Ответы
    1. 1. Можете сделать привязку по мас-адресам к IP
      2. можете задропать все подключенные мас-адреса
      3. Можно переместить всех в отдельную группу и запретить им выход в инет, при этом себе, любимому дать god mode )

      выбирайте, у Сергея эти варианты расписаны

      Удалить
  65. Сергей подскажите пожалуйста где и что нужно включить в микротике RB750GL что бы можно было контролировать посещаемые сайты юзеров. Зарание огромное спасибо.

    ОтветитьУдалить
    Ответы
    1. ... и снифать? )))

      Удалить
    2. Статистика собирается только с помощью стороннего софта.

      Удалить
    3. ip -> DNS -> cache

      Удалить
  66. А сниффер есть встроенный, работает на уровне пакетов.
    /tool shiffer

    ОтветитьУдалить
    Ответы
    1. Юзать пробовали?
      положительные результаты есть? если есть, ткните куда читать?

      Удалить
  67. неее пока что руки не особо доходят, так как столкнулся с проблемой, при скачивание через торрент на скорости 10Мб то миротику плохо на все 100%, показывает следующее:
    [MIKROTIK] /tool> profile
    NAME USAGE
    firewall-mgmt 0%
    ethernet 0.5%
    queue-mgmt 0.5%
    NAME USAGE
    p2p-matcher 0.5%
    ethernet 16.5%
    queue-mgmt 1%
    console 0.5%
    graphing 0%
    dns 2.5%
    traffic-flow 5%
    firewall 47%
    winbox 0%
    management 2%
    idle 0%
    profiling 0.5%
    queuing 24.5%
    unclassified 0%

    и в этот момент уже сайты не открываются.
    Но больше пугает нагрузка, что это может быть??? ;( ;(

    ОтветитьУдалить
  68. Добрый день, подскажите , mikrotik на нем крутитяться несколько сетей, необходимо запретить маршрутизацию между сетями,, как ?

    ОтветитьУдалить
    Ответы
    1. Если Вам надо, что бы между собой порты не пинговались и пакеты не ходили, то - ДА, надо запрещать.
      в IP - Firewall - adress list
      описываете свои подсети, например
      local-networks 192.168.0.0/24
      local-networks 192.168.1.0/24
      local-networks 192.168.2.0/24

      затем создаёте правило в firewall rules
      chain=forward action=drop src-address-list=local-networks dst-address-list=local-networks
      т.е. все пакеты по имени local-networks задропаны (drop), не будут ходить

      Удалить
    2. Соответственно данное правило поднимаем на самый верх ?

      Удалить
  69. Доброго времени суток господа, Я начинающий администратор и передо мной стоит задача блокировки доступа к соц сетям не всему нашему малому оффису а только отдельным группам. Для этого я создал группы в адресном листе как выше описано здесь, пытался заблокировать по контенту(/ip firewall filter> add out-interface=pppoe-out1 dst-address-list="SALES" content="*.odnoklassniki.ru" action=drop)не удалось, все упорно работает объясните в чем моя ошибка.

    ОтветитьУдалить
  70. Доброго времени суток нужна помощь специалистов. подключил 2х провайдеов.
    первый провайдер: интерфейс kct
    второй провайдер: интерфейс farline
    настоил по очереди работают, вместе нивкакую

    правила маркиовки и распределения тафика:


    /ip firewall mangle

    add action=mark-connection chain=prerouting disabled=no dst-port=80 new-connection-mark=farline_c passthrough=yes protocol=tcp
    add action=mark-connection chain=prerouting disabled=no dst-port=443 new-connection-mark=farline_c passthrough=yes protocol=tcp
    add action=mark-connection chain=prerouting disabled=no dst-port=8000 new-connection-mark=kct_c passthrough=yes protocol=tcp
    add action=mark-connection chain=prerouting disabled=no dst-port=53 new-connection-mark=kct_c passthrough=no protocol=udp
    add action=mark-connection chain=prerouting disabled=no dst-port=21 new-connection-mark=kct_c passthrough=no protocol=tcp
    add action=mark-connection chain=prerouting disabled=no dst-port=25 new-connection-mark=kct_c passthrough=no protocol=tcp
    add action=mark-connection chain=prerouting disabled=no new-connection-mark=kct_c passthrough=no
    add action=mark-routing chain=prerouting connection-mark=kct_c disabled=no in-interface=kct new-routing-mark=kct_r passthrough=no src-address-list=client
    add action=mark-routing chain=prerouting connection-mark=farline_c disabled=no in-interface=farline new-routing-mark=farline_r passthrough=no src-address-list=client

    ip route add dst-address=0.0.0.0/0 routing-mark=farline_c gateway=farline
    ip route add dst-address=0.0.0.0/0 routing-mark=kct_c gateway=kct
    ip route add dst-address=0.0.0.0/0 gateway=farline
    ip route add dst-address=0.0.0.0/0 gateway=kct

    весь трафик идет через ip route add dst-address=0.0.0.0/0 gateway=kct. Где ошика?

    ОтветитьУдалить
  71. Здравствуйте, Сергей
    помогите решить "простую" проблему
    только разбираюсь с микротиком и не получается сделать настройки для подключения удаленного рабочего стола.
    машины в локальной сети коннектятся на удаленный рабочий стол (через интернет)

    как правильно написать правило

    благодарю.

    ОтветитьУдалить
  72. Здравствуйте, помогите разобраться.
    Микротик 750gl, хочу открыть доступ только к 5ти сайтам на машинах 192.168.69.1-192.168.69.5
    как это реализовать, выше есть пример как по портам закрывать. Но как закрыть по ip? Пробовал так chain=forward->dst_adress_list=user->content=ip->action=drop не блокирует.
    Как правильно сделать!?
    Почта: xxxhhhzzz23@inbox.ru

    ОтветитьУдалить
  73. Добрый день сергей, такой вопрос... прокинул порт для подключения через интернет на локальный сервер RDP подключение происходит.. появлсяется приветствие (иногда может даже успеть вылезти кнопка пуск) и потом через несколько секунд стол отключается... в чем собака порылась? :-) еще что заметил - пропадает подключение к винбокс, потом заново конектится..

    ОтветитьУдалить
  74. Добрый день!
    Спасибо за статью - нашел в ней много интересного для себя. Если можно, то задам Вам 2 вопроса:
    1) Почему правила #1 и 2 стоят в самом начале перед правилами с форвардом для конкретных портов? В Вашем случае весь трафик будет уходить именно по правилам 1 и 2.
    2) Почему для правил с форвардом и указанием портов Вы не указываете интерфейс входящий и сходящий? Насколько это критично и целесообразно делать?

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

    ОтветитьУдалить
  75. Доброго времени суток Сергей! Есть пару сотень микротиков которые соединяются через ВПН канал с Главным сервером. Каждый раз при добавление IP адресов или удаление IP-адреса надо подключатся к каждому из них.
    Как сделать так чтоб все МикроТик-и в определенное время (например раз в Неделю)подключались куда ни будь (предположим ФТП сервер) и брали оттуда Список (address-list.rsc)с последнем изменениями. Разумеется до обновления списка сначала удаляется вес старый список а потом обновляется новым. Искал но так и не нашел подходящий скрипт. Заранее благодарю.

    ОтветитьУдалить
  76. День добрый. Есть публичный "белый" пул адресов. Зарезервировано 30 адресов под сервера и статику прочим абонентам выдаются остальные адреса.

    Хочется завести приватный пул 10.1.1.0/16 и чтобы эти абоненты ходили в интернет через динамически присваиваемый публичный ("белый") IP, но не один на всех, а группа адресов.
    Ну т.е. есть оставшиеся 220 публичных "белых" адресов делятся на "серый" пул приватных адресов.
    хотел сделать так
    создаём список приватных адресов
    /ip firewall address-list add list=privat_pool address=10.1.1.0/16
    создаём список публичных адресов
    /ip firewall address-list add list=public_pool address=X.Y.Z.31-X.Y.Z.255

    правило для исходящего трафика используя списки
    /ip firewall nat add chain=dstnat dst-address-list=public_pool action=netmap to-addresses-list=privat_pool
    правило для входящего трафика используя списки
    /ip firewall nat add chain=srcnat src-address-list=privat_pool action=netmap to-addresses-list=public_pool
    А те абоненты которым выделен публичный "белый" IP адрес мог бы спокойно связываться с приватными "серыми" адресами в пределах одного маршрутизатора.
    Обе сети и "белая" и "серая" сидят на одном маршрутизаторе.

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

    Но как тогда сделать динамический список адресов (будет пополнятся/удалятся) и адреса могут быть не по порядку. И использовать диапазон публичных ("белых") адресов?

    ОтветитьУдалить
  77. Здравствуйте , помогите разобраться в следующем, есть mikrotik в роли NAS, на внешнем интерфейсе белый IP , настроен НАТ (маскард) для серых адресов , как лучше организовать выдачу белых IP некоторым юзерам, а остальные чтоб и дальше НАТились ??? за ранее благодарю.

    ОтветитьУдалить
  78. Анонимный22 июля 2014 г., 16:56

    Вопрос вот в чем. Как в Микротик добавить список запрещенных адресов? Например, взяв список от того же самого squidguard

    ОтветитьУдалить
  79. Сергей добрый день, у меня вопрос, возможно ли отследить трафик https с помощью L7 регулярных выражений. Если да то как это реализовать? Спасибо

    ОтветитьУдалить
  80. Добрый день Сергей помогите зайти настройки NAT и Firewall у меня через браузер не заходит набираю http:\\192.168.88.1\cfg а там пишет страница не найдена?

    ОтветитьУдалить
  81. Добрый день. Подскажите скрипт для микротика, по управлению доступами на основе Мас адресов.

    ОтветитьУдалить
    Ответы
    1. настройте firewall, т.е. пропишите в нём свои МАС, остальные - BLACKLIST.

      Удалить
    2. Вот в коментах нашел это
      ip firewall filter add chain=forward src-mac-address=00:11:22:33:11:22 action=ACCEPT
      Это правильный скрипт ? На добавление.
      И если можно как в BLACKLIST добавить, только скриптом.
      Спасибо !

      Удалить
  82. Добрый день! Есть микротик который принимает 2 провайдера и раздает для локальной сети. Есть роутер zyxel - который используется как точка доступа принтера к этой локальной сети. После смены основного провайдера юзеры локалки перестали видеть zyxel. А когда напрямую к нему подключаешься пишет Подключение без IP-адреса. Может быть что либо Микротик не дает ему IP или это провайдер?

    ОтветитьУдалить