Введение
С момента своего появления сеть Интернет многократно выросла. Также многократно увеличились такие показатели сети, как предоставляемые ресурсы, скорости обмена информацией, скорости подключения. Однако вместе с ростом полезных ресурсов, многократно выросли риски кражи информации, использования ресурсов не по назначение и другие опасности. Таким образом, каждый системный администратор ежедневно сталкивается с вопросами защиты обслуживаемых ресурсов.
Данная статья написана с целью описать функционал фильтрации трафика в операционной системе RouterOS, производства компании Mikrotik.
Особенности работы файрвола
Для базового понимания работы файрвола, необходимо ознакомиться с понятиями цепочки (chain), состояния соединения (connection state), условия и действия (action).
Цепочки (chain)
При фильтрации трафик, в зависимости от своего предназначения попадает в одну из цепочек (chain) обработки трафика. В фильтре предопределены три основные цепочки:
- input входящий трафик предназначенный для маршрутизатора. Например, когда вы подключаетесь к маршрутизатору при помощи приложения winbox, трафик как раз попадает в эту цепочку.
- output Исходящий трафик. Трафик, создаваемый самим маршрутизатором. Например, если вы выполните команду ping непосредственно с самого маршрутизатора, трафик попадет в эту цепочку.
- forward Трафик, идущий через маршрутизатор. Например, если компьютер из локальной сети, установил соединение с внешним сайтом, данный трафик попадает в цепочку forward.
Таким образом мы видим, что для защиты самого маршрутизатора необходимо использовать цепочку input, а для защиты и фильтрации трафика между сетями необходимо использовать цепочку forward.
Кроме того, администратор имеет возможность создавать свои собственные цепочки обработки трафика, к которым можно обращаться из основных цепочек. Данная возможность будет рассмотрена в дальнейшем.
Состояние соединения (connection state)
Каждое из сетевых соединений Mikrotik относит к одному из 4 состояний:
- New – Новое соединение. Пакет, открывающий новое соединение, никак не связанное с уже имеющимися сетевыми соединениями, обрабатываемыми в данный момент маршрутизатором.
- Established – Существующее соединение. Пакет относится у уже установленному соединению, обрабатываемому в данный момент маршрутизатором.
- Related – Связанное соединение. Пакет, который связан с существующим соединением, но не является его частью. Например, пакет, который начинает соединение передачи данных в FTP-сессии (он будет связан с управляющим соединением FTP), или пакет ICMP, содержащий ошибку, отправляемый в ответ на другое соединение.
- Invalid – Маршрутизатор не может соотнести пакет ни с одним из вышеперечисленных состояний соединения.
Исходя из вышеизложенного, мы видим, что хорошим вариантом настройки фильтрации пакетов будет следующий набор условий:
- 1. Обрабатывать новые соединения (connection state = new), принимая решение об пропуске или блокировке трафика.
- 2. Всегда пропускать соединения в состоянии established и related, так как решение о пропуске этого трафика было принято на этапе обработки нового соединения.
- 3. Всегда блокировать трафик, для которого состояние соединения равно invalid, потому что этот трафик не относится ни к одному из соединений и фактически является паразитным.
Условие
При прохождении пакета через фильтр, маршрутизатор последовательно проверяет соответствие пакета заданным условиям, начиная от правила, расположенного первым. и последовательно проверяя пакет на соответствие правилам номер два, три и так далее, пока не произойдет одно из двух событий:
1.Пакет будет соответствовать заданному условию. При этом сработает соответствующее правило, в котором это условие было задано, после чего обработка пакета будет завершена.
2.Закончатся все условия и пакет не будет признан соответствующим ни одному из них. При этом, по умолчанию он будет пропущен дальше.
Исходя из п.2, нельзя не отметить, что есть две стратегии построения фильтра пакетов:
1.Нормально открытый файрвол. Данный тип настройки можно определить как «Все разрешено, что не запрещено». При этом мы запрещаем прохождение только некоторых типов трафика. Если пакет не соответствует этим типам – он будет пропущен. Обычно данный тип файрвола характерен для мест, где не предъявляется высоких требований к безопасности пользователей, а трафик может быть самым разнообразным и не поддающимся жесткой квалификации. Такая настройка характерна для операторов связи (Интернет-провайдеров), открытых точек доступа, домашних маршрутизаторов.
2.Нормально закрытый файрвол. Данный тип настройки можно определить как «Все запрещено, что не разрешено». При этом разрешается прохождение только определенных типов трафика, а последним правилом в файрволе стоит правило, запрещающее прохождение любого типа трафика. Такой тип настройки файрвола характерен для корпоративного использования, где существуют жесткие требования к безопасности.
Не могу сказать, что какая-то из стратегий является правильной, а какая-то неправильной. Обе стратегии имеют право на жизнь, но каждая — в определенных условиях.
Теперь подробнее распишем все варианты условий, на основании которых мы можем принимать решение о действии.
воскресенье, 16 июня 2013 г.
Ограничение доступа к WiFi по MAC в Mikrotik
Вводная: Необходимо ограничить доступ к WiFi только с определённых компьютеров.
Решение: Решено было пускать в сеть только людей с конкретными MAC-адресами.
В winbox выбираем "Wireless", далее вкладку "Registration", находим компьютеры которые нужно добавить, правой кнопкой и "Copy to Access List".
Аналогом данного действия в консоли будет
interface wireless access-list add interface=wlan1 mac-address=AA:BB:CC:DD:EE:FF
Можем перейти на вкладку "Access List" и посмотреть или отредактировать созданную запись. Прежде всего рекомендую прописать комментарий с описанием. Также здесь можно указать допустимую силу сигнала для подключения и к точке будут подключаться только клиенты с определённой силой сигнала. Что вносит дополнительный уровень безопасности.
Далее переходим в настройки WLAN интерфейса и на вкладке "Wireless" снимаем галочке с "Default Authenticate".
В консоли достаточно при настройке интерфейса добавить default-authentication=no
/interface wireless
set 0 band=2ghz-b/g/n country=russia default-authentication=no disabled=no
frequency=2452 l2mtu=2290 mode=ap-br > arxont wireless-protocol=802.11
Всё, на этом настройка доступа по MAC закончена – теперь в нашей WiFi сети могут работать только компьютеры с MAC-адресами перечисленными в Access List.
Примечание: В принципе почти тоже самое можно сделать
1) поставив в настройках интерфейса на ARP режим reply-only и внеся статические ARP записи. Так будет ещё и привязка IP-MAC.
2) Правилом файрвола с фильтрацией по src-mac-address.
Как мы знаем, беспроводные сети, более уязвимые, чем их проводные аналоги, так как для их атаки, не обязательно иметь физического доступа к линиям связи или коммутационному оборудованию. Именно по этому, безопасности беспроводных сетей, уделяется намного больше внимания и существует большое количество способов защиты. Одним из таких способов является авторизация в сети посредством MAC адреса подключаемого устройства.
В оборудовании Mikrotik или другом оборудовании под управлением операционной системы RouterOS Level 6 делается это так как описано ниже.
В утилите Winbox переходим в раздел Wireless, где на вкладке Registration, мы можем видеть все устройства подключенные к вашей точке доступа.
Нам надо добавить их в список устройств, которым разрешен доступ к нашей сети. Мы кликаем правой клавишей мыши на выбранном устройстве и нажимаем Copy to Access List.
В результате этих действий, наше устройство добавляется в список разрешенных устройств, который мы можем видеть и редактировать на вкладке Access List. На этой вкладке мы можем дать комментарии всем устройствам, удалить их, или изменить.
Если же устройство никогда до этого не подключалось к вашей сети и его нет в списке зарегистрированных устройств, или у вас уже включена авторизация по MAC адресу, то вы можете добавить новое устройство в список разрешенных вручную. Для этого на вкладке Access List нажимаем кнопку “+” и в новом окне вписываем MAC адрес соответственно в поле MAC Address, а в параметре Interface, выбираем значение соответствующее нашему беспроводному интерфейсу.
В этом же окне, можно назначить персональный PSK ключ, для авторизации этого устройства в беспроводной сети в поле Private Pre Shared Key, а так же установить время в которое устройство может быть авторизованно, в разделе Time.
А убрав галочку, возле параметра Authentication, вы добавите это устройство в черный список, и оно никогда не сможет авторизоваться в вашей сети.
Еще одним очень полезным параметром, является Forwarding. Убрав галочку с которого, вы запретите этому устройству обмениваться информацией с другими пользователями вашей сети.
После того, как вы внесли все необходимые устройства в Access List, необходимо включить авторизацию по списку. Для этого, переходм на вкладку Intefaces и двойным кликом открываем нужный беспроводной интерфейс. В окне интерфейса на вкладке Wireless убираем галочку с параметра Default Authentificate. И сохраняем настройки кнопкой Ok.
Теперь в вашей сети, смогут авторизоваться только те устройства, которые внесены в Access List, другим же устройствам, будет отказано в доступе, даже если вы правильно введете все ключи.