Защита внутри периметра

ВЗЯТО С: http://mcp1971.livejournal.com/1851.htmlДиапазоны номеров VLANовВсе VLANы доступа можно разбить на два диапазона:Обычный диапазон VLANов— используется в малых и средних сетях- имеют номера от 1 до 1005- номера с 1002 до 1005 зарезервированы для Token Ring and FDDI VLANов- номера 1, 1002 и 1005 создаются автоматически и не могут быть удалены- все данные о VLANах хранятся в файле vlan.dat, который располагается на флеш памяти (flash:vlan.dat)- протокол VTP может изучать VLANы только обычного диапазрна и сохранять сведения о них в vlan.datРасширенный диапазон VLANов— используются провайдерами или на очень больших сетях для расширения инфраструктуры VLANов- имеют номера от 1006 до 4094- поддерживают меньше возможностей, чем VLANы обычного диапазона- все данные о VLANах хранятся в рабочей конфигурации- нет поддержки VTPКоммутатор Cisco Catalyst 2960 поддерживает до 255 VLANов обычного и расширенного диапазоновТипы VLANовВсе VLANы можно отнести к конкретному типу:1. Data VLAN (VLAN данных) — VLAN, в котором проходят данные, генерируемые пользователями. Но это не могут быть голосовые данные или управляющий трафик для коммутаторов.2. Default VLAN (VLAN по умолчанию) — VLAN, в котором находятся все порты коммутатора перед началом конфигурирования. VLAN по умолчанию для коммутаторов Cisco — VLAN1. По умолчанию управляющий трафик 2-го уровня, такой как CDP и STP, ассоциируется с VLAN1.3. Native VLAN (родной VLAN) — VLAN, через который на порту, сконфигурированном как транковый порт (802.1Q), и пропускающем с помощью 802.1Q тегированные фреймы, сможет подключиться рабочая станция и передавать нетегированные фреймы. Это реализовано для того, чтобы к транковому порту можно было подключить компьютер, который не может тегировать фреймы. Рекомендуется использовать родным VLANом VLAN, отличный от VLAN1.4. Management VLAN (управляющий VLAN) — VLAN, через который происводится конфигурирование. Для этого VLANу надо назначить IP адрес и маску подсети.5. Voice VLAN (голосовой VLAN) — VLAN, предназначенный для передачи голоса. Такой VLAN должен обеспечивать:— гарантированнуюполосу пропусканиядля обеспечениякачества передачи голоса— приоритет голосового трафика по сравнению сдругими типамитрафика— возможностьнаправлятьтрафик в обход загруженных районовв сети— иметь задержкуменее 150миллисекундв сетиБывает, что компьютер подключается к коммутатору через IP телефон. Получается, что надо разграничить на порту голосовой трафик и трафик данных. Для этого телефон представляет собой трехпортовый коммутатор. Один порт подключен к коммутатору. Второй — внутренний порт для передачи голосового трафика. Третий порт — порт, к которому подключен компьютер. Трафик с внутреннего порта телефона тегируется номером голосового VLAN. Трафик с компьютера не тегируется. Поэтому коммутатор может определить трафик, которому надо предоставить приоритет. Точно также происходит разделение входящего трафика — тегированный номером голосового VLAN — на телефон, не тегированный — на компьютер. Соответственно на порту коммутатора настраивается и голосовой VLAN, и VLAN доступа.Режимы работы портов коммутатора в VLANахКаждый порт коммутатора может быть настроен для работы конкретного типа VLANа различными методами:Статический VLAN — каждому порту вручную указывается VLAN, к которому он принадледит.Динамический VLAN — каждому порту указывается VLAN, к которому он принадледит, с помощью Сервера политики членства в VLAN (VMPS — VLAN Membership Policy Server). СVMPSможно назначитьVLAN портам коммутатора динамически,на основеМАС-адреса устройства, подключенного кпорту.Это полезно, когдавы перемещаетеустройство спорта одного коммутаторв сетик портудругого коммутаторав сети, коммутатординамически назначаетVLANдля этого устройства на новом порту.Голосовой VLAN — порт настраивается и для передачи тегированного голосового трафика, и для передачи нетегированного трафика данных. Для настройки голосовой VLAN используются команды:S1(config)#interface fastethernet 0/18S1(config-if)#mls qos trust cos — определяем голосовй трафик, как приоритетныйS1(config-if)#switchport voice vlan 150 — определяем голосовой VLANS1(config-if)#switchport mode access — определяем, что этот порт для данных (порт доступа — нетегированный трафик)S1(config-if)#switchport access vlan 20 — определяем VLAN для данныхТранки VLANовТранк — это соединение типа точка-точка между сетевыми устройствами, которые передают данные более чем одного VLANа. Если бы не было транков, для каждого VLANа при соединении коммутаторов необходимо было бы выделять отдельный порт. При транке все VLANы проходят через один порт.Для того, чтобы транковый порт знал, к какому VLANу принадлежит фрейм, передаваемый через порт, в заголовок фрейма вводится тег 802.1Q, в котором указывается номер VLANа, также приоритет передаваемого кадра.Если на порт поступает нетегированный фрейм, коммутатор автоматически отправляет его в родной VLAN. По умолчанию родным VLANом является VLAN1. Но его можно изменить командой:S1(config-if)#switchport mode trunkS1(config-if)#switchport trunk native vlan vlan-idДля проверки, на какой родной VLAN передается нетегированный фрейм, используется команда:S1#show interfaces interface-id switchportDTPDTP — это проприеритарный протокол коспании Cisco, который позволяет автоматически настраивать транкинговые режимы работы портов коммутатора. Бывает три режима работы:On (по умолчанию) — коммутатор периодически отправляет на удаленный порт DTP-фрейм, которым извещает, что он работает как транковый порт. Включается командой S1(config-if)#switchport mode trunk. Если удаленный порт работает как access-порт, локальный порт не рекомендуется использовать с этим режимом DTP.Dynamic auto — коммутатор периодически отправляет на удаленный порт DTP-фрейм, которым извещает, что он готов работать как транковый порт, но не требует работать в транковом режиме. Порт включает транковый режим, если удаленный порт уже работает, как транковый или у него настроен режими Dynamic desirable, порты согласовуют работу в транковом режиме. Если удаленный порт настроен тоже как  Dynamic auto, согласование не проводится — порты работают как порты доступа. Если удаленный порт — access, локальный тоже access. Включается командой S1(config-if)#switchport mode dynamic auto.Dynamic desirable — коммутатор периодически отправляет на удаленный порт DTP-фрейм, которым извещает, что он готов работать как транковый порт и просит работать в транковом режиме. Если удаленный порт работает в режиме Dynamic auto или Dynamic desirable, порты переходят работать в транковый режим. Если удаленный порт не поддерживает согласование, локальный порт работает в нетранковом режиме.Отключить согласование режимов работы можно командой S1(config-if)#switchport nonegotiate.Команды для настройка VLANов1. S1(config)#vlan vlan id — добавление VLAN.2. S1(config-vlan)#name vlan name — присвоение имени VLANу.3. S1#show vlan brief — проверка наличия VLANа в база данных, access-портов, принадлежащих VLANу4. S1(config-if)#switchport mode access — перевод порта в режим работы access-порта.    S1(config-if)#switchport access vlan vlan id — назначение номера VLANа порту.5. S1#show interfaces [interface-id  | vlan vlan-id] | switchport — проверка режима работы конкретного интерфейса6. S1(config-if)#no switchport access vlan — исключение порта из VLANа с настроенным номером и перевод его вVLAN по умолчанию7. S1(config)#no vlan vlan id — удаление VLANа из базы данных. Перед этим обязательно надо удалить все порты из этого VLANа, иначе они будут недоступны.8. S1#delete flash:vlan.dat — удаление всей базы VLANов. Останутся только VLANы по умолчанию.9. S1(config-if)#switchport mode trunk — принудительный перевод режима работы порта в транковый.10. S1(config-if)#switchport trunk native vlan vlan id — изменение родного VLANа для транкового порта.11. S1(config-if)#switchport trunk allowedvlan id — назначение VLANов, которые могут проходить через порт. Без применения этой команды все VLANы могут проходить через порт.12. S1(config-if)#no switchport trunk allowed vlan — сброс всех разрешенных VLANов на транковом порту.13. S1(config-if)#no switchport trunk native vlan — возвращение VLAN1 как родного VLANа на транковом порту.

