Современные информационные технологии/Информационная безопасность

Мясищев А.А., Полозова В.М.

Хмельницкий национальный университет

Использование списков управления доступом ACL для ограничения прохождения IP трафика через управляемые коммутаторы фирмы D-Link

При построении большой компьютерной сети масштаба университета часто возникает необходимость в фильтрации проходящих данных. Обычно между корпусами, крупными подразделениями устанавливают управляющие коммутаторы, как правило, повышенной производительности. В качестве примера рассмотрим коммутатор фирмы D-Link DES-3326SR третьего уровня для выполнения задачи фильтрации пакетов между портами.

Коммутаторы для ограничения прохождения трафика позволяют создавать профили доступа, которые указывают ему, какие виды пакетов принимать, а какие отвергать. Прием пакетов или отказ в приеме основывается на определенных признаках, таких как адрес источника, адрес приемника, адрес порта источника и приемника. С помощью сформированных списков управления доступом (ACLAccess Control Lists) профиль управления доступом дает возможность просматривать определенные пакеты, указанные в списках ACL.

         В коммутаторах D-Link существует два основных типа профилей управления доступом: Ethernet и IP. Фильтрация в этих типах профилей может выполняться на основе  MAC-адресов источника и приемника, VLAN,  IP-адресов, номеров портов.

         Профили доступа работают последовательно, в порядке возрастания их номеров (Profile ID). Пакет проверяется на соответствие условиям, указанным в профилях доступа, начиная с первого профиля. Если профиль подходит, пакет или принимается или отбрасывается и дальше не проверяется. Если не один профиль не подходит, применяется политика по умолчанию, которая разрешает прохождение всего трафика.

         Процесс создания профилей доступа делиться на два этапа:

1. Создание маски профиля доступа: указывается, какую часть или части кадра будет проверять коммутатор, например IP–адрес назначения или IP–адрес назначения и IP–адрес источника.

2. Создание правил профиля доступа: вводится условие, которое коммутатор будет использовать для определения действий над кадром (принять кадр или отбросить).

         Первый этап: Создание маски профиля (Access Profile Mask). Опыт работы показал, что лучше выполнять  с помощью командной строки.

Основные параметры команды создания маски профиля для профиля доступа IP представлены в таблице 1.

Таблица 1

Команда

Параметры

Описание

create access_profile

ip

source_ip_mask <netmask>

destination_ip_mask<netmask>

tcp

src_port_mask <0x0-0xffff>

dst_port_mask <0x0-0xffff>

udp

src_port_mask <0x0-0xffff>

dst_port_mask <0x0-0xffff>

permit

deny

 

 

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

Входящие в команду параметры обозначают следующее:

ip – коммутатор будет исследовать ip – адрес в заголовке каждого кадра т.е. source_ip_mask <netmask> маску адреса источника (пример 255.255.255.0) и destination_ip_mask <netmask> маску адреса назначения (пример 255.255.255.0);

tcp – коммутатор будет исследовать поля протокола tcp в заголовке каждого кадра т.е. src_port_mask <0x0-0xffff> маску порта источника и dst_port_mask <0x0-0xffff> маску порта приемника;

аналогично для протокола udp;

permit – указывает на то, что пакет, который соответствует данному профилю, будет принят и передан коммутатором;

deny - указывает на то, что пакет, который соответствует данному профилю, будет отброшен коммутатором;

profile_id <1-255> - идентификатор данного профиля.

Удаление созданного профиля доступа выполняется командой:

delete access_profile profile_id <1-255>

         Второй этап: Создание правила для маски профиля доступа. Основные параметры этой команды для IP профиля представлены в таблице 2.

Таблица №2

Команда

Параметры

Описание

config access_profile_id <1-255>

add access_id <1-255>

ip

source_ip <ipaddr>

destination_ip <ipaddr>

tcp

src_port <0-65535>

dst_port <0-65535>

udp

src_port <0-65535>

dst_port <0-65535>

delete <1-255>

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

Входящие в команду параметры обозначают следующее:

add access_id <1-255> - добавляет правило в пределах одного профиля;

ip – коммутатор будет исследовать ip – адрес в заголовке каждого кадра т.е. source_ip <ipaddr> - ip адрес источника пакета от которого должен проверять коммутатор, добавляя последовательно адреса, количество которых определяется маской, и destination_ip <ipaddr> - аналогично для ip - адреса назначения пакета;

