{
    "content": [
        {
            "type": "text",
            "text": "# fail2ban-client(1) (man)\n\n**Summary:** fail2ban-client - configure and control the server\n\n**Synopsis:** fail2ban-client [OPTIONS] <COMMAND>\n\n## Flags\n\n| Flag | Long | Arg | Description |\n|------|------|-----|-------------|\n| -c | --conf | — | configuration directory |\n| -s | --socket | — | socket path |\n| -p | --pidfile | — | pidfile path --pname <NAME> name of the process (main thread) to identify instance (default fail2ban-server) --loglevel  |\n| -d | — | — | --dp, --dump-pretty dump the configuration using more human readable representation |\n| -t | --test | — | test configuration (can be also specified with start parameters) |\n| -i | — | — |  |\n| -v | — | — |  |\n| -q | — | — |  |\n| -x | — | — |  |\n| -b | — | — |  |\n| -f | — | — |  |\n| — | --async | — | start server in async mode (for internal usage only, don't read configuration) |\n| — | --timeout | — | timeout to wait for the server (for internal usage only, don't read configuration) --str2sec <STRING> convert time abbre |\n| -h | --help | — | display this help message |\n| -V | --version | — | print the version (-V returns machine-readable short format) |\n\n## See Also\n\n- fail2ban-server(1)\n- jail.conf(5)\n- FAIL2BAN-CLIENT(1)\n\n## Section Outline\n\n- **NAME** (2 lines)\n- **SYNOPSIS** (2 lines)\n- **DESCRIPTION** (3 lines)\n- **OPTIONS** (1 lines) — 15 subsections\n  - -c --conf (2 lines)\n  - -s --socket (2 lines)\n  - -p --pidfile (13 lines)\n  - -d (3 lines)\n  - -t --test (2 lines)\n  - -i (1 lines)\n  - -v (1 lines)\n  - -q (1 lines)\n  - -x (1 lines)\n  - -b (1 lines)\n  - -f (1 lines)\n  - --async (2 lines)\n  - --timeout (5 lines)\n  - -h --help (2 lines)\n  - -V --version (2 lines)\n- **COMMAND** (4 lines) — 88 subsections\n  - restart (2 lines)\n  - restart [--unban] [--if-exists] <JAIL> (2 lines)\n  - reload [--restart] [--unban] [--all] (4 lines)\n  - reload [--restart] [--unban] [--if-exists] <JAIL> (4 lines)\n  - unban --all (2 lines)\n  - unban <IP> ... <IP> (4 lines)\n  - banned <IP> ... <IP>] (10 lines)\n  - version (4 lines)\n  - set loglevel <LEVEL> (3 lines)\n  - get loglevel (2 lines)\n  - set logtarget <TARGET> (2 lines)\n  - get logtarget (2 lines)\n  - set syslogsocket auto|<SOCKET> (2 lines)\n  - get syslogsocket (2 lines)\n  - flushlogs (4 lines)\n  - set dbfile <FILE> (2 lines)\n  - get dbfile (2 lines)\n  - set dbmaxmatches <INT> (2 lines)\n  - get dbmaxmatches (2 lines)\n  - set dbpurgeage <SECONDS> (2 lines)\n  - get dbpurgeage (4 lines)\n  - add <JAIL> <BACKEND> (2 lines)\n  - start <JAIL> (2 lines)\n  - stop <JAIL> (2 lines)\n  - status <JAIL> [FLAVOR] (4 lines)\n  - set <JAIL> idle on|off (2 lines)\n  - set <JAIL> ignoreself true|false (2 lines)\n  - set <JAIL> addignoreip <IP> (2 lines)\n  - set <JAIL> delignoreip <IP> (2 lines)\n  - set <JAIL> ignorecommand <VALUE> (2 lines)\n  - set <JAIL> ignorecache <VALUE> (2 lines)\n  - set <JAIL> addlogpath <FILE> ['tail'] (3 lines)\n  - set <JAIL> dellogpath <FILE> (2 lines)\n  - set <JAIL> logencoding <ENCODING> (2 lines)\n  - set <JAIL> addjournalmatch <MATCH> (2 lines)\n  - set <JAIL> deljournalmatch <MATCH> (2 lines)\n  - set <JAIL> addfailregex <REGEX> (2 lines)\n  - set <JAIL> delfailregex <INDEX> (2 lines)\n  - set <JAIL> addignoreregex <REGEX> (2 lines)\n  - set <JAIL> delignoreregex <INDEX> (2 lines)\n  - set <JAIL> findtime <TIME> (2 lines)\n  - set <JAIL> bantime <TIME> (2 lines)\n  - set <JAIL> datepattern <PATTERN> (2 lines)\n  - set <JAIL> usedns <VALUE> (2 lines)\n  - set <JAIL> attempt <IP> [<failure1> ... <failureN>] (2 lines)\n  - set <JAIL> banip <IP> ... <IP> (2 lines)\n  - set <JAIL> unbanip [--report-absent] <IP> ... <IP> (2 lines)\n  - set <JAIL> maxretry <RETRY> (2 lines)\n  - set <JAIL> maxmatches <INT> (2 lines)\n  - set <JAIL> maxlines <LINES> (2 lines)\n  - set <JAIL> addaction <ACT>[ <PYTHONFILE> <JSONKWARGS>] (3 lines)\n  - set <JAIL> delaction <ACT> (4 lines)\n  - set <JAIL> action <ACT> actionstart <CMD> (2 lines)\n  - set <JAIL> action <ACT> actionstop <CMD> sets the stop comma (2 lines)\n  - set <JAIL> action <ACT> actioncheck <CMD> (2 lines)\n  - set <JAIL> action <ACT> actionban <CMD> (2 lines)\n  - set <JAIL> action <ACT> actionunban <CMD> (2 lines)\n  - set <JAIL> action <ACT> timeout <TIMEOUT> (4 lines)\n  - set <JAIL> action <ACT> <PROPERTY> <VALUE> (2 lines)\n  - set <JAIL> action <ACT> <METHOD>[ <JSONKWARGS>] (4 lines)\n  - get <JAIL> banned (2 lines)\n  - get <JAIL> banned <IP> ... <IP>] (2 lines)\n  - get <JAIL> logpath (2 lines)\n  - get <JAIL> logencoding (2 lines)\n  - get <JAIL> journalmatch (2 lines)\n  - get <JAIL> ignoreself (2 lines)\n  - get <JAIL> ignoreip (2 lines)\n  - get <JAIL> ignorecommand (2 lines)\n  - get <JAIL> failregex (2 lines)\n  - get <JAIL> ignoreregex (2 lines)\n  - get <JAIL> findtime (2 lines)\n  - get <JAIL> bantime (2 lines)\n  - get <JAIL> datepattern (2 lines)\n  - get <JAIL> usedns (2 lines)\n  - get <JAIL> banip [<SEP>|--with-time] (4 lines)\n  - get <JAIL> maxretry (2 lines)\n  - get <JAIL> maxmatches (2 lines)\n  - get <JAIL> maxlines (2 lines)\n  - get <JAIL> actions (4 lines)\n  - get <JAIL> action <ACT> actionstart (2 lines)\n  - get <JAIL> action <ACT> actionstop (2 lines)\n  - get <JAIL> action <ACT> actioncheck (2 lines)\n  - get <JAIL> action <ACT> actionban (2 lines)\n  - get <JAIL> action <ACT> actionunban (2 lines)\n  - get <JAIL> action <ACT> timeout (4 lines)\n  - get <JAIL> actionproperties <ACT> (2 lines)\n  - get <JAIL> actionmethods <ACT> (2 lines)\n  - get <JAIL> action <ACT> <PROPERTY> (2 lines)\n- **FILES** (2 lines)\n- **REPORTING BUGS** (2 lines)\n- **SEE ALSO** (5 lines)\n\n## Full Content\n\n### NAME\n\nfail2ban-client - configure and control the server\n\n### SYNOPSIS\n\nfail2ban-client [OPTIONS] <COMMAND>\n\n### DESCRIPTION\n\nFail2Ban  v0.11.2  reads  log  file that contains password failure report and bans the corre‐\nsponding IP addresses using firewall rules.\n\n### OPTIONS\n\n#### -c --conf\n\nconfiguration directory\n\n#### -s --socket\n\nsocket path\n\n#### -p --pidfile\n\npidfile path\n\n--pname <NAME>\nname of the process (main thread) to identify instance (default fail2ban-server)\n\n--loglevel <LEVEL>\nlogging level\n\n--logtarget <TARGET>\nlogging target, use file-name or stdout, stderr, syslog or sysout.\n\n--syslogsocket auto|<FILE>\n\n#### -d\n\n--dp, --dump-pretty\ndump the configuration using more human readable representation\n\n#### -t --test\n\ntest configuration (can be also specified with start parameters)\n\n#### -i\n\n#### -v\n\n#### -q\n\n#### -x\n\n#### -b\n\n#### -f\n\n#### --async\n\nstart server in async mode (for internal usage only, don't read configuration)\n\n#### --timeout\n\ntimeout to wait for the server (for internal usage only, don't read configuration)\n\n--str2sec <STRING>\nconvert time abbreviation format to seconds\n\n#### -h --help\n\ndisplay this help message\n\n#### -V --version\n\nprint the version (-V returns machine-readable short format)\n\n### COMMAND\n\nBASIC\n\nstart  starts the server and the jails\n\n#### restart\n\nrestarts the server\n\n#### restart [--unban] [--if-exists] <JAIL>\n\nrestarts the jail <JAIL> (alias for 'reload --restart ... <JAIL>')\n\n#### reload [--restart] [--unban] [--all]\n\nreloads the configuration without restarting of the server, the option '--restart' ac‐\ntivates  completely  restarting  of affected jails, thereby can unban IP addresses (if\noption '--unban' specified)\n\n#### reload [--restart] [--unban] [--if-exists] <JAIL>\n\nreloads the jail <JAIL>, or restarts it (if option '--restart' specified)\n\nstop   stops all jails and terminate the server\n\n#### unban --all\n\nunbans all IP addresses (in all jails and database)\n\n#### unban <IP> ... <IP>\n\nunbans <IP> (in all jails and database)\n\nbanned return jails with banned IPs as dictionary\n\n#### banned <IP> ... <IP>]\n\nreturn list(s) of jails where given IP(s) are banned\n\nstatus gets the current status of the server\n\nping   tests if the server is alive\n\necho   for internal usage, returns back and outputs a given string\n\nhelp   return this output\n\n#### version\n\nreturn the server version\n\nLOGGING\n\n#### set loglevel <LEVEL>\n\nsets logging level to <LEVEL>.  Levels: CRITICAL, ERROR, WARNING, NOTICE, INFO, DEBUG,\nTRACEDEBUG, HEAVYDEBUG or corresponding numeric value (50-5)\n\n#### get loglevel\n\ngets the logging level\n\n#### set logtarget <TARGET>\n\nsets logging target to <TARGET>.  Can be STDOUT, STDERR, SYSLOG or a file\n\n#### get logtarget\n\ngets logging target\n\n#### set syslogsocket auto|<SOCKET>\n\nsets the syslog socket path to auto or <SOCKET>. Only used if logtarget is SYSLOG\n\n#### get syslogsocket\n\ngets syslog socket path\n\n#### flushlogs\n\nflushes the logtarget if a file and reopens it. For log rotation.\n\nDATABASE\n\n#### set dbfile <FILE>\n\nset the location of fail2ban persistent datastore. Set to \"None\" to disable\n\n#### get dbfile\n\nget the location of fail2ban persistent datastore\n\n#### set dbmaxmatches <INT>\n\nsets the max number of matches stored in database per ticket\n\n#### get dbmaxmatches\n\ngets the max number of matches stored in database per ticket\n\n#### set dbpurgeage <SECONDS>\n\nsets the max age in <SECONDS> that history of bans will be kept\n\n#### get dbpurgeage\n\ngets the max age in seconds that history of bans will be kept\n\nJAIL CONTROL\n\n#### add <JAIL> <BACKEND>\n\ncreates <JAIL> using <BACKEND>\n\n#### start <JAIL>\n\nstarts the jail <JAIL>\n\n#### stop <JAIL>\n\nstops the jail <JAIL>. The jail is removed\n\n#### status <JAIL> [FLAVOR]\n\ngets the current status of <JAIL>, with optional flavor or extended info\n\nJAIL CONFIGURATION\n\n#### set <JAIL> idle on|off\n\nsets the idle state of <JAIL>\n\n#### set <JAIL> ignoreself true|false\n\nallows the ignoring of own IP addresses\n\n#### set <JAIL> addignoreip <IP>\n\nadds <IP> to the ignore list of <JAIL>\n\n#### set <JAIL> delignoreip <IP>\n\nremoves <IP> from the ignore list of <JAIL>\n\n#### set <JAIL> ignorecommand <VALUE>\n\nsets ignorecommand of <JAIL>\n\n#### set <JAIL> ignorecache <VALUE>\n\nsets ignorecache of <JAIL>\n\n#### set <JAIL> addlogpath <FILE> ['tail']\n\nadds <FILE> to the monitoring list of <JAIL>, optionally starting at the 'tail' of the\nfile (default 'head').\n\n#### set <JAIL> dellogpath <FILE>\n\nremoves <FILE> from the monitoring list of <JAIL>\n\n#### set <JAIL> logencoding <ENCODING>\n\nsets the <ENCODING> of the log files for <JAIL>\n\n#### set <JAIL> addjournalmatch <MATCH>\n\nadds <MATCH> to the journal filter of <JAIL>\n\n#### set <JAIL> deljournalmatch <MATCH>\n\nremoves <MATCH> from the journal filter of <JAIL>\n\n#### set <JAIL> addfailregex <REGEX>\n\nadds the regular expression <REGEX> which must match failures for <JAIL>\n\n#### set <JAIL> delfailregex <INDEX>\n\nremoves the regular expression at <INDEX> for failregex\n\n#### set <JAIL> addignoreregex <REGEX>\n\nadds the regular expression <REGEX> which should match pattern to exclude for <JAIL>\n\n#### set <JAIL> delignoreregex <INDEX>\n\nremoves the regular expression at <INDEX> for ignoreregex\n\n#### set <JAIL> findtime <TIME>\n\nsets the number of seconds <TIME> for which the filter will look back for <JAIL>\n\n#### set <JAIL> bantime <TIME>\n\nsets the number of seconds <TIME> a host will be banned for <JAIL>\n\n#### set <JAIL> datepattern <PATTERN>\n\nsets the <PATTERN> used to match date/times for <JAIL>\n\n#### set <JAIL> usedns <VALUE>\n\nsets the usedns mode for <JAIL>\n\n#### set <JAIL> attempt <IP> [<failure1> ... <failureN>]\n\nmanually notify about <IP> failure\n\n#### set <JAIL> banip <IP> ... <IP>\n\nmanually Ban <IP> for <JAIL>\n\n#### set <JAIL> unbanip [--report-absent] <IP> ... <IP>\n\nmanually Unban <IP> in <JAIL>\n\n#### set <JAIL> maxretry <RETRY>\n\nsets the number of failures <RETRY> before banning the host for <JAIL>\n\n#### set <JAIL> maxmatches <INT>\n\nsets the max number of matches stored in memory per ticket in <JAIL>\n\n#### set <JAIL> maxlines <LINES>\n\nsets the number of <LINES> to buffer for regex search for <JAIL>\n\n#### set <JAIL> addaction <ACT>[ <PYTHONFILE> <JSONKWARGS>]\n\nadds a new action named <ACT> for <JAIL>. Optionally for  a  Python  based  action,  a\n<PYTHONFILE> and <JSONKWARGS> can be specified, else will be a Command Action\n\n#### set <JAIL> delaction <ACT>\n\nremoves the action <ACT> from <JAIL>\n\nCOMMAND ACTION CONFIGURATION\n\n#### set <JAIL> action <ACT> actionstart <CMD>\n\nsets the start command <CMD> of the action <ACT> for <JAIL>\n\n#### set <JAIL> action <ACT> actionstop <CMD> sets the stop command <CMD> of the\n\naction <ACT> for <JAIL>\n\n#### set <JAIL> action <ACT> actioncheck <CMD>\n\nsets the check command <CMD> of the action <ACT> for <JAIL>\n\n#### set <JAIL> action <ACT> actionban <CMD>\n\nsets the ban command <CMD> of the action <ACT> for <JAIL>\n\n#### set <JAIL> action <ACT> actionunban <CMD>\n\nsets the unban command <CMD> of the action <ACT> for <JAIL>\n\n#### set <JAIL> action <ACT> timeout <TIMEOUT>\n\nsets <TIMEOUT> as the command timeout in seconds for the action <ACT> for <JAIL>\n\nGENERAL ACTION CONFIGURATION\n\n#### set <JAIL> action <ACT> <PROPERTY> <VALUE>\n\nsets the <VALUE> of <PROPERTY> for the action <ACT> for <JAIL>\n\n#### set <JAIL> action <ACT> <METHOD>[ <JSONKWARGS>]\n\ncalls the <METHOD> with <JSONKWARGS> for the action <ACT> for <JAIL>\n\nJAIL INFORMATION\n\n#### get <JAIL> banned\n\nreturn banned IPs of <JAIL>\n\n#### get <JAIL> banned <IP> ... <IP>]\n\nreturn 1 if IP is banned in <JAIL> otherwise 0, or a list of 1/0 for multiple IPs\n\n#### get <JAIL> logpath\n\ngets the list of the monitored files for <JAIL>\n\n#### get <JAIL> logencoding\n\ngets the encoding of the log files for <JAIL>\n\n#### get <JAIL> journalmatch\n\ngets the journal filter match for <JAIL>\n\n#### get <JAIL> ignoreself\n\ngets the current value of the ignoring the own IP addresses\n\n#### get <JAIL> ignoreip\n\ngets the list of ignored IP addresses for <JAIL>\n\n#### get <JAIL> ignorecommand\n\ngets ignorecommand of <JAIL>\n\n#### get <JAIL> failregex\n\ngets the list of regular expressions which matches the failures for <JAIL>\n\n#### get <JAIL> ignoreregex\n\ngets the list of regular expressions which matches patterns to ignore for <JAIL>\n\n#### get <JAIL> findtime\n\ngets the time for which the filter will look back for failures for <JAIL>\n\n#### get <JAIL> bantime\n\ngets the time a host is banned for <JAIL>\n\n#### get <JAIL> datepattern\n\ngets the pattern used to match date/times for <JAIL>\n\n#### get <JAIL> usedns\n\ngets the usedns setting for <JAIL>\n\n#### get <JAIL> banip [<SEP>|--with-time]\n\ngets the list of of banned IP addresses for <JAIL>. Optionally the separator character\n('<SEP>', default is space) or the option '--with-time' (printing the  times  of  ban)\nmay be specified. The IPs are ordered by end of ban.\n\n#### get <JAIL> maxretry\n\ngets the number of failures allowed for <JAIL>\n\n#### get <JAIL> maxmatches\n\ngets the max number of matches stored in memory per ticket in <JAIL>\n\n#### get <JAIL> maxlines\n\ngets the number of lines to buffer for <JAIL>\n\n#### get <JAIL> actions\n\ngets a list of actions for <JAIL>\n\nCOMMAND ACTION INFORMATION\n\n#### get <JAIL> action <ACT> actionstart\n\ngets the start command for the action <ACT> for <JAIL>\n\n#### get <JAIL> action <ACT> actionstop\n\ngets the stop command for the action <ACT> for <JAIL>\n\n#### get <JAIL> action <ACT> actioncheck\n\ngets the check command for the action <ACT> for <JAIL>\n\n#### get <JAIL> action <ACT> actionban\n\ngets the ban command for the action <ACT> for <JAIL>\n\n#### get <JAIL> action <ACT> actionunban\n\ngets the unban command for the action <ACT> for <JAIL>\n\n#### get <JAIL> action <ACT> timeout\n\ngets the command timeout in seconds for the action <ACT> for <JAIL>\n\nGENERAL ACTION INFORMATION\n\n#### get <JAIL> actionproperties <ACT>\n\ngets a list of properties for the action <ACT> for <JAIL>\n\n#### get <JAIL> actionmethods <ACT>\n\ngets a list of methods for the action <ACT> for <JAIL>\n\n#### get <JAIL> action <ACT> <PROPERTY>\n\ngets the value of <PROPERTY> for the action <ACT> for <JAIL>\n\n### FILES\n\n/etc/fail2ban/*\n\n### REPORTING BUGS\n\nReport bugs via Debian bug tracking system http://www.debian.org/Bugs/ .\n\n### SEE ALSO\n\nfail2ban-server(1) jail.conf(5)\n\n\n\nfail2ban-client v0.11.2                     November 2020                         FAIL2BAN-CLIENT(1)\n\n"
        }
    ],
    "structuredContent": {
        "command": "fail2ban-client",
        "section": "1",
        "mode": "man",
        "summary": "fail2ban-client - configure and control the server",
        "synopsis": "fail2ban-client [OPTIONS] <COMMAND>",
        "flags": [
            {
                "flag": "-c",
                "long": "--conf",
                "arg": null,
                "description": "configuration directory"
            },
            {
                "flag": "-s",
                "long": "--socket",
                "arg": null,
                "description": "socket path"
            },
            {
                "flag": "-p",
                "long": "--pidfile",
                "arg": null,
                "description": "pidfile path --pname <NAME> name of the process (main thread) to identify instance (default fail2ban-server) --loglevel <LEVEL> logging level --logtarget <TARGET> logging target, use file-name or stdout, stderr, syslog or sysout. --syslogsocket auto|<FILE>"
            },
            {
                "flag": "-d",
                "long": null,
                "arg": null,
                "description": "--dp, --dump-pretty dump the configuration using more human readable representation"
            },
            {
                "flag": "-t",
                "long": "--test",
                "arg": null,
                "description": "test configuration (can be also specified with start parameters)"
            },
            {
                "flag": "-i",
                "long": null,
                "arg": null,
                "description": ""
            },
            {
                "flag": "-v",
                "long": null,
                "arg": null,
                "description": ""
            },
            {
                "flag": "-q",
                "long": null,
                "arg": null,
                "description": ""
            },
            {
                "flag": "-x",
                "long": null,
                "arg": null,
                "description": ""
            },
            {
                "flag": "-b",
                "long": null,
                "arg": null,
                "description": ""
            },
            {
                "flag": "-f",
                "long": null,
                "arg": null,
                "description": ""
            },
            {
                "flag": "",
                "long": "--async",
                "arg": null,
                "description": "start server in async mode (for internal usage only, don't read configuration)"
            },
            {
                "flag": "",
                "long": "--timeout",
                "arg": null,
                "description": "timeout to wait for the server (for internal usage only, don't read configuration) --str2sec <STRING> convert time abbreviation format to seconds"
            },
            {
                "flag": "-h",
                "long": "--help",
                "arg": null,
                "description": "display this help message"
            },
            {
                "flag": "-V",
                "long": "--version",
                "arg": null,
                "description": "print the version (-V returns machine-readable short format)"
            }
        ],
        "examples": [],
        "see_also": [
            {
                "name": "fail2ban-server",
                "section": "1",
                "url": "https://www.chedong.com/phpMan.php/man/fail2ban-server/1/json"
            },
            {
                "name": "jail.conf",
                "section": "5",
                "url": "https://www.chedong.com/phpMan.php/man/jail.conf/5/json"
            },
            {
                "name": "FAIL2BAN-CLIENT",
                "section": "1",
                "url": "https://www.chedong.com/phpMan.php/man/FAIL2BAN-CLIENT/1/json"
            }
        ],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 3,
                "subsections": []
            },
            {
                "name": "OPTIONS",
                "lines": 1,
                "subsections": [
                    {
                        "name": "-c --conf",
                        "lines": 2,
                        "flag": "-c",
                        "long": "--conf"
                    },
                    {
                        "name": "-s --socket",
                        "lines": 2,
                        "flag": "-s",
                        "long": "--socket"
                    },
                    {
                        "name": "-p --pidfile",
                        "lines": 13,
                        "flag": "-p",
                        "long": "--pidfile"
                    },
                    {
                        "name": "-d",
                        "lines": 3,
                        "flag": "-d"
                    },
                    {
                        "name": "-t --test",
                        "lines": 2,
                        "flag": "-t",
                        "long": "--test"
                    },
                    {
                        "name": "-i",
                        "lines": 1,
                        "flag": "-i"
                    },
                    {
                        "name": "-v",
                        "lines": 1,
                        "flag": "-v"
                    },
                    {
                        "name": "-q",
                        "lines": 1,
                        "flag": "-q"
                    },
                    {
                        "name": "-x",
                        "lines": 1,
                        "flag": "-x"
                    },
                    {
                        "name": "-b",
                        "lines": 1,
                        "flag": "-b"
                    },
                    {
                        "name": "-f",
                        "lines": 1,
                        "flag": "-f"
                    },
                    {
                        "name": "--async",
                        "lines": 2,
                        "long": "--async"
                    },
                    {
                        "name": "--timeout",
                        "lines": 5,
                        "long": "--timeout"
                    },
                    {
                        "name": "-h --help",
                        "lines": 2,
                        "flag": "-h",
                        "long": "--help"
                    },
                    {
                        "name": "-V --version",
                        "lines": 2,
                        "flag": "-V",
                        "long": "--version"
                    }
                ]
            },
            {
                "name": "COMMAND",
                "lines": 4,
                "subsections": [
                    {
                        "name": "restart",
                        "lines": 2
                    },
                    {
                        "name": "restart [--unban] [--if-exists] <JAIL>",
                        "lines": 2
                    },
                    {
                        "name": "reload [--restart] [--unban] [--all]",
                        "lines": 4
                    },
                    {
                        "name": "reload [--restart] [--unban] [--if-exists] <JAIL>",
                        "lines": 4
                    },
                    {
                        "name": "unban --all",
                        "lines": 2
                    },
                    {
                        "name": "unban <IP> ... <IP>",
                        "lines": 4
                    },
                    {
                        "name": "banned <IP> ... <IP>]",
                        "lines": 10
                    },
                    {
                        "name": "version",
                        "lines": 4
                    },
                    {
                        "name": "set loglevel <LEVEL>",
                        "lines": 3
                    },
                    {
                        "name": "get loglevel",
                        "lines": 2
                    },
                    {
                        "name": "set logtarget <TARGET>",
                        "lines": 2
                    },
                    {
                        "name": "get logtarget",
                        "lines": 2
                    },
                    {
                        "name": "set syslogsocket auto|<SOCKET>",
                        "lines": 2
                    },
                    {
                        "name": "get syslogsocket",
                        "lines": 2
                    },
                    {
                        "name": "flushlogs",
                        "lines": 4
                    },
                    {
                        "name": "set dbfile <FILE>",
                        "lines": 2
                    },
                    {
                        "name": "get dbfile",
                        "lines": 2
                    },
                    {
                        "name": "set dbmaxmatches <INT>",
                        "lines": 2
                    },
                    {
                        "name": "get dbmaxmatches",
                        "lines": 2
                    },
                    {
                        "name": "set dbpurgeage <SECONDS>",
                        "lines": 2
                    },
                    {
                        "name": "get dbpurgeage",
                        "lines": 4
                    },
                    {
                        "name": "add <JAIL> <BACKEND>",
                        "lines": 2
                    },
                    {
                        "name": "start <JAIL>",
                        "lines": 2
                    },
                    {
                        "name": "stop <JAIL>",
                        "lines": 2
                    },
                    {
                        "name": "status <JAIL> [FLAVOR]",
                        "lines": 4
                    },
                    {
                        "name": "set <JAIL> idle on|off",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> ignoreself true|false",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> addignoreip <IP>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> delignoreip <IP>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> ignorecommand <VALUE>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> ignorecache <VALUE>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> addlogpath <FILE> ['tail']",
                        "lines": 3
                    },
                    {
                        "name": "set <JAIL> dellogpath <FILE>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> logencoding <ENCODING>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> addjournalmatch <MATCH>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> deljournalmatch <MATCH>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> addfailregex <REGEX>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> delfailregex <INDEX>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> addignoreregex <REGEX>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> delignoreregex <INDEX>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> findtime <TIME>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> bantime <TIME>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> datepattern <PATTERN>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> usedns <VALUE>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> attempt <IP> [<failure1> ... <failureN>]",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> banip <IP> ... <IP>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> unbanip [--report-absent] <IP> ... <IP>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> maxretry <RETRY>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> maxmatches <INT>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> maxlines <LINES>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> addaction <ACT>[ <PYTHONFILE> <JSONKWARGS>]",
                        "lines": 3
                    },
                    {
                        "name": "set <JAIL> delaction <ACT>",
                        "lines": 4
                    },
                    {
                        "name": "set <JAIL> action <ACT> actionstart <CMD>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> action <ACT> actionstop <CMD> sets the stop command <CMD> of the",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> action <ACT> actioncheck <CMD>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> action <ACT> actionban <CMD>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> action <ACT> actionunban <CMD>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> action <ACT> timeout <TIMEOUT>",
                        "lines": 4
                    },
                    {
                        "name": "set <JAIL> action <ACT> <PROPERTY> <VALUE>",
                        "lines": 2
                    },
                    {
                        "name": "set <JAIL> action <ACT> <METHOD>[ <JSONKWARGS>]",
                        "lines": 4
                    },
                    {
                        "name": "get <JAIL> banned",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> banned <IP> ... <IP>]",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> logpath",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> logencoding",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> journalmatch",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> ignoreself",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> ignoreip",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> ignorecommand",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> failregex",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> ignoreregex",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> findtime",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> bantime",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> datepattern",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> usedns",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> banip [<SEP>|--with-time]",
                        "lines": 4
                    },
                    {
                        "name": "get <JAIL> maxretry",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> maxmatches",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> maxlines",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> actions",
                        "lines": 4
                    },
                    {
                        "name": "get <JAIL> action <ACT> actionstart",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> action <ACT> actionstop",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> action <ACT> actioncheck",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> action <ACT> actionban",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> action <ACT> actionunban",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> action <ACT> timeout",
                        "lines": 4
                    },
                    {
                        "name": "get <JAIL> actionproperties <ACT>",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> actionmethods <ACT>",
                        "lines": 2
                    },
                    {
                        "name": "get <JAIL> action <ACT> <PROPERTY>",
                        "lines": 2
                    }
                ]
            },
            {
                "name": "FILES",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "REPORTING BUGS",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SEE ALSO",
                "lines": 5,
                "subsections": []
            }
        ]
    }
}