cisco.asa.asa_config 模块 – 管理 Cisco ASA 设备上的配置段
注意
此模块是 cisco.asa 集合 (版本 6.0.0) 的一部分。
如果您使用的是 ansible
包,则可能已经安装了此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用: ansible-galaxy collection install cisco.asa
。
要在 playbook 中使用它,请指定: cisco.asa.asa_config
。
注意
cisco.asa 集合已被弃用,并将从 Ansible 12 中移除。请参阅 讨论主题 获取更多信息。
cisco.asa 1.0.0 中的新增功能
概要
Cisco ASA 配置使用简单的块缩进文件语法将配置分割成多个段。此模块提供了一种以确定性方式处理 ASA 配置段的实现。
参数
参数 |
注释 |
---|---|
如果需要进行更改,则要附加到命令堆栈末尾的已排序命令集。与before一样,这允许 playbook 设计器附加一组要在命令集之后执行的命令。 |
|
此参数将导致模块在进行任何更改之前创建远程设备当前 选项
|
|
这是一个包含与备份文件路径相关的可配置选项的字典对象。只有当 |
|
此选项提供以目录名称结尾的路径,将在其中存储备份配置文件。如果目录不存在,则首先创建它,文件名要么是 |
|
用于存储备份配置的文件名。如果未给出文件名,则它将基于主机名、当前时间和日期以<hostname>_config.<current-date>@<current-time>格式生成。 |
|
如果需要进行更改,则要推送到命令堆栈的已排序命令集。这允许 playbook 设计器有机会在推送任何更改之前执行配置命令,而不会影响如何将命令集与系统匹配。 |
|
|
|
如果您在多上下文模式下运行 ASA,则指定要定位的上下文。默认为您登录的当前上下文。 |
|
此参数指定获取远程设备运行配置时是否收集所有默认值。启用后,模块将通过发出命令 选项
|
|
应在部分中配置的已排序命令集。命令必须与设备运行配置中的命令完全相同。请务必注意配置命令语法,因为某些命令会由设备配置解析器自动修改。 |
|
指示模块如何将命令集与当前设备配置进行匹配。如果 match 设置为 line,则逐行匹配命令。如果 match 设置为 strict,则命令行将根据位置进行匹配。如果 match 设置为 exact,则命令行必须完全匹配。最后,如果 match 设置为 none,则模块将不会尝试将源配置与远程设备上的运行配置进行比较。 选项
|
|
用于唯一标识应针对其检查命令的节或层次结构的有序父级集。如果省略 parents 参数,则会针对顶级或全局命令集检查命令。 |
|
此参数指定在从远程设备检索运行配置时是否包含配置中的密码。这包括与 VPN 端点相关的密码。此参数与 defaults 互斥。 选项
|
|
指示模块如何对设备执行配置。如果 replace 参数设置为 line,则修改后的行将以配置模式推送到设备。如果 replace 参数设置为 block,则如果任何一行不正确,则整个命令块将以配置模式推送到设备。 选项
|
|
选项
|
|
对设备运行配置进行更改时,默认情况下不会将更改复制到非易失性存储器。使用此参数将在之前更改此设置。如果该参数设置为 always,则运行配置将始终复制到启动配置,并且 modified 标志将始终设置为 True。如果该参数设置为 modified,则只有在自上次保存到启动配置以来运行配置已更改时,运行配置才会复制到启动配置。如果该参数设置为 never,则运行配置将永远不会复制到启动配置。如果该参数设置为 changed,则只有在任务进行了更改时,运行配置才会复制到启动配置。changed 在 Ansible 2.5 中添加。 选项
|
|
指定包含要加载的配置或配置模板的文件的源路径。源文件的路径可以是 Ansible 控制主机上的完整路径,也可以是从 playbook 或角色根目录的相对路径。此参数与 lines、parents 互斥。 |
注释
注意
有关使用 Ansible 管理网络设备的更多信息,请参见:ref:`Ansible 网络指南 <network_guide>`
示例
- 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]
- 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]
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: true
- name: attach ASA acl on interface vlan13/nameif cloud13
cisco.asa.asa_config:
lines:
- access-group cloud-acl_access_in in interface cloud13
- name: configure ASA (>=9.2) default BGP
cisco.asa.asa_config:
lines:
- bgp log-neighbor-changes
- bgp bestpath compare-routerid
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 }}
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
parents: [interface Vlan13]
register: interface
- name: Show changes to interface from task above
ansible.builtin.debug:
var: interface
- name: configurable backup path
cisco.asa.asa_config:
lines:
- access-group cloud-acl_access_in in interface cloud13
backup: true
backup_options:
filename: backup.cfg
dir_path: /home/user
- name: save running to startup when modified
cisco.asa.asa_config:
save_when: modified
返回值
常见返回值已记录在 此处,以下是此模块特有的字段
键 |
描述 |
---|---|
备份文件的完整路径 返回:当 backup 为 true 时 示例: |
|
将推送到远程设备的命令集 返回:始终 示例: |