Обеспечение безопасности канального уровня средствами коммутаторов Cisco

Локалка стала доставлять много хлопот? Пользователи получают левые айпишники по DHCP? Красноглазые пионеры балуются спуфингом? Всю сеть время от времени штормит? Пора изучать матчасть и настраивать фирменный коммутатор!

Как ни банально звучит, но канальный уровень — это краеугольный камень безопасности компьютерной сети. Принципы работы коммутаторов Ethernet, а также протоколы ARP и DHCP, использующие широковещательные рассылки, разработаны много лет назад. В основе этих подходов — доверие участников сетевых взаимодействий друг к другу, что в сегодняшних реалиях неприемлемо. Атаковать узлы и/или нарушить работоспособность локальной сети, построенной на основе неуправляемых свитчей, — проще простого.

С незапамятных времен известны такие атаки, как переполнение таблицы MAC-адресов (CAM-таблицы) коммутатора (MAC-флудинг) и различные способы подмены MAC-адресов (MAC-спуфинг и ARP-спуфинг). Примечательно, что большинство классических атак канального уровня основано не на каких-либо уязвимостях, а на вполне стандартном поведении сетевых стеков современных операционных систем. Так, чтобы вмешаться в ход взаимодействия двух узлов, достаточно отправить одному из них соответствующий ARP-пакет (третья строка дампа трафика):

