Spec-Zone.ru › Ansible 2.11

cisco.nxos.nxos_acls – Модуль ресурсов ACL

Примечание

Этот плагин входит в коллекцию cisco.nxos (версия 1.4.0).

Для его установки используйте: ansible-galaxy collection install cisco.nxos.

Чтобы использовать его в плейбуке, укажите: cisco.nxos.nxos_acls.

Новое в версии 1.0.0: модуля cisco.nxos

  • Обзор
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Обзор

  • Управление именованными IP ACL на платформе Cisco NX-OS

Примечание

Этот модуль имеет соответствующий плагин действий.

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
config
список / элементы=словарь
Словарь параметров ACL.
acls
список / элементы=словарь
Список ACL.
aces
список / элементы=словарь
Элементы внутри ACL.
destination
словарь
Указывает пункт назначения пакета.
address
строка
Адрес сети назначения.
any
логическое значение
    Варианты:
  • нет
  • да
Любой адрес назначения.
host
строка
IP-адрес хоста.
port_protocol
словарь
Укажите порт назначения или протокол (только для TCP и UDP).
eq
строка
Соответствие только пакетам на заданном номере порта.
gt
строка
Соответствие только пакетам с большим номером порта.
lt
строка
Соответствие только пакетам с меньшим номером порта.
neq
строка
Соответствие только пакетам, не на заданном номере порта.
range
словарь
Соответствие только пакетам в диапазоне номеров портов.
end
строка
Указывает конец диапазона портов.
start
строка
Указывает начало диапазона портов.
prefix
строка
Префикс сети назначения. Только для префиксов со значением меньше 31 для ipv4 и 127 для ipv6. Префиксы 32 (ipv4) и 128 (ipv6) должны быть указаны в ключе 'host'.
wildcard_bits
строка
Бита маскирования назначения.
dscp
строка
Сопоставить пакеты с заданным значением DSCP.
fragments
логическое значение
    Варианты:
  • нет
  • да
Проверить фрагменты, не являющиеся начальными.
grant
строка
    Варианты:
  • разрешить
  • запретить
Действие, которое будет применено к правилу.
log
логическое значение
    Варианты:
  • нет
  • да
Регистрировать совпадения с этим элементом.
precedence
строка
Сопоставить пакеты с заданным значением приоритета.
protocol
строка
Укажите протокол.
protocol_options
словарь
Все возможные подварианты для выбранного протокола.
icmp
словарь
Параметры протокола ICMP.
administratively_prohibited
логическое значение
    Варианты:
  • нет
  • да
Административно запрещено
alternate_address
логическое значение
    Варианты:
  • нет
  • да
Альтернативный адрес
conversion_error
логическое значение
    Варианты:
  • нет
  • да
Преобразование датаграммы
dod_host_prohibited
логическое значение
    Варианты:
  • нет
  • да
Запрещён хост
dod_net_prohibited
логическое значение
    Варианты:
  • нет
  • да
Запрещена сеть
echo
логическое значение
    Варианты:
  • нет
  • да
Эхо (ping)
echo_reply
логическое значение
    Варианты:
  • нет
  • да
Ответ эхо
echo_request
логическое значение
    Варианты:
  • нет
  • да
Запрос эхо (ping)
general_parameter_problem
логическое значение
    Варианты:
  • нет
  • да
Ошибка параметра
host_isolated
логическое значение
    Варианты:
  • нет
  • да
Хост изолирован
host_precedence_unreachable
логическое значение
    Варианты:
  • нет
  • да
Хост недоступен для приоритета
host_redirect
boolean
    Варианты:
  • нет
  • да
Перенаправление хоста
host_tos_redirect
boolean
    Варианты:
  • нет
  • да
Перенаправление хоста для TOS
host_tos_unreachable
boolean
    Варианты:
  • нет
  • да
Хост недоступен для TOS
host_unknown
boolean
    Варианты:
  • нет
  • да
