cisco.asa.asa_config – Управление разделами конфигурации на устройствах Cisco ASA
Примечание
Этот плагин входит в коллекцию cisco.asa (версия 1.0.4).
Для его установки используйте: ansible-galaxy collection install cisco.asa.
Чтобы использовать его в плейбуке, укажите: cisco.asa.asa_config.
Добавлена в версии 1.0.0: модуля cisco.asa
Обзор
- Конфигурации Cisco ASA используют простой синтаксис блочного отступа для разделения конфигурации на разделы. Этот модуль предоставляет реализацию для работы с разделами конфигурации ASA детерминированным способом.
Примечание
У этого модуля есть соответствующий плагин действий.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| after список / элементы=строка | Упорядоченный набор команд, которые нужно добавить в конец стека команд, если требуется внести изменения. Как и в случае с параметром before, это позволяет разработчику плейбука добавить набор команд, которые будут выполняться после набора команд. | ||
| authorize булево |
| Устарело Начиная с Ansible 2.5, рекомендуем использовать connection: network_cli и become: yes.Дополнительную информацию можно найти в Руководстве по сети. Указывает модулю войти в привилегированный режим на удалённом устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, будет использовано значение переменной окружения ANSIBLE_NET_AUTHORIZE. | |
| backup булево |
| Этот параметр заставит модуль создать полную резервную копию текущего running-config с удалённого устройства перед внесением любых изменений. Если значение backup_options не указано, файл резервной копии запишется в папку backup в корневой директории плейбука. Если директория не существует, она будет создана. | |
| backup_options словарь | Это объект типа dict, содержащий настраиваемые параметры, связанные с путём к файлу резервной копии. Значение этого параметра считывается только при условии, что backup установлено в да; если backup установлено в нет, этот параметр будет проигнорирован. | ||
| dir_path путь | Этот параметр указывает путь, заканчивающийся именем директории, в которой будет храниться конфигурационный файл резервной копии. Если директория не существует, она будет сначала создана, а имя файла будет либо значением filename, либо значением по умолчанию, как описано в описании параметров filename. Если значение пути не указано, в этом случае будет создана директория backup в текущей рабочей директории, и конфигурационный файл резервной копии будет скопирован в filename внутри директории backup. | ||
| filename строка | Имя файла, которое будет использоваться для хранения конфигурационного файла резервной копии. Если имя файла не указано, оно будет сгенерировано на основе имени хоста, текущего времени и даты в формате <имя_хоста>_config.<дата>@<время> | ||
| before список / элементы=строка | Упорядоченный набор команд, которые нужно поместить в стек команд перед внесением изменений. Это позволяет разработчику плейбука выполнить команды конфигурации перед внесением изменений, не влияя на то, как набор команд сопоставляется с системой. | ||
| config строка | Параметр config позволяет разработчику плейбука предоставить базу конфигурации, которая будет использоваться для проверки необходимых изменений конфигурации. Если этот параметр предоставлен, модуль не загрузит текущую конфигурацию с удалённого узла. | ||
| context строка | Указывает контекст, на который нужно нацелиться, если выполняется работа с ASA в режиме нескольких контекстов. По умолчанию используется текущий контекст, к которому вы подключены. | ||
| defaults булево |
| Этот параметр определяет, следует ли собирать все значения по умолчанию при получении текущей конфигурации удалённого устройства. При включенном параметре модуль получит текущую конфигурацию, выполнив команду show running-config all. | |
| lines список / элементы=строка | Упорядоченный набор команд, которые нужно настроить в указанном разделе. Команды должны быть идентичными командам, найденным в текущей конфигурации устройства. Обратите внимание на синтаксис команд конфигурации, так как некоторые команды автоматически изменяются анализатором конфигурации устройства. Псевдонимы: команды | ||
| match строка |
| Указывает модулю способ сравнения набора команд с текущей конфигурацией устройства. Если match установлено в строка, команды сравниваются построчно. Если match установлено в строго, строки команд сравниваются с учётом позиции. Если match установлено в точно, строки команд должны точно совпадать. Наконец, если match установлено в ничего, модуль не будет пытаться сравнить исходную конфигурацию с текущей конфигурацией на удалённом устройстве. | |
| parents список / элементы=строка | Упорядоченный набор родительских элементов, которые уникально идентифицируют раздел или иерархию, с которыми необходимо сравнить команды. Если параметр parents опущен, команды сравниваются с набором команд верхнего уровня или глобальных команд. | ||
| passwords булево |
| Этот параметр указывает на включение паролей в конфигурацию при получении текущей конфигурации с удалённого устройства. Это включает пароли, связанные с конечными точками VPN. Этот параметр несовместим с параметром defaults. | |
| provider словарь | Устарело Начиная с Ansible 2.5, рекомендуем использовать connection: network_cli.Дополнительную информацию можно найти в Руководстве по сети. Объект типа dict, содержащий данные подключения. | ||
| auth_pass строка | Указывает пароль, который нужно использовать для входа в привилегированный режим на удалённом устройстве. Если authorize равно false, то этот параметр ничего не делает. Если значение не указано в задаче, будет использовано значение переменной окружения ANSIBLE_NET_AUTH_PASS. | ||
| authorize булево |
| Указывает модулю войти в привилегированный режим на удалённом устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, будет использовано значение переменной окружения ANSIBLE_NET_AUTHORIZE. | |
| host строка | Указывает имя хоста DNS или адрес для подключения к удалённому устройству через указанный транспорт. Значение host используется в качестве адреса назначения для транспорта. | ||
| password строка | Указывает пароль для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации SSH-сессии. Если значение не указано в задаче, будет использовано значение переменной окружения ANSIBLE_NET_PASSWORD. | ||
| port целое число | Указывает порт, который нужно использовать при построении подключения к удалённому устройству. | ||
| ssh_keyfile путь | Указывает SSH-ключ для аутентификации подключения к удалённому устройству. Это значение — путь к ключу, используемому для аутентификации SSH-сессии. Если значение не указано в задаче, будет использовано значение переменной окружения ANSIBLE_NET_SSH_KEYFILE. | ||
| timeout целое число | Указывает таймаут бездействия подключения в секундах. Полезно, если консоль зависает перед продолжением, например, при сохранении конфигураций. | ||
| username строка | Указывает имя пользователя для аутентификации подключения к удалённому устройству. Это значение используется для аутентификации SSH-сессии. Если значение не указано в задаче, будет использовано значение переменной окружения ANSIBLE_NET_USERNAME. | ||
| replace строка |
| Указывает модулю способ выполнения конфигурации на устройстве. Если параметр replace установлен в строка, изменённые строки отправляются на устройство в режиме конфигурации. Если параметр replace установлен в блок, весь блок команд отправляется на устройство в режиме конфигурации, если какая-либо строка неверна. | |
| save булево |
| Параметр save указывает модулю сохранить текущую конфигурацию (running-config) в конфигурацию по умолчанию (startup-config) по завершении работы модуля. Если указан режим проверки (check mode), этот параметр игнорируется. | |
| src путь | Указывает исходный путь к файлу, содержащему конфигурацию или шаблон конфигурации для загрузки. Путь к исходному файлу может быть полным путём на хосте Ansible или относительным путём от корня плейбука или роли. Этот параметр несовместим с параметрами lines и parents. | ||
Примечания
Примечание
- Дополнительную информацию об использовании Ansible для управления сетевыми устройствами см. в Руководстве по Ansible для сетевых устройств
Примеры
- cisco.asa.asa_config:
lines:
- network-object host 10.80.30.18
- network-object host 10.80.30.19
- network-object host 10.80.30.20
parents: [object-group network OG-MONITORED-SERVERS]
provider: '{{ cli }}'
- cisco.asa.asa_config:
host: '{{ inventory_hostname }}'
lines:
- message-length maximum client auto
- message-length maximum 512
match: line
parents: [policy-map type inspect dns PM-DNS, parameters]
authorize: yes
auth_pass: cisco
username: admin
password: cisco
context: ansible
- cisco.asa.asa_config:
lines:
- ikev1 pre-shared-key MyS3cretVPNK3y
parents: tunnel-group 1.1.1.1 ipsec-attributes
passwords: yes
provider: '{{ cli }}'
- name: attach ASA acl on interface vlan13/nameif cloud13
cisco.asa.asa_config:
lines:
- access-group cloud-acl_access_in in interface cloud13
provider: '{{ cli }}'
- name: configure ASA (>=9.2) default BGP
cisco.asa.asa_config:
lines:
- bgp log-neighbor-changes
- bgp bestpath compare-routerid
provider: '{{ cli }}'
parents:
- router bgp 65002
register: bgp
when: bgp_default_config is defined
- name: configure ASA (>=9.2) BGP neighbor in default/single context mode
cisco.asa.asa_config:
lines:
- bgp router-id {{ bgp_router_id }}
- neighbor {{ bgp_neighbor_ip }} remote-as {{ bgp_neighbor_as }}
- neighbor {{ bgp_neighbor_ip }} description {{ bgp_neighbor_name }}
provider: '{{ cli }}'
parents:
- router bgp 65002
- address-family ipv4 unicast
register: bgp
when: bgp_neighbor_as is defined
- name: configure ASA interface with standby
cisco.asa.asa_config:
lines:
- description my cloud interface
- nameif cloud13
- security-level 50
- ip address 192.168.13.1 255.255.255.0 standby 192.168.13.2
provider: '{{ cli }}'
parents: [interface Vlan13]
register: interface
- name: Show changes to interface from task above
debug:
var: interface
- name: configurable backup path
cisco.asa.asa_config:
lines:
- access-group cloud-acl_access_in in interface cloud13
provider: '{{ cli }}'
backup: yes
backup_options:
filename: backup.cfg
dir_path: /home/user
Значения возврата
Общие значения возврата документированы здесь, следующие — поля, уникальные для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| backup_path string | при backup = да | Полный путь к резервной копии Пример: /playbooks/ansible/backup/asa_config.2016-07-16@22:28:34 |
| updates list / elements=string | всегда | Набор команд, которые будут отправлены на удаленное устройство Пример: ['...', '...'] |
Авторы
- Peter Sprygada (@privateip), Patrick Ogenstad (@ogenstad)
© 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/asa/asa_config_module.html