20:36:04.674993 08:00:27:53:1e:3e > 0a:00:27:00:00:00, ethertype IPv4 (0x0800), length 98: 192.168.56.101 > 192.168.56.1: ICMP echo request, id 801, seq 11, length 64 20:36:04.675033 0a:00:27:00:00:00 > 08:00:27:53:1e:3e, ethertype IPv4 (0x0800), length 98: 192.168.56.1 > 192.168.56.101: ICMP echo reply, id 801, seq 11, length 64  20:36:05.468048 01:01:01:01:01:01 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 42: Reply 192.168.56.1 is-at 01:01:01:01:01:01, length 28  20:36:05.685509 08:00:27:53:1e:3e > 01:01:01:01:01:01, ethertype IPv4 (0x0800), length 98: 192.168.56.101 > 192.168.56.1: ICMP echo request, id 801, seq 12, length 64

Сегментация сети как метод защиты снимает часть проблем, но порождает другие угрозы. Классикой уже успели стать различные техники, применяемые против виртуальных локальных сетей (VLAN): VLAN-hopping, нелегальный Q-in-Q и подобные. Служебные протоколы (STP, CDP, DTP) также успешно эксплуатируются для получения информации о сети и реализации некоторых видов атак.

Как же противостоять угрозам канального уровня? Это сложный вопрос. Но очевидно, что первый рубеж защиты приходится на уровень доступа к сетевой инфраструктуре. А основной инструмент борьбы со злом — управляемый коммутатор.

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

Между тем коммутаторы Cisco позволяют эффективно контролировать широковещательный (broadcast), многоадресный (multicast) или одноадресный (unicast) трафик. Например, используя консоль, настроим устройство для борьбы с широковещательным штормом. Сначала войдем в режим конфигурирования:

# conf t

Потом переключимся в режим конфигурирования интерфейса (например, gigabite ethernet 0/1) и введем две команды:

(config)# int gi 0/1  (config-if)# storm-control broadcast level 20.00  (config-if)# storm-control action shutdown

Первая команда устанавливает максимальный уровень широковещательного трафика в 20 процентов от полосы пропускания. Порог можно устанавливать не только в процентах, но и в битах в секунду (bps).

Вторая команда определяет, какое действие должно быть совершено, когда лимит будет достигнут, — отключить порт (shutdown). Если действие не указывать, то свитч будет просто фильтровать трафик, превышающий порог, и не отправлять никаких оповещений. SNMP-трапы и сообщения в Syslog можно включить, если указать action trap.