Хост неизвестен
host_unreachable
boolean
    Варианты:
  • нет
  • да
Хост недоступен
information_reply
boolean
    Варианты:
  • нет
  • да
Ответы на запросы информации
information_request
boolean
    Варианты:
  • нет
  • да
Запросы информации
mask_reply
boolean
    Варианты:
  • нет
  • да
Ответы на маски
mask_request
boolean
    Варианты:
  • нет
  • да
Запросы масок
message_code
integer
Код сообщения ICMP
message_type
integer
Тип сообщения ICMP
mobile_redirect
boolean
    Варианты:
  • нет
  • да
Перенаправление мобильного хоста
net_redirect
boolean
    Варианты:
  • нет
  • да
Перенаправление сети
net_tos_redirect
boolean
    Варианты:
  • нет
  • да
Перенаправление сети для TOS
net_tos_unreachable
boolean
    Варианты:
  • нет
  • да
Сеть недоступна для TOS
net_unreachable
boolean
    Варианты:
  • нет
  • да
Сеть недоступна
network_unknown
boolean
    Варианты:
  • нет
  • да
Сеть неизвестна
no_room_for_option
boolean
    Варианты:
  • нет
  • да
Недостаточно места для параметра
option_missing
boolean
    Варианты:
  • нет
  • да
Параметр не найден
packet_too_big
boolean
    Варианты:
  • нет
  • да
Необходима фрагментация
parameter_problem
boolean
    Варианты:
  • нет
  • да
Проблемы с параметрами
port_unreachable
boolean
    Варианты:
  • нет
  • да
Порт недоступен
precedence_unreachable
boolean
    Варианты:
  • нет
  • да
Превышен приоритет
protocol_unreachable
boolean
    Варианты:
  • нет
  • да
Протокол недоступен
reassembly_timeout
boolean
    Варианты:
  • нет
  • да
Таймаут повторного сборки
redirect
boolean
    Варианты:
  • нет
  • да
Все перенаправления
router_advertisement
boolean
    Варианты:
  • нет
  • да
Реклама маршрутизаторов
router_solicitation
boolean
    Варианты:
  • нет
  • да
Запросы маршрутизаторов
source_quench
boolean
    Варианты:
  • нет
  • да
Запрет источника
source_route_failed
boolean
    Варианты:
  • нет
  • да
Неудача маршрута источника
time_exceeded
boolean
    Варианты:
  • нет
  • да
Все таймауты истекли.
timestamp_reply
boolean
    Варианты:
  • нет
  • да
Отвечать с отметкой времени
timestamp_request
boolean
    Варианты:
  • нет
  • да
Отмечать запросы временем
traceroute
boolean
    Варианты:
  • нет
  • да
Traceroute
ttl_exceeded
boolean
    Варианты:
  • нет
  • да
TTL превышен
unreachable
boolean
    Варианты:
  • нет
  • да
Все недоступные
igmp
dictionary
Параметры протокола IGMP.
dvmrp
boolean
    Варианты:
  • нет
  • да
Протокол маршрутизации мультикаста с вектором расстояния
host_query
boolean
    Варианты:
  • нет
  • да
Запрос к хосту
host_report
boolean
    Варианты:
  • нет
  • да
Отчёт о хосте
tcp
dictionary
Флаги TCP.
ack
boolean
    Варианты:
  • нет
  • да
Соответствие биту ACK
established
boolean
    Варианты:
  • нет
  • да
Соответствие установленным соединениям
fin
boolean
    Варианты:
  • нет
  • да
Соответствие биту FIN
psh
boolean
    Варианты:
  • нет
  • да
Соответствие биту PSH
rst
boolean
    Варианты:
  • нет
  • да
Соответствие биту RST
syn
boolean
    Варианты:
  • нет
  • да
Соответствие биту SYN
urg
boolean
    Варианты:
  • нет
  • да
