Общая информация
ACL (Access Control List )или Списки доступа) — набор правил, выполняющих фильтрацию трафика по определенным критериям. В качестве критериев могут выступать определенные MAC/IP-адреса или их диапазоны, номера портов TCP/UDP, ethertype, номер VLAN, метки 802.1p/DSCP и так далее. ACL распространяются как на транзитный трафик, проходящий через OLT без обработки, так и на трафик, обрабатываемый OLT (управление, трафик попадающий под DHCP/IGMP/PPPoE snooping).
Относительно OLT предыдущего поколения LTP-X, на OLT нового поколения функционал ACL это инструмент фильтрации трафика в виде упорядоченного набор правил, который основывается на определённых критериях с целью обеспечения безопасности и управления потоками данных.
На устройствах серии LTP-N и LTX функционал ACL был переработан. Форма представления правил фильтрации была упрощена относительно предыдущих моделей LTP-X, однако их старая форма представления прежнее представление осталась логически прозрачной прозрачным для новых устройств, что делает конфигурацию в области ACL авто- конвертируемой между разными поколениями OLT и упрощает перенос настроек с предыдущих моделей на LTP-N; LTX.
Функционал ACL можно разделить на 2 основных типа по уровню взаимодействия систем - L2 и L3.
Layer 2
данного блока конфигурации с OLT предыдущего поколения на новые.
На OLT предусмотрено 2 типа списков доступа: L2 ACL (MAC access-list) и L3 ACL (IP access-list).
L2 списки доступа MAC ACL содержат Для фильтрации на канальном уровне предусмотрен MAC access-list. Он поддерживает следующие критерии фильтрации:
- Src MAC - MAC адрес источника;
- Dst MAC - MAC адрес назначения;
- VLAN - Тэг в заголовке vlanидентификатор VLAN;
- COS - метка CoS согласно стандарту 802.1p CoS;
- Ethertype - тип сетевого протокола
Layer 3
Для фильтрации пакетов данных на сетевом уровне предусмотрен access-list IP. В него входят :
...
- поле ethertype фрейма ethernet.
В свою очередь, L3 списки доступа IP ACL содержат все те же критерии, что и MAC ACL, а так же:
...
- Src IP - IP адрес источника;
- Dst IP - IP адрес назначения;
- DSCP - метка DSCP QoS;
- Precedence - приоритет в DS Field;
- Proto ID - идентификатор протокола транспортного уровня (TCP/UDP);
- Src port - порт источника, который использует протокол на транспортном уровне;
- Dst port - порт назначения, который использует протокол на транспортном уровне;
| Подсказка |
|---|
Access-list IP ACL является более универсальным и поддерживает широкий список правил, в который, в том числе, входят правила уровня L2. |
| Примечание |
списка доступа. Если требуется фильтровать трафик только на канальном уровне, то рекомендуем использовать MAC access-list. |
Настройка
Оба типа ACL работают по двум основным принципам: black list и white list.
В первом случае формируются правила запрета прохождения кадров на основе одного или нескольких критериев. Весь трафик, не подпадающий под логику запрещающих правил, будет пропущен.
Во втором случае формируется список разрешающих правил и трафик, не подпадающий под логику этого списка, будет отброшен.
Рассмотрим несколько примеров настройки.
Задача №1: Запретить прохождение PPPoE в сервисном vlan IPoE. Пусть тэг vlan равен 234.
Решение - сформируем black list на основе ethertype и vlan:
| Блок кода |
|---|
access-list mac noPPP
deny any any vlan 234 ethertype 0x8863 0xFFFF index 1
deny any any vlan 234 ethertype 0x8864 0xFFFF index 2 |
| Подсказка |
|---|
| Значение 0xFFFF является маской для параметра ethertype. Маска 0x0000 равнозначна any. Маска 0xFFFF соответствует одному конкретному ethertype. |
Затем назначим его на pon-port :
| Блок кода |
|---|
interface pon-port 1
access-list mac "noPPP" |
Задача №2: Разрешить трафик из сетей 1.1.1.0 - 3.3.3.0/24 в сеть 5.0.0.0/8
Решение - сформировать white list на основе IP-адресов источника и назначения:
| Блок кода |
|---|
access-list ip whiteListIp
permit any 1.1.1.0 255.255.255.0 5.0.0.0 255.0.0.0 index 1
permit any 2.2.2.0 255.255.255.0 5.0.0.0 255.0.0.0 index 2
permit any 3.3.3.0 255.255.255.0 5.0.0.0 255.0.0.0 index 3 |
Затем назначим его на pon-port :
| Блок кода |
|---|
interface pon-port 1
access-list ip "whiteListIp"
access-list mac "noPPP" |
| Примечание |
|---|
На один интефрейс можно назначить по одному ACL каждого типа (MAC access-list и access-list IP). |
Задача №3: Запретить прохождения трафика для протоколов RPC , SSDP и mDNS.
Решение - сформировать black list на основе порта назначения протокола транспортного уровня. Правила будут выглядеть так:
по L2 критериям, рекомендуем использовать MAC ACL. |
По умолчанию списки доступа на OLT работают в режиме blacklist (разрешено всё, что не запрещено). Возможно также формирование whitelist, в этом случае после перечисления в списке доступа разрешающих правил, последним правилом необходимо указать правило, которое будет запрещать всё остальное – deny any any.
| Примечание |
|---|
Списки доступа, настраиваемые на OLT, при их применении распространяются только на трафик, поступающий на интерфейсы (ingress). На один интерфейс можно назначить по одному ACL каждого типа (один MAC ACL + 1 IP ACL). |
ACL могут быть применены только на uplink интерфейсы front-port, port-channel и downlink интерфейсы pon-port. Применение ACL по отдельно взятым ONT не поддержано.
Настройка функционала
В качестве примера рассмотрим комплексную настройку нескольких правил фильтрации трафика для интерфейсов pon-port и front-port. Схема фильтрации продемонстрирована на диаграмме:
| draw.io Diagram | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
В соответствии с данной схемой необходимо:
- Ограничить поступление входящих со стороны сети оператора пакетов UDP с src port = 68 (пакеты DHCP Discover, DHCP Request);
- Ограничить поступление входящих со стороны абонентов, подключенных к интерфейсу pon-port 1, фреймов PPPoE (ethertype 0x8863, 0x8864);
- Ограничить поступление входящих со стороны абонентов, подключенных к интерфейсу pon-port 1, пакетов UDP с dst port = 1900, 5353 (протоколы SSDP, mDNS);
- Весь остальной трафик пропускать без ограничений.
Для реализации данной задачи можно сформировать два списка доступа IP ACL, каждый из которых будет предназначаться для своего интерфейса. В IP ACL, предназначенном для интерфейса pon-port можно объединить L2 и L3 правила.
Порядок настройки. Подход к формированию ACL (пункты 1, 2) идентичен для OLT всех типов – LTP-N, LTX, MA5160. Порядок назначения ACL на интерфейсы несколько отличается для LTP-N, LTX и MA5160 по причине архитектурных отличий. На MA5160 ACL работают по каждому слоту отдельно. Интерфейсы, на которые будут применяться списки доступа на MA5160:
- uplink в строну управляющих плат FC (lc-slot-channel);
- downlink в сторону ONT (pon-port) – отличий относительно LTP-N, LTX здесь нет.
- Формирование списка доступа для uplink.
Блок кода LTP-16N# configure terminal LTP-16N(configure)# access-list ip uplink_block LTP-16N(config)(access-list-ip-uplink_block)# deny udp any 68 any any index 1 LTP-16N(config)(access-list-ip-uplink_block)# exit - Формирование списка доступа для pon-port
Блок кода LTP-16N(configure)# access-list ip pon_block LTP-16N(config)(access-list-ip-pon_block)# deny any any any ethertype 0x8863 0xFFFF LTP-16N(config)(access-list-ip-pon_block)# deny any any any ethertype 0x8864 0xFFFF LTP-16N(config)(access-list-ip-pon_block)#
...
deny udp any any any 1900
...
LTP-16N(config)(access-list-ip-pon_block)# deny udp any any any
...
1900 LTP-16N(config)(access-list-ip-pon_block)# exit- Применение списков доступа на интерфейсы. Применение и сохранение настроек в энергонезависимую память.
Для LTP-N, LTX данная часть конфигурации будет выглядеть следующим образом:Блок кода LTP-16N(configure)# interface front-port 1 LTP-16N(config)(if-front-1)# access-list ip uplink_block LTP-16N(config)(if-front-1)# exit LTP-16N(configure)#
Затем назначим его на pon-port :
...
Для MA5160 (предположим что правила настраиваются для слота 1):interface pon-port 1 LTP-16N(config)(if-pon-1)# access-list ip pon_block LTP-16N(config)(if-pon-1)# exit LTP-16N(configure)# exit LTP-16N# commit LTP-16N# save
Блок кода MA5160# configure terminal MA5160(configure)# interface lc-slot-channel 1 MA5160(config)(if-lc-slot-channel-1)# access-list ip
...
Связанные статьи
| Содержимое по меткам | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
| hidden | true |
|---|
...
uplink_block MA5160(config)(if-lc-slot-channel-1)# exit MA5160(configure)# interface pon-port 1/1 MA5160(config)(if-pon-1/1)# access-list ip pon_block MA5160(config)(if-pon-1/1)# exit MA5160(configure)# exit MA5160# commit confirm