Spec-Zone.ru › Ansible 2.10

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

Примечание

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

Для его установки используйте: 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
логический
    Варианты:
  • нет
  • да
Эхо (пингование)
echo_reply
логический
    Варианты:
  • нет
  • да
Ответ эхо
general_parameter_problem
логический
    Варианты:
  • нет
  • да
Ошибка параметра
host_isolated
логический
    Варианты:
  • нет
  • да
Хост изолирован
host_precedence_unreachable
логический
    Варианты:
  • нет
  • да
Хост недоступен для приоритета
host_redirect
логический
    Варианты:
  • нет
  • да
Переадресация хоста
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
    Варианты:
  • нет
  • да
Необходима фрагментация, DF установлен
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
string
Этот параметр используется только со статусом parsed.
Значение этого параметра должно быть результатом выполнения команды show running-config | section 'ip(v6* access-list) на устройстве NX-OS.
Статус parsed считывает конфигурацию из параметра running_config и преобразует её в структурированные данные Ansible в соответствии с argspec модуля ресурса, а затем возвращает значение в ключе 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–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/cisco/nxos/nxos_acls_module.html

Spec-Zone.ru

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