Соответствие биту URG
remark
string
Комментарий к записи списка доступа.
sequence
integer
Номер последовательности.
source
dictionary
Указать источник пакета.
address
string
Адрес исходной сети.
any
boolean
    Варианты:
  • нет
  • да
Любой адрес источника.
host
string
IP-адрес хоста.
port_protocol
dictionary
Укажите порт назначения или протокол (только для TCP и UDP).
eq
string
Соответствие только пакетам на заданном номере порта.
gt
string
Соответствие только пакетам с большим номером порта.
lt
string
Соответствие только пакетам с меньшим номером порта.
neq
string
Соответствие только пакетам, не на заданном номере порта.
range
dictionary
Соответствие только пакетам в диапазоне номеров портов.
end
string
Укажите конец диапазона портов.
start
string
Укажите начало диапазона портов.
prefix
string
Префикс исходной сети. Только для префиксов маски меньше 31 для IPv4 и 127 для IPv6. Префиксы маски 32 (IPv4) и 128 (IPv6) должны быть указаны в ключе «host».
wildcard_bits
string
Биты подстановки источника.
name
string / обязательно
Имя списка доступа.
afi
string / обязательно
    Варианты:
  • ipv4
  • ipv6
Индикатор семейства адресов (AFI) для списка доступа.
running_config
строка
Этот параметр используется только в состоянии parsed.
Значение этого параметра должно быть выводом устройства NX-OS, полученным в результате выполнения команды show running-config | section 'ip(v6* access-list).
Состояние parsed считывает конфигурацию из параметра running_config и преобразует ее в структурированные данные Ansible в соответствии со спецификацией аргументов модуля ресурса, а затем значение возвращается в ключе parsed в результате.
state
строка
    Выбори:
  • deleted
  • gathered
  • merged ←
  • overridden
  • rendered
  • replaced
  • parsed
Состояние, в котором должна остаться конфигурация

Примечания

Примечание

  • Проверено на NX-OS 7.3.(0)D1(1) на VIRL
  • Поскольку NX-OS позволяет повторно настроить правило с разными номерами последовательности, ожидается, что пользователь предоставит номера последовательности для записей управления доступом, чтобы сохранить идемпотентность. Если номер последовательности не указан, устройство добавит правило как новое.

Примеры

# Using merged

# Before state:
# -------------
#

- name: Merge new ACLs configuration
  cisco.nxos.nxos_acls:
    config:
    - afi: ipv4
      acls:
      - name: ACL1v4
        aces:
        - grant: deny
          destination:
            address: 192.0.2.64
            wildcard_bits: 0.0.0.255
          source:
            any: true
            port_protocol:
              lt: 55
          protocol: tcp
          protocol_options:
            tcp:
              ack: true
              fin: true
          sequence: 50

    - afi: ipv6
      acls:
      - name: ACL1v6
        aces:
        - grant: permit
          sequence: 10
          source:
            any: true
          destination:
            prefix: 2001:db8:12::/32
          protocol: sctp
    state: merged

# After state:
# ------------
#
# ip access-list ACL1v4
#  50 deny tcp any lt 55 192.0.2.64 0.0.0.255 ack fin
# ipv6 access-list ACL1v6
#  10 permit sctp any any

# Using replaced

# Before state:
# ----------------
#
# ip access-list ACL1v4
#   10 permit ip any any
#   20 deny udp any any
# ip access-list ACL2v4
#   10 permit ahp 192.0.2.0 0.0.0.255 any
# ip access-list ACL1v6
#   10 permit sctp any any
#   20 remark IPv6 ACL
# ip access-list ACL2v6
#  10 deny ipv6 any 2001:db8:3000::/36
#  20 permit tcp 2001:db8:2000:2::2/128 2001:db8:2000:ab::2/128

- name: Replace existing ACL configuration with provided configuration
  cisco.nxos.nxos_acls:
    config:
    - afi: ipv4
    - afi: ipv6
      acls:
      - name: ACL1v6
        aces:
        - sequence: 20
          grant: permit
          source:
            any: true
          destination:
            any: true
          protocol: pip

        - remark: Replaced ACE

      - name: ACL2v6
    state: replaced

