nmap – Uses nmap to find hosts to target
nmap – Uses nmap to find hosts to target
New in version 2.6.
Synopsis
- Uses a YAML configuration file with a valid YAML extension.
Requirements
The below requirements are needed on the local master node that executes this inventory.
- nmap CLI installed
Parameters
Parameter | Choices/Defaults | Configuration | Comments |
---|---|---|---|
address - / required |
Network IP or range of IPs to scan, you can use a simple range (10.2.2.15-25) or CIDR notation. | ||
cache boolean |
Default: "no" |
ini entries: [inventory]cache = no
env:ANSIBLE_INVENTORY_CACHE |
Toggle to enable/disable the caching of the inventory's source data, requires a cache plugin setup to work. |
cache_connection - |
ini entries: [inventory]cache_connection = VALUE
env:ANSIBLE_INVENTORY_CACHE_CONNECTION |
Cache connection data or path, read cache plugin documentation for specifics. | |
cache_plugin - |
ini entries: [inventory]cache_plugin = VALUE
env:ANSIBLE_INVENTORY_CACHE_PLUGIN |
Cache plugin to use for the inventory's source data. | |
cache_timeout integer |
Default: 3600 |
ini entries: [inventory]cache_timeout = 3600
env:ANSIBLE_INVENTORY_CACHE_TIMEOUT |
Cache duration in seconds |
compose dictionary |
Default: {} |
create vars from jinja2 expressions | |
exclude list |
list of addresses to exclude | ||
groups dictionary |
Default: {} |
add hosts to group based on Jinja2 conditionals | |
ipv4 boolean |
Default: "yes" |
use IPv4 type addresses | |
ipv6 boolean |
Default: "yes" |
use IPv6 type addresses | |
keyed_groups list |
Default: [] |
add hosts to group based on the values of a variable | |
plugin - / required |
|
token that ensures this is a source file for the 'nmap' plugin. | |
ports boolean |
Default: "yes" |
Enable/disable scanning for open ports | |
strict boolean |
Default: "no" |
If true make invalid entries a fatal error, otherwise skip and continue Since it is possible to use facts in the expressions they might not always be available and we ignore those errors by default. |
Notes
Note
- At least one of ipv4 or ipv6 is required to be True, both can be True, but they cannot both be False.
- TODO: add OS fingerprinting
Examples
# inventory.config file in YAML format
plugin: nmap
strict: False
address: 192.168.0.0/24
Status
Authors
- UNKNOWN
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/plugins/inventory/nmap.html