Чтобы в этом примере коммутатор автоматически восстанавливал порт, скажем, через 5 минут (равно 300 секунд) после отключения, нужно в глобальной конфигурации дать такие команды:

# errdisable recovery cause storm-control  # errdisable recovery interval 300

Можно в broadcast level указать два порога. Тогда при достижении первого порт будет отключаться, при падении broadcast-трафика до уровня второго — включаться:

(config-if)# storm-control broadcast level 20.00 5.00

У коммутаторов Cisco есть также штатное средство обнаружения петель, основанное на периодической отправке keepalive-сообщений. Эта опция обычно включена по умолчанию, и в случае срабатывания порт отключается. Для механизма keepalive можно также настроить автоматическое включение интерфейса:

# errdisable recovery cause loopback
webinterface.jpg
У коммутаторов Cisco есть веб-интерфейс

Другие статьи в выпуске:cover-3-215x280.jpg

Хакер #172. Спецвыпуск о Raspberry Pi!

Субинтерфейсы чрезвычайно важны при настройке связи между двумя или более VLAN. Особенно, если вы работаете с оборудованием от производителя Cisco. Однако важно усилить несколько важных концепций, прежде чем переходить к рассматриваемым субинтерфейсам. Эти подчиненные интерфейсы также существуют в любом Linuxна основе маршрутизатора, хотя они и называются не субинтерфейсами, а виртуальными интерфейсами, но на самом деле это одно и то же, и служит той же цели: для взаимодействия имеющихся у нас VLAN.В некоторой степени он похож на компьютер. Хотя все компьютеры имеют один проводной сетевой интерфейс, в соответствии с нашими потребностями вы можете добавить одну или несколько сетевых карт, чтобы у вашего компьютера было несколько интерфейсов. То же самое относится к беспроводным сетевым интерфейсам, то есть на одном компьютере может быть несколько беспроводных сетевых интерфейсов. Последнее особенно полезно, если вас интересуют действия, связанные со взломом сетей Wi-Fi.С другой стороны, какова именно роль маршрутизатора? Это устройство может подключаться к одной или нескольким сетям. В свою очередь, он может подключаться к другим маршрутизаторам для обмена информацией о маршрутизации. Сама маршрутизация стала возможной благодаря таблицам маршрутизации. У каждого маршрутизатора есть таблица маршрутизации, в которой указаны возможные места назначения, по которым следует перенаправить путь, по которому следует каждый пакет данных. Маршрутизатор имеет все необходимые функции, чтобы иметь возможность принимать решения о том, какой из них является наилучшим, чтобы ни один пакет данных не был отброшен или заблокирован в какой-то момент его прохождения по сети.

Маршрутизатор на палочке

Если у вас «нормальный» коммутатор L2, вам потребуются услуги маршрутизатора для взаимодействия сетей VLAN, декапсуляции и инкапсуляции сетей VLAN для правильной связи. Что означает Router-on-a-Stick? Давайте посмотрим на этот пример сети:Если мы масштабируем случай до четырех, пяти, шести или более VLAN, это будет практически невозможно. Очень легко и маршрутизатор, и порты коммутатора будут заняты, что вызывает различные трудности при управлении обоими устройствами. Вот почему концепция Router-on-a-Stick позволяет создавать суб-интерфейсы в маршрутизаторе, то есть в том же физическом интерфейсе маршрутизатора мы можем создавать виртуальные интерфейсы или суб-интерфейсы, и каждый из них Он будет связан с одной из VLAN, которые есть в нашей сети.Что касается коммутатора, если мы применим Router-on-a-Stick, нам понадобится только магистральный порт.

Как настроить суб-интерфейсы