# After state:
# ---------------
#
# ipv6 access-list ACL1v6
#   20 permit pip any any
#   30 remark Replaced ACE
# ipv6 access-list ACL2v6

# Using overridden

# Before state:
# ----------------
#
# ip access-list ACL1v4
#   10 permit ip any any
#   20 deny udp any any
# ip access-list ACL2v4
#   10 permit ahp 192.0.2.0 0.0.0.255 any
# ip access-list ACL1v6
#   10 permit sctp any any
#   20 remark IPv6 ACL
# ip access-list ACL2v6
#  10 deny ipv6 any 2001:db8:3000::/36
#  20 permit tcp 2001:db8:2000:2::2/128 2001:db8:2000:ab::2/128

- name: Override existing configuration with provided configuration
  cisco.nxos.nxos_acls:
    config:
    - afi: ipv4
      acls:
      - name: NewACL
        aces:
        - grant: deny
          source:
            address: 192.0.2.0
            wildcard_bits: 0.0.255.255
          destination:
            any: true
          protocol: eigrp
        - remark: Example for overridden state
    state: overridden

# After state:
# ------------
#
# ip access-list NewACL
#   10 deny eigrp 192.0.2.0 0.0.255.255 any
#   20 remark Example for overridden state

# Using deleted:
#
# Before state:
# -------------
#
# ip access-list ACL1v4
#   10 permit ip any any
#   20 deny udp any any
# ip access-list ACL2v4
#   10 permit ahp 192.0.2.0 0.0.0.255 any
# ip access-list ACL1v6
#   10 permit sctp any any
#   20 remark IPv6 ACL
# ip access-list ACL2v6
#  10 deny ipv6 any 2001:db8:3000::/36
#  20 permit tcp 2001:db8:2000:2::2/128 2001:db8:2000:ab::2/128

- name: Delete all ACLs
  cisco.nxos.nxos_acls:
    config:
    state: deleted

# After state:
# -----------
#


# Before state:
# -------------
#
# ip access-list ACL1v4
#   10 permit ip any any
#   20 deny udp any any
# ip access-list ACL2v4
#   10 permit ahp 192.0.2.0 0.0.0.255 any
# ip access-list ACL1v6
#   10 permit sctp any any
#   20 remark IPv6 ACL
# ip access-list ACL2v6
#  10 deny ipv6 any 2001:db8:3000::/36
#  20 permit tcp 2001:db8:2000:2::2/128 2001:db8:2000:ab::2/128

- name: Delete all ACLs in given AFI
  cisco.nxos.nxos_acls:
    config:
    - afi: ipv4
    state: deleted

# After state:
# ------------
#
# ip access-list ACL1v6
#   10 permit sctp any any
#   20 remark IPv6 ACL
# ip access-list ACL2v6
#  10 deny ipv6 any 2001:db8:3000::/36
#  20 permit tcp 2001:db8:2000:2::2/128 2001:db8:2000:ab::2/128



# Before state:
# -------------
#
# ip access-list ACL1v4
#   10 permit ip any any
#   20 deny udp any any
# ip access-list ACL2v4
#   10 permit ahp 192.0.2.0 0.0.0.255 any
# ipv6 access-list ACL1v6
#   10 permit sctp any any
#   20 remark IPv6 ACL
# ipv6 access-list ACL2v6
#  10 deny ipv6 any 2001:db8:3000::/36
#  20 permit tcp 2001:db8:2000:2::2/128 2001:db8:2000:ab::2/128

- name: Delete specific ACLs
  cisco.nxos.nxos_acls:
    config:
    - afi: ipv4
      acls:
      - name: ACL1v4
      - name: ACL2v4
    - afi: ipv6
      acls:
      - name: ACL1v6
    state: deleted