tcp – коммутатор будет исследовать поля протокола tcp в заголовке каждого кадра т.е. src_port <0-65535> номер порта tcp источника пакета от которого будут отсчитываться следующие порты в соответствии с маской, и dst_port <0-65535> аналогично для порта назначения пакета;

аналогично для протокола udp;

delete <1-255> - удаляет правило в пределах профиля.

         Рассмотрим примеры конфигурации коммутатора в соответствии со схемой, представленной на рис.1.

 

Рис.1

 

Необходимо выполнить следующие действия:

1. Запретить доступ с компьютера 192.168.200.2 на 172.20.4.250

2. Запретить доступ с компьютера 192.168.200.2 на 172.20.4.250 по ftp

3. Запретить доступ с компьютера 192.168.200.2 на 172.20.4.250 по ftp и с 172.20.4.250 на 192.168.200.2 по telnet

4. Запретить доступ с сети 172.20.0.0 (255.255.255.0) на компьютер 192.168.200.2 по ftp

5. Запретить доступ по ftp с любой сети

6. Разрешить доступ только к компьютеру 192.168.200.2 с сети 172.20.0.0 (маска 255.255.255.0). Все остальное запретить.

Исходные данные:

1.Коммутатор DES-3326SR

2.Компьютер 192.168.200.2 с установленным шлюзом 192.168.200.1 (ОС Unix)

3.Компьютер 192.168.200.3 с установленным шлюзом 192.168.200.1 (ОС Windows XP)

4. Компьютер 195.230.136.2 с установленным шлюзом 195.230.136.1 (ОС Unix)

5. Компьютер 172.20.0.149 с установленным шлюзом 172.20.0.200 (ОС Unix)

6. Компьютер 172.20.4.250 с установленным шлюзом 172.20.0.200 (ОС Unix)

Коммутатор DES-3326SR настраиваем, как представлено на рис.1[1].

1.Создание виртуальных сетей (VLAN) и привязка их к номерам портов коммутатора (таблица 3).

                                                                           Таблица 3

VLAN

PORT

default

13-26

vlB

7-12

vlA

1-6

create vlan vlA tag 2 (создание VLAN с именем vlA  и идентификатором 2)
create vlan vlB tag 3
config vlan default delete 1-12  (
удалить с VLAN с именем default  порты 1-12, для назначеня их другим VLAN)
config vlan vlA add untagged 1-6  (
добавить к VLAN vlA порты с 1 по 6)
config  vlan vlB add untagged 7-12

2.Создание на базе VLAN интерфейсов с присвоением им соответствующих ip адресов (таблица 4).

                                                                                     Таблица 4

VLAN -name

VID

имя интерфейса

номер сети

ip адрес интерфейса

default

1

System

172.20.0.0

172.20.0.210

vlA

2

SysA

192.168.200.0

192.168.200.1

vlB

3

SysB

195.230.136.0

195.230.136.1

 

create ipif SysA 192.168.200.1/24 vlA state enable    (создать интерфейс с именем SysA и адресом 192.168.200.1 и включить его)
create ipif SysB 195.230.136.1/24 vlB state enable

Создаем профили для выполнения заданных ограничений трафика.
1. Запретить доступ с компьютера 192.168.200.2 на 172.20.4.250. Компьютер 192.168.200.2 является узлом-источником, а 172.20.4.250 – узлом назначения. Маска 255.255.255.255 определяет один компьютер.

 

create access_profile ip destination_ip_mask 255.255.255.255 source_ip_mask 255.255.255.255 deny profile_id  1

config access_profile profile_id 1 add access_id 1 ip destination_ip 172.20.4.250 source_ip  192.168.200.2

 

2. Запретить доступ с компьютера 192.168.200.2 на 172.20.4.250 по ftp.

Здесь узел-источник - 192.168.200.2, узел-назначения - 172.20.4.250. Порт 21 (ftp) находится на узле назначения и должен быть закрыт. Маска порта 0xFFFF соответствует единственному порту (21), а маска 0x0 – любому.

 

create access_profile ip destination_ip_mask 255.255.255.255 source_ip_mask 255.255.255.255 tcp dst_port_mask 0xFFFF src_port_mask 0x0 deny profile_id  1

config access_profile profile_id 1 add access_id 1 ip destination_ip 172.20.4.250 source_ip 192.168.200.2 tcp dst_port 21

 