Вначале мы отметили, что субинтерфейсы в значительной степени применяются в устройствах производителя Cisco. По этой причине мы собираемся продемонстрировать его работу через конфигурацию через CLI (интерфейс командной строки) самого маршрутизатора Cisco. Первое, что мы должны гарантировать, это то, что коммутатор или коммутаторы в нашей сети правильно настроены для портов доступа и назначения VLAN.Switch1#configure terminalSwitch1 (config)# interface gigabitEthernet 0/1Switch1 (config-if)# switchport mode accessSwitch1 (config-if)# switchport access vlan 100Switch1 (config-if)# interface gigabitEthernet 0/2Switch1 (config-if)# switchport mode accessSwitch1 (config-if)# switchport access vlan 200Мы также должны гарантировать правильную конфигурацию нашего магистрального порта, которая позволит трафику различных VLAN перемещаться к маршрутизатору и наоборот.Switch1 (config)# interface gigabitEthernet 0/24Switch1 (config-if)# switchport trunk encapsulation dot1qSwitch1 (config-if)# switchport mode trunkОдна из введенных нами команд такова:switchport trunk encapsulation dot1qЭто относится к IEEE 802.1Q связь стандарт . По сути, это протокол, который позволяет каждому кадру Ethernet, генерируемому хостами (компьютерами), иметь идентификатор VLAN, то есть идентификатор, который указывает, в какую VLAN этот кадр должен перейти. Этот протокол работает только между сетевыми устройствами: маршрутизаторами и коммутаторами. Он не применяется к хостам, поэтому, как только он достигает места назначения, этот идентификатор VLAN отправляется без тегов или без тегов, то есть он представляется как обычный кадр Ethernet.Теперь мы настраиваем роутер. Всегда перед настройкой субинтерфейсов мы должны убедиться, что интерфейсы действительно работают. Поэтому мы всегда должны начинать с команды «без выключения», чтобы активировать их. Затем вы можете начать с подчиненных интерфейсов.(config)# interface gigabitEthernet 0/0(config-if)# no shutdown(config-if)# exit(config-if)# interface gigabitEthernet 0/0.100(config-subif)# encapsulation dot1Q 100(config-subif)# ip address 192.168.1.1 255.255.255.0(config-subif)# exit(config)# interface gigabitEthernet 0/0.200(config-subif)# encapsulation dot1Q 200(config-subif)# ip address 192.168.2.1 255.255.255.0(config-subif)# exitСовет, который используется, заключается в том, что каждый подчиненный интерфейс имеет ту же нумерацию, что и номер VLAN, с которой мы работаем. Как мы видим в примерах команд, один субинтерфейс — .100 (для VLAN 100), а другой — .200 (для VLAN 200). Это больше, чем что-либо для настройки и администрирования намного легче и избежать проблем.С другой стороны, мы снова видим команду «encapsulation dot1Q», и на этот раз она сопровождается идентификатором соответствующей ей VLAN. Это позволит каждому подинтерфейсу интерпретировать все тегированные кадры 802.1Q, поступающие из магистрального порта коммутатора. Если это не настроено, маршрутизатор не будет интерпретировать кадры и не будет знать, куда направить каждый из них.Наконец, мы видим назначение IP-адресов для каждого подчиненного интерфейса. Эти же IP-адреса будут настроены на каждом хосте и будут действовать как шлюз по умолчанию . То есть на каждом компьютере в VLAN 100 должен быть настроен адрес 192.168.1.1 как шлюз. То же самое и с VLAN 200, IP-адрес шлюза 192.168.2.1.Router-on-a-Stick — одна из самых важных концепций, когда дело касается сетей. Он выделяется, главным образом, тем, что позволяет в полной мере использовать несколько портов наших сетевых устройств. Интерфейс маршрутизатора может иметь один или несколько подчиненных интерфейсов. Это обеспечивает масштабируемость и гибкость нашей сети без ненужных затрат. Важным аспектом является то, что настоятельно рекомендуется, чтобы эта магистраль работала на мультигигабитных скоростях и даже на скоростях 10 Гбит / с, чтобы не создавать узких мест в этом канале при передаче файлов между VLAN.Используемые источники:

  • http://laferont.blogspot.com/2013/12/vlan.html
  • https://xakep.ru/2013/08/23/safe-among-perimetr/
  • https://itigic.com/ru/interfaces-and-sub-interfaces-in-a-router-what-are-they/

Рейтинг автора
5
Подборку подготовил
Андрей Ульянов
Наш эксперт
Написано статей
168
Ссылка на основную публикацию
Похожие публикации