# After state:
# ------------
# ipv6 access-list ACL2v6
#  10 deny ipv6 any 2001:db8:3000::/36
#  20 permit tcp 2001:db8:2000:2::2/128 2001:db8:2000:ab::2/128

# Using parsed

- name: Parse given config to structured data
  cisco.nxos.nxos_acls:
    running_config: |
      ip access-list ACL1v4
        50 deny tcp any lt 55 192.0.2.64 0.0.0.255 ack fin
      ipv6 access-list ACL1v6
        10 permit sctp any any
    state: parsed

# returns:
# parsed:
# - afi: ipv4
#   acls:
#     - name: ACL1v4
#       aces:
#         - grant: deny
#           destination:
#             address: 192.0.2.64
#             wildcard_bits: 0.0.0.255
#           source:
#             any: true
#             port_protocol:
#               lt: 55
#           protocol: tcp
#           protocol_options:
#             tcp:
#               ack: true
#               fin: true
#           sequence: 50
#
# - afi: ipv6
#   acls:
#     - name: ACL1v6
#       aces:
#         - grant: permit
#           sequence: 10
#           source:
#             any: true
#           destination:
#             prefix: 2001:db8:12::/32
#           protocol: sctp


# Using gathered:

# Before state:
# ------------
#
# ip access-list ACL1v4
#  50 deny tcp any lt 55 192.0.2.64 0.0.0.255 ack fin
# ipv6 access-list ACL1v6
#  10 permit sctp any any

- name: Gather existing configuration
  cisco.nxos.nxos_acls:
    state: gathered

# returns:
# gathered:
# - afi: ipv4
#   acls:
#     - name: ACL1v4
#       aces:
#         - grant: deny
#           destination:
#             address: 192.0.2.64
#             wildcard_bits: 0.0.0.255
#           source:
#             any: true
#             port_protocol:
#               lt: 55
#           protocol: tcp
#           protocol_options:
#             tcp:
#               ack: true
#               fin: true
#           sequence: 50

# - afi: ipv6
#   acls:
#     - name: ACL1v6
#       aces:
#         - grant: permit
#           sequence: 10
#           source:
#             any: true
#           destination:
#             prefix: 2001:db8:12::/32
#           protocol: sctp


# Using rendered

- name: Render required configuration to be pushed to the device
  cisco.nxos.nxos_acls:
    config:
    - afi: ipv4
      acls:
      - name: ACL1v4
        aces:
        - grant: deny
          destination:
            address: 192.0.2.64
            wildcard_bits: 0.0.0.255
          source:
            any: true
            port_protocol:
              lt: 55
          protocol: tcp
          protocol_options:
            tcp:
              ack: true
              fin: true
          sequence: 50

    - afi: ipv6
      acls:
      - name: ACL1v6
        aces:
        - grant: permit
          sequence: 10
          source:
            any: true
          destination:
            prefix: 2001:db8:12::/32
          protocol: sctp
    state: rendered

# returns:
# rendered:
#  ip access-list ACL1v4
#   50 deny tcp any lt 55 192.0.2.64 0.0.0.255 ack fin
#  ipv6 access-list ACL1v6
#   10 permit sctp any any

Значения возврата

Общие значения возврата документированы здесь, следующие — поля, уникальные для данного модуля:

Ключ Возвращаемое значение Описание
after
словарь
при изменении
Вызов результирующей модели конфигурации.

Пример:
Возвращаемая конфигурация всегда будет иметь тот же формат, что и параметры выше.
before
словарь
всегда
Конфигурация до вызова модели.

Пример:
Возвращаемая конфигурация всегда будет иметь тот же формат, что и параметры выше.
commands
список / элементы=строка
всегда
Набор команд, отправленных на удаленное устройство.

Пример:
['ip access-list ACL1v4', '10 permit ip any any precedence critical log', '20 deny tcp any lt smtp host 192.0.2.64 ack fin']


Авторы

  • Adharsh Srivats Rangarajan (@adharshsrivatsr)

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/cisco/nxos/nxos_acls_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API