Если ввести команду

show access_profile                                               

то коммутатор распечатает таблицу доступа:     

 

Access Profile Table

 

Access Profile  ID : 1                                                                          Mode : Deny

 TYPE : IP

===========================================================

MASK Option :

Source IP MASK  Dst. IP MASK         TCP Src.P  Dst.P 

255.255.255.255     255.255.255.255     0x0 0xFFFF

--------------- --------------- -----------------

Access ID : 1   (251)                               

--------------- --------------- -----------------

192.168.200.2           172.20.4.250          0         21    

===========================================================

 

Total Entries : 1

 

3. Запретить доступ с компьютера 192.168.200.2 на 172.20.4.250 по ftp и с 172.20.4.250 на 192.168.200.2 по telnet. Здесь необходимо создать два правила - одно для 21 порта (ftp):

 

create access_profile ip destination_ip_mask 255.255.255.255 source_ip_mask 255.255.255.255 tcp dst_port_mask 0xFFFF src_port_mask 0x0 deny profile_id  1

config access_profile profile_id 1 add access_id 1 ip destination_ip 172.20.4.250 source_ip 192.168.200.2 tcp dst_port 21

 

другое для 23 (telnet):

 

config access_profile profile_id 1 add access_id 2 ip destination_ip 192.168.200.2 source_ip 172.20.4.250 tcp dst_port 23

 

4. Запретить доступ с сети 172.20.0.0 (маска сети класса C 255.255.255.0) на компьютер 192.168.200.2 по ftp. Здесь узел назначения один, поэтому маска 255.255.255.255, а узлы-источники – сеть из 254 узлов, поэтому маска 255.255.255.0. Отсчет ведется для сети от компьютера с адресом 172.20.0.1

 

create access_profile ip destination_ip_mask 255.255.255.255 source_ip_mask 255.255.255.0 tcp dst_port_mask 0xFFFF src_port_mask 0x0 deny profile_id  1

config access_profile profile_id 1 add access_id 1 ip destination_ip 192.168.200.2 source_ip 172.20.0.1 tcp dst_port 21

 

5. Запретить через коммутатор доступ по ftp с любой сети. Здесь порт 21 соответствует узлу-источнику:

 

create access_profile ip tcp dst_port_mask 0xFFFF deny profile_id  1

config access_profile profile_id 1 add access_id 1 ip tcp dst_port 21

 

Задачи с 1 по 5 соответствовали случаю, когда запрещались какие-то оговоренные условия. Все остальное позволялось. Но существуют и другие случаи – когда что-то разрешается, а все остальное запрещается.

 

6. Разрешить доступ только к компьютеру 192.168.200.2 с сети 172.20.0.0 (маска 255.255.255.0). Все остальное запретить. 192.168.200.2 – узел назначения, компьютеры с 172.20.0.1 – 172.20.0.254 – узлы источники.

 

6.1. Разрешить полный доступ от сети 172.20.0.0/24 к узлу 192.168.200.2

create access_profile ip destination_ip_mask 255.255.255.255 source_ip_mask 255.255.255.0 permit profile_id 1

config access_profile profile_id 1 add access_id 1 ip destination_ip 192.168.200.2 source_ip 172.20.0.1   

 

6.2. Разрешить доступ к сети 172.20.0.0/24 со стороны любой сети

create access_profile ip destination_ip_mask 255.255.255.0  permit profile_id 2     

config access_profile profile_id 2 add access_id 1 ip destination_ip 172.20.0.1 

 

6.3. Запретить все остальное

create access_profile ip source_ip_mask 0.0.0.0 deny profile_id 4

config access_profile profile_id 4 add access_id 1 ip source_ip 0.0.0.0  

 

Представленная здесь технология ограничения трафика позволяет эффективно управлять трафиком  для коммутаторов, установленных на магистральных участках сети. Необходимо иметь в виду, что общее количество профилей не должно превышать 10, а количество правил по всему коммутатору – 250

 

Литература.

1.Мясщев А.А., Полозова В.М. Структуризация сети с помощью маршрутизирующего коммутатора фирмы D-LinkDES-3326SR. Матеріали Міжнародної науково-практичної конференції «Наука та інновації - 2005». Том 3. Дніпропетровськ: Наука та освіта, 2005. – 74 с.

2.Маршрутизирующие коммутаторы фирмы D-Link. http://www.dlink.ru