Documentation
PLEASE NOTE: This document applies to v2.19 version and not to the latest stable release v2.20
Documentation for other releases can be found by using the version selector in the top right of any doc page.fail2ban
Manage Fail2ban intrusion prevention system.
Attributes
check_mode:
support: full
Parameters
| Parameter | Required | Type | Values | Description |
|---|---|---|---|---|
| action | string | Action to take on ban (e.g., %(action_)s, %(action_mwl)s). |
||
| bantime | integer | Ban duration in seconds. [default: 600] | ||
| enabled | boolean | Whether the jail should be enabled or disabled. [default: true] |
||
| filter | string | Filter name to use for this jail. | ||
| findtime | integer | Time window in seconds for counting retries. [default: 600] | ||
| logpath | string | Log file path to monitor. | ||
| maxretry | integer | Maximum number of retries before ban. [default: 5] | ||
| name | true | string | Jail name (required). | |
| port | string | Port(s) to protect (e.g., ssh, http, https, or 22, 80, 443). | ||
| state | string | present absent |
Whether the jail should be present or absent. [default: present] |
Examples
- name: Create SSH jail
fail2ban:
name: sshd
state: present
enabled: true
port: ssh
filter: sshd
logpath: /var/log/auth.log
maxretry: 5
findtime: 600
bantime: 3600
- name: Create nginx HTTP auth jail
fail2ban:
name: nginx-http-auth
state: present
enabled: true
port: http,https
filter: nginx-http-auth
logpath: /var/log/nginx/error.log
maxretry: 3
- name: Disable a jail
fail2ban:
name: sshd
enabled: false
- name: Remove a jail
fail2ban:
name: sshd
state: absent