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, это позволяет разработчику playbook добавить набор команд, которые будут выполнены после набора команд. | ||
| authorize логическое |
| Устарело Начиная с Ansible 2.5, рекомендуется использовать connection: network_cli и become: yes. Для получения дополнительной информации см. Руководство по сетям. Инструктирует модуль перейти в привилегированный режим на удалённом устройстве перед отправкой любых команд. Если не указано, устройство попытается выполнить все команды в режиме без привилегий. Если значение не указано в задаче, будет использовано значение переменной окружения ANSIBLE_NET_AUTHORIZE. | |
| backup логическое |
| Этот аргумент заставит модуль создать полную резервную копию текущего running-config с удалённого устройства перед внесением каких-либо изменений. Если значение backup_options не указано, файл резервной копии записывается в папку backup в корневом каталоге playbook. Если папка не существует, она создаётся. | |
| backup_options словарь | Это объект словаря, содержащий настраиваемые параметры, относящиеся к пути к файлу резервной копии. Значение этого параметра читается только тогда, когда backup установлено в да, если backup установлено в нет, этот параметр будет проигнорирован. | ||
| dir_path путь | Этот параметр предоставляет путь, заканчивающийся именем каталога, в котором будет храниться файл конфигурации резервной копии. Если каталог не существует, он будет создан, а имя файла будет либо значением filename, либо именем файла по умолчанию, как описано в filename описании параметров. Если значение пути не указано, в этом случае будет создан каталог backup в текущей рабочей директории, и конфигурация резервной копии будет скопирована в filename внутри каталога backup. | ||
| filename строка | Имя файла, которое будет использоваться для хранения резервной копии конфигурации. Если имя файла не указано, оно будет сгенерировано на основе имени хоста, текущей даты и времени в формате <имя_хоста>_config.<дата>@<время> | ||
| before список / элементы=строка | Упорядоченный набор команд, помещаемых в стек команд, если необходимо внести изменение. Это позволяет разработчику playbook выполнить команды конфигурации перед внесением каких-либо изменений, не влияя на то, как набор команд сопоставляется с системой. | ||
| config строка | Аргумент config позволяет разработчику playbook предоставить базовая конфигурация, которая будет использована для проверки необходимых изменений конфигурации. Если этот аргумент указан, модуль не будет загружать running-config с удалённого узла. | ||
| context строка | Указывает, какой контекст использовать, если вы работаете в режиме ASA с несколькими контекстами. По умолчанию используется текущий контекст, к которому вы вошли. | ||
| defaults логическое |
| Этот аргумент указывает, собирать ли все значения по умолчанию при получении running-config удалённого устройства. При включённом режиме модуль получит текущую конфигурацию, выполнив команду show running-config all. | |
| lines список / элементы=строка | Упорядоченный набор команд, которые должны быть настроены в разделе. Команды должны быть точно такими же, как и в running-config устройства. Обратите внимание на синтаксис команд конфигурации, так как некоторые команды автоматически изменяются анализатором конфигурации устройства. псевдонимы: команды | ||
| match строка |
| Инструктирует модуль, как выполнять сопоставление набора команд с текущей конфигурацией устройства. Если match установлено в строка, команды сопоставляются по строкам. Если match установлено в строго, строки команд сопоставляются относительно позиции. Если match установлено в точно, строки команд должны быть точным совпадением. Наконец, если match установлено в ничего, модуль не будет пытаться сравнивать исходную конфигурацию с running-конфигурацией на удалённом устройстве. | |
| parents список / элементы=строка | Упорядоченный набор родителей, которые однозначно идентифицируют раздел или иерархию, с которой следует сравнить команды. Если аргумент parents опущен, команды сравниваются с набором команд верхнего уровня или глобальных команд. | ||
| passwords логическое |
| Этот аргумент указывает на включение паролей в конфигурацию при получении running-config с удалённого устройства. Это включает пароли, связанные с конечными точками VPN. Этот аргумент взаимоисключает с defaults. | |
| provider словарь | Устарело Начиная с Ansible 2.5, рекомендуется использовать connection: network_cli. Для получения дополнительной информации см. Руководство по сетям. Объект словаря, содержащий данные подключения. | ||
| 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 по завершении работы модуля. Если указан режим проверки, этот аргумент игнорируется. | |
| src путь | Указывает исходный путь к файлу, содержащему конфигурацию или шаблон конфигурации для загрузки. Путь к исходному файлу может быть полным путём на хосте Ansible или относительным путём от корня playbook или роли. Этот аргумент взаимоисключает с 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 равно yes | Полный путь к резервной копии файла Пример: /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–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/cisco/asa/asa_config_module.html