cisco.meraki.meraki_mx_intrusion_prevention – Manage intrustion prevention in the Meraki cloud
Note
This plugin is part of the cisco.meraki collection (version 2.5.0).
You might already have this collection installed if you are using the ansible
package. It is not included in ansible-core
. To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install cisco.meraki
.
To use it in a playbook, specify: cisco.meraki.meraki_mx_intrusion_prevention
.
Synopsis
- Allows for management of intrusion prevention rules networks within Meraki MX networks.
Parameters
Parameter | Choices/Defaults | Comments | |
---|---|---|---|
allowed_rules list / elements=dictionary | List of IDs related to rules which are allowed for the organization. | ||
rule_id string | ID of rule as defined by Snort. | ||
rule_message string added in 2.3.0 of cisco.meraki | Description of rule. This is overwritten by the API. Formerly message which was deprecated but still maintained as an alias.aliases: message | ||
auth_key string / required | Authentication key provided by the dashboard. Required if environmental variable MERAKI_KEY is not set. | ||
host string | Default: "api.meraki.com" | Hostname for Meraki dashboard. Can be used to access regional Meraki environments, such as China. | |
ids_rulesets string |
| Ruleset complexity setting. | |
internal_error_retry_time integer | Default: 60 | Number of seconds to retry if server returns an internal server error. | |
mode string |
| Operational mode of Intrusion Prevention system. | |
net_id string | ID number of a network. | ||
net_name string | Name of a network. aliases: name, network | ||
org_id string | ID of organization. | ||
org_name string | Name of organization. aliases: organization | ||
output_format string |
| Instructs module whether response keys should be snake case (ex. net_id ) or camel case (ex. netId ). | |
output_level string |
| Set amount of debug output during module execution. | |
protected_networks dictionary | Set included/excluded networks for Intrusion Prevention. | ||
excluded_cidr list / elements=string | List of network IP ranges to exclude from scanning. | ||
included_cidr list / elements=string | List of network IP ranges to include in scanning. | ||
use_default boolean |
| Whether to use special IPv4 addresses per RFC 5735. | |
rate_limit_retry_time integer | Default: 165 | Number of seconds to retry if rate limiter is triggered. | |
state string |
| Create or modify an organization. | |
timeout integer | Default: 30 | Time to timeout for HTTP requests. | |
use_https boolean |
| If no , it will use HTTP. Otherwise it will use HTTPS.Only useful for internal Meraki developers. | |
use_proxy boolean |
| If no , it will not use a proxy, even if one is defined in an environment variable on the target hosts. | |
validate_certs boolean |
| Whether to validate HTTP certificates. |
Notes
Note
- More information about the Meraki API can be found at https://dashboard.meraki.com/api_docs.
- Some of the options are likely only used for developers within Meraki.
- As of Ansible 2.9, Meraki modules output keys as snake case. To use camel case, set the
ANSIBLE_MERAKI_FORMAT
environment variable tocamelcase
. - Ansible’s Meraki modules will stop supporting camel case output in Ansible 2.13. Please update your playbooks.
- Check Mode downloads the current configuration from the dashboard, then compares changes against this download. Check Mode will report changed if there are differences in the configurations, but does not submit changes to the API for validation of change.
Examples
- name: Set whitelist for organization meraki_intrusion_prevention: auth_key: '{{auth_key}}' state: present org_id: '{{test_org_id}}' allowed_rules: - rule_id: "meraki:intrusion/snort/GID/01/SID/5805" rule_message: Test rule delegate_to: localhost - name: Query IPS info for organization meraki_intrusion_prevention: auth_key: '{{auth_key}}' state: query org_name: '{{test_org_name}}' delegate_to: localhost register: query_org - name: Set full ruleset with check mode meraki_intrusion_prevention: auth_key: '{{auth_key}}' state: present org_name: '{{test_org_name}}' net_name: '{{test_net_name}} - IPS' mode: prevention ids_rulesets: security protected_networks: use_default: true included_cidr: - 192.0.1.0/24 excluded_cidr: - 10.0.1.0/24 delegate_to: localhost - name: Clear rules from organization meraki_intrusion_prevention: auth_key: '{{auth_key}}' state: absent org_name: '{{test_org_name}}' allowed_rules: [] delegate_to: localhost
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description | ||
---|---|---|---|---|
data complex | success | Information about the Threat Protection settings. | ||
idsRulesets string | success, when network is queried or modified | Setting of selected ruleset. Sample: balanced | ||
mode string | success, when network is queried or modified | Enabled setting of intrusion prevention. Sample: enabled | ||
protectedNetworks complex | success, when network is queried or modified | Networks protected by IPS. | ||
excludedCidr string | success, when network is queried or modified | List of CIDR notiation networks to exclude from protection. Sample: 192.0.1.0/24 | ||
includedCidr string | success, when network is queried or modified | List of CIDR notiation networks to protect. Sample: 192.0.1.0/24 | ||
useDefault boolean | success, when network is queried or modified | Whether to use special IPv4 addresses. Sample: True | ||
whitelistedRules complex | success, when organization is queried or modified | List of whitelisted IPS rules. | ||
rule_message string | success, when organization is queried or modified | Description of rule. Sample: MALWARE-OTHER Trackware myway speedbar runtime detection - switch engines | ||
ruleId string | success, when organization is queried or modified | A rule identifier for an IPS rule. Sample: meraki:intrusion/snort/GID/01/SID/5805 |
Authors
- Kevin Breit (@kbreit)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/cisco/meraki/meraki_mx_intrusion_prevention_module.html