Использование object-groups в ACL на Cisco IOS
В качестве памятки себе, решил оформить статью по использованию object-groups при создании ACL на Cisco IOS. Все ниже описанные действия будут производится на CISCO2911/K9
с версией прошивки 15.4(3)M9
.
object-groups
бывают двух типов:
network
— Сетевые объекты (network group). Сетевые объекты позволяют группировать IP-адреса хоста, Подсети, Диапазоны IP-адресов и другие группы сетевых объектов.service
— (service group). Сервисные объекты позволяют указать исходные и целевые порты протокола (такие как Telnet или SNMP), Типы ICMP (такие как echo, echo-reply или host-unreachable), протоколы верхнего уровня (такие как TCP, UDP или ESP) и другие группы сервисных объектов.
Использование object-groups в ACL, позволяет легко добавлять / удалять записи, сохраняя при этом упорядоченную и читаемую структуру ACL. Так же object-groups обеспечивает простой и интуитивно понятный механизм для настройки и управления большими списками ACL, особенно тех, которые часто меняются.
Рассмотрим на примере, как настроить 2 отдела (прим. SALES
и HR
) для доступа к тому или иному серверу (прим. PROXY
или MAIL
), по определенным портам (прим. WEB-PORTS
и MAIL-PORTS
).
Сперва в object-groups
определим сетевые объекты отделов, которым будет предоставлен доступ:
object-group network SALES
host 10.20.20.1
range 10.50.1.23 10.50.1.45
object-group network HR
host 10.20.20.50
10.240.12.0 255.255.255.0
Теперь определяем в object-groups
, сервера, к которым необходим доступ из отделов:
object-group network PROXY
host 10.10.10.100
host 10.10.10.200
object-group network MAIL
10.10.10.16 255.255.255.240
Далее определим сервисные типы объектов, по которым будет разрешен доступ на сервера и отделов:
object-group service WEB-PORTS
tcp www
tcp 8080
tcp 443
object-group service MAIL-PORTS
tcp smtp
tcp pop3
Выполним следующую конструкцию ACL:
- Доступ к серверам
PROXY
, по портамWEB-PORTS
имеют хосты изSALES
. - Доступ к серверам
MAIL
, по портамMAIL-PORTS
имеют хосты изHR
.
ip access-list ext My-OBJECT-ACL
permit object-group WEB-PORTS object-group SALES object-group PROXY
permit object-group MAIL-PORTS object-group HR object-group MAIL
Посмотреть имеющиеся object-groups
и access-list
, можно командами:
sh object-group
sh ip access-list
ПОНРАВИЛАСЬ ИЛИ ОКАЗАЛАСЬ ПОЛЕЗНОЙ СТАТЬЯ, ПОДДЕРЖИ АВТОРА ДОНАТОМ
Здравствуйте! А что будет, если к ACL привязать пустую object-group? как себя поведет ACL? Не пропустит ничего по этому правилу, или пропустить все?
Никак, посмотрит пусто и пойдет дальше.