Files
confdroid_fail2ban/doc/puppet_classes/cd_fail2ban_3A_3Aparams.html
2017-10-09 17:39:10 +02:00

1147 lines
28 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: cd_fail2ban::params
&mdash; Documentation by YARD 0.9.9
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" />
<link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" />
<script type="text/javascript" charset="utf-8">
pathId = "puppet_classes::cd_fail2ban::params";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">cd_fail2ban::params</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: cd_fail2ban::params</h1>
<div class="box_info">
<dl>
<dt>Inherited by:</dt>
<dd>
<span class='object_link'><a href="cd_fail2ban_3A_3Amain_3A_3Adirs.html" title="puppet_classes::cd_fail2ban::main::dirs (puppet_class)">cd_fail2ban::main::dirs</a></span><br/>
<span class='object_link'><a href="cd_fail2ban_3A_3Amain_3A_3Afiles.html" title="puppet_classes::cd_fail2ban::main::files (puppet_class)">cd_fail2ban::main::files</a></span><br/>
<span class='object_link'><a href="cd_fail2ban_3A_3Amain_3A_3Aconfig.html" title="puppet_classes::cd_fail2ban::main::config (puppet_class)">cd_fail2ban::main::config</a></span><br/>
<span class='object_link'><a href="cd_fail2ban_3A_3Amain_3A_3Ainstall.html" title="puppet_classes::cd_fail2ban::main::install (puppet_class)">cd_fail2ban::main::install</a></span><br/>
<span class='object_link'><a href="cd_fail2ban_3A_3Amain_3A_3Aservice.html" title="puppet_classes::cd_fail2ban::main::service (puppet_class)">cd_fail2ban::main::service</a></span><br/>
</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/params.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class holds all parameters for the cd_fail2ban module and is
inherited by all classes except defines.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
<p>cd_fail2ban::params.pp
Module name: cd_fail2ban
Author: Arne Teuke
(arne_teuke@confdroid.com)
License:
This file is part of cd_fail2ban.</p>
<p>cd_fail2ban is used for providing automatic configuration of Fail2Ban
Copyright (C) 2017 confdroid (copyright@confdroid.com)
This program is
free software: you can redistribute it and/or modify
it under the terms of
the GNU General Public License as published by
the Free Software
Foundation, either version 3 of the License, or
(at your option) any later
version.</p>
<p>This program is distributed in the hope that it will be useful,
but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License
for more details.</p>
<p>You should have received a copy of the GNU General Public License
along
with this program. If not, see <a
href="http://www.gnu.org/licenses">www.gnu.org/licenses</a>/.
<code>CRITICAL</code>,<code>ERROR</code>,<code>WARNING</code>,<code>NOTICE</code>,<code>INFO</code>
and <code>DEBUG</code>.
@param [string] Report ban via badips.com, and use
as blacklist</p>
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>pkg_ensure</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;latest&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>which <a href="https://confdroid.com/2017/05/puppet-type-package/">package
type</a>
to choose, i.e. <code>latest</code> or <code>present</code>.</p>
</div>
</li>
<li>
<span class='name'>fn_manage_config</span>
<span class='type'>(<tt>boolean</tt>)</span>
<em class="default">(defaults to: <tt>true</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to manage the fail2ban
configuration files. If set to false,
fail2ban will be installed, but the
configuration will not be managed.</p>
</div>
</li>
<li>
<span class='name'>fn_enable_service</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;running&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Whether to enable/start or disable/stop
the fail2ban service. Valid options
are <code>running</code> or <code>stopped</code>.</p>
</div>
</li>
<li>
<span class='name'>fn_loglevel</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;INFO&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Set the log level output. Valid options are</p>
</div>
</li>
<li>
<span class='name'>fn_logtarget</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;SYSLOG&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Set the log target. This could be a file,
SYSLOG, STDERR or STDOUT. Only
one log target can be specified.</p>
</div>
</li>
<li>
<span class='name'>fn_syslogsocket</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;auto&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Set the syslog socket file. Only used when
logtarget is SYSLOG. auto uses
platform.system() to determine predefined
paths Valid options: [ auto |
FILE ].</p>
</div>
</li>
<li>
<span class='name'>fn_socket</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;/var/run/fail2ban/fail2ban.sock&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Set the socket file to communicate with the daemon.</p>
</div>
</li>
<li>
<span class='name'>fn_pidfile</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;/var/run/fail2ban/fail2ban.pid&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Set the PID file to store the process ID of the
fail2ban server.</p>
</div>
</li>
<li>
<span class='name'>fn_dbfile</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;/var/lib/fail2ban/fail2ban.sqlite3&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>file for the fail2ban persistent data to be stored.
A value of
&quot;:memory:&quot; means database is only stored in memory
and data is
lost when fail2ban is stopped.
A value of &quot;None&quot; disables the
database.</p>
</div>
</li>
<li>
<span class='name'>fn_dbpurgeage</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;86400&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>age in seconds at which bans should be purged
from the database.</p>
</div>
</li>
<li>
<span class='name'>fn_ignoreip</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;127.0.0.1/8&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>can be an IP address, a CIDR mask or a DNS host.
Fail2ban will not ban a
host which matches an address in this list. Several
addresses can be
defined using space (and/or comma) separator.</p>
</div>
</li>
<li>
<span class='name'>fn_ignorecommand</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>External command that will take an
tagged arguments to ignore, e.g.
&lt;ip&gt;,and return true if the IP is to be
ignored. False otherwise.</p>
</div>
</li>
<li>
<span class='name'>fn_bantime</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;600&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>number of seconds that a host is banned.</p>
</div>
</li>
<li>
<span class='name'>fn_findtime</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;600&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>A host is banned if it has generated “maxretry”
during the last
&quot;findtime&quot; seconds.</p>
</div>
</li>
<li>
<span class='name'>fn_maxretry</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;5&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>number of failures before a host get banned.</p>
</div>
</li>
<li>
<span class='name'>fn_backend</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;auto&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>specifies the backend used to get files
modification. options are
&quot;pyinotify&quot;, &quot;gamin&quot;, &quot;polling&quot;,
&quot;systemd&quot; and
&quot;auto&quot;.
pyinotify: requires pyinotify (a
file alteration monitor) to be installed.
If pyinotify is not installed,
Fail2ban will use auto.
gamin: requires Gamin (a file alteration monitor)
to be installed.
If Gamin is not installed, Fail2ban will use
auto.
polling: uses a polling algorithm which does not require external
libraries.
systemd: uses systemd python library to access the systemd
journal.
Specifying &quot;logpath&quot; is not valid for this backend.
See &quot;journalmatch&quot; in the jails associated filter config
auto:
will try to use the following backends, in order:
pyinotify, gamin,
polling.</p>
</div>
</li>
<li>
<span class='name'>fn_usedns</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;warn&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>specifies if jails should trust hostnames in logs,
warn when DNS lookups
are performed, or ignore all hostnames in logs
yes: if a hostname is
encountered, a DNS lookup will be performed.
warn: if a hostname is
encountered, a DNS lookup will be performed,
but it will be logged as a
warning.
no: if a hostname is encountered, will not be used for banning,
but it will be logged as info.
raw: use raw value (no hostname), allow use
it for no-host filters/actions
(example user)</p>
</div>
</li>
<li>
<span class='name'>fn_logencoding</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;auto&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>specifies the encoding of the log files
handled by the jail This is used to
decode the lines from the log file.
Typical examples: &quot;ascii&quot;,
&quot;utf-8&quot;
auto: will use the system locale setting</p>
</div>
</li>
<li>
<span class='name'>fn_enabled</span>
<span class='type'>(<tt>boolean</tt>)</span>
<em class="default">(defaults to: <tt>false</tt>)</em>
&mdash;
<div class='inline'>
<p>enables the jails.
By default all jails are disabled, and it should stay
this way.
Enable only relevant to your setup jails in your .local or
jail.d/*.conf
true: jail will be enabled and log files will get monitored
for changes
false: jail is not enabled</p>
</div>
</li>
<li>
<span class='name'>fn_filter</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;%(__name__)s&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>defines the filter to use by the jail.
By default jails have names matching
their filter name</p>
</div>
</li>
<li>
<span class='name'>fn_destemail</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;root@localhost&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Destination email address used solely for the
interpolations in
jail.conf,local,d/* configuration files.</p>
</div>
</li>
<li>
<span class='name'>fn_sender</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&quot;fail2ban@${::fqdn}&quot;</tt>)</em>
&mdash;
<div class='inline'>
<p>Sender email address used solely for some actions</p>
</div>
</li>
<li>
<span class='name'>fn_mta</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;sendmail&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>E-mail action. Since 0.8.1 Fail2Ban uses sendmail MTA
for the mailing.
Change mta configuration parameter to mail if you want to
revert to
conventional &#39;mail&#39;.</p>
</div>
</li>
<li>
<span class='name'>fn_protocol</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;tcp&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Default protocol.</p>
</div>
</li>
<li>
<span class='name'>fn_chain</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;INPUT&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Specify chain where jumps would need to be added in
iptables-* actions.</p>
</div>
</li>
<li>
<span class='name'>fn_port</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;0:65535&#39;</tt>)</em>
&mdash;
<div class='inline'>
<h1 id="label-Ports+to+be+banned+Usually+should+be+overridden">Ports to be banned Usually should be overridden</h1>
<p>in a particular jail</p>
</div>
</li>
<li>
<span class='name'>fn_fail2ban_agent</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;Fail2Ban/%(fail2ban_version)s&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Format of user-agent
<a
href="https://tools.ietf.org/html/rfc7231#section-5.5.3">tools.ietf.org/html/rfc7231#section-5.5.3</a></p>
</div>
</li>
<li>
<span class='name'>fn_banaction</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;iptables-multiport&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Default banning action</p>
</div>
</li>
<li>
<span class='name'>fn_banaction_allports</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;iptables-allports&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Default banning action</p>
</div>
</li>
<li>
<span class='name'>fn_action_</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;%(banaction)s[name=%(__name__)s, bantime=&quot;%(bantime)s&quot;, port=&quot;%(port)s&quot;, protocol=&quot;%(protocol)s&quot;, chain=&quot;%(chain)s&quot;]&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>ban only</p>
</div>
</li>
<li>
<span class='name'>fn_action_mw</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;%(banaction)s[name=%(__name__)s, bantime=&quot;%(bantime)s&quot;, port=&quot;%(port)s&quot;, protocol=&quot;%(protocol)s&quot;, chain=&quot;%(chain)s&quot;]
%(mta)s-whois[name=%(__name__)s, sender=&quot;%(sender)s&quot;, dest=&quot;%(destemail)s&quot;, protocol=&quot;%(protocol)s&quot;, chain=&quot;%(chain)s&quot;]&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>ban &amp; send an e-mail with whois report to the
destemail.</p>
</div>
</li>
<li>
<span class='name'>fn_action_mwl</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;%(banaction)s[name=%(__name__)s, bantime=&quot;%(bantime)s&quot;, port=&quot;%(port)s&quot;, protocol=&quot;%(protocol)s&quot;, chain=&quot;%(chain)s&quot;]
%(mta)s-whois-lines[name=%(__name__)s, sender=&quot;%(sender)s&quot;, dest=&quot;%(destemail)s&quot;, logpath=%(logpath)s, chain=&quot;%(chain)s&quot;]&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>ban &amp; send an e-mail with whois report and
relevant log lines</p>
</div>
</li>
<li>
<span class='name'>fn_action_xarf</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;%(banaction)s[name=%(__name__)s, bantime=&quot;%(bantime)s&quot;, port=&quot;%(port)s&quot;, protocol=&quot;%(protocol)s&quot;, chain=&quot;%(chain)s&quot;]
xarf-login-attack[service=%(__name__)s, sender=&quot;%(sender)s&quot;, logpath=%(logpath)s, port=&quot;%(port)s&quot;]&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>ban &amp; send a xarf e-mail to abuse contact of
IP address and include
relevant log lines.</p>
</div>
</li>
<li>
<span class='name'>fn_action_cf_mwl</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;cloudflare[cfuser=&quot;%(cfemail)s&quot;, cftoken=&quot;%(cfapikey)s&quot;]
%(mta)s-whois-lines[name=%(__name__)s, sender=&quot;%(sender)s&quot;, dest=&quot;%(destemail)s&quot;, logpath=%(logpath)s, chain=&quot;%(chain)s&quot;]&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>ban IP on CloudFlare &amp; send an e-mail with
whois report and relevant
log lines.</p>
</div>
</li>
<li>
<span class='name'>fn_action_blocklist_de</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;blocklist_de[email=&quot;%(sender)s&quot;, service=%(filter)s, apikey=&quot;%(blocklist_de_apikey)s&quot;, agent=&quot;%(fail2ban_agent)s&quot;]&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Report block via blocklist.de fail2ban
reporting service API</p>
</div>
</li>
<li>
<span class='name'>fn_action_badips_report</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;badips[category=&quot;%(__name__)s&quot;, agent=&quot;%(fail2ban_agent)s&quot;]&#39;</tt>)</em>
&mdash;
<div class='inline'>
<h1 id="label-Report+ban+via+badips.com">Report ban via badips.com</h1>
<p>(uses action.d/badips.conf for reporting only).</p>
</div>
</li>
<li>
<span class='name'>fn_default_action</span>
<span class='type'>(<tt>string</tt>)</span>
<em class="default">(defaults to: <tt>&#39;action_&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>Choose default action.</p>
</div>
</li>
<li>
<span class='name'>fn_action_badips</span>
<span class='type'>(<tt>Any</tt>)</span>
<em class="default">(defaults to: <tt>&#39;badips.py[category=&quot;%(__name__)s&quot;, banaction=&quot;%(banaction)s&quot;, agent=&quot;%(fail2ban_agent)s&quot;]&#39;</tt>)</em>
</li>
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217</pre>
</td>
<td>
<pre class="code"><span class="info file"># File 'manifests/params.pp', line 121</span>
class cd_fail2ban::params (
$pkg_ensure = &#39;latest&#39;,
$fn_manage_config = true,
$fn_enable_service = &#39;running&#39;,
# fail2ban.conf/local
$fn_loglevel = &#39;INFO&#39;,
$fn_logtarget = &#39;SYSLOG&#39;,
$fn_syslogsocket = &#39;auto&#39;,
$fn_socket = &#39;/var/run/fail2ban/fail2ban.sock&#39;,
$fn_pidfile = &#39;/var/run/fail2ban/fail2ban.pid&#39;,
$fn_dbfile = &#39;/var/lib/fail2ban/fail2ban.sqlite3&#39;,
$fn_dbpurgeage = &#39;86400&#39;,
# jail.conf/local
$fn_ignoreip = &#39;127.0.0.1/8&#39;,
$fn_ignorecommand = &#39;&#39;,
$fn_bantime = &#39;600&#39;,
$fn_findtime = &#39;600&#39;,
$fn_maxretry = &#39;5&#39;,
$fn_backend = &#39;auto&#39;,
$fn_usedns = &#39;warn&#39;,
$fn_logencoding = &#39;auto&#39;,
$fn_enabled = false,
$fn_filter = &#39;%(__name__)s&#39;,
$fn_destemail = &#39;root@localhost&#39;,
$fn_sender = &quot;fail2ban@${::fqdn}&quot;,
$fn_mta = &#39;sendmail&#39;,
$fn_protocol = &#39;tcp&#39;,
$fn_chain = &#39;INPUT&#39;,
$fn_port = &#39;0:65535&#39;,
$fn_fail2ban_agent = &#39;Fail2Ban/%(fail2ban_version)s&#39;,
$fn_banaction = &#39;iptables-multiport&#39;,
$fn_banaction_allports = &#39;iptables-allports&#39;,
$fn_action_ = &#39;%(banaction)s[name=%(__name__)s, bantime=&quot;%(bantime)s&quot;, port=&quot;%(port)s&quot;, protocol=&quot;%(protocol)s&quot;, chain=&quot;%(chain)s&quot;]&#39;,
$fn_action_mw = &#39;%(banaction)s[name=%(__name__)s, bantime=&quot;%(bantime)s&quot;, port=&quot;%(port)s&quot;, protocol=&quot;%(protocol)s&quot;, chain=&quot;%(chain)s&quot;]
%(mta)s-whois[name=%(__name__)s, sender=&quot;%(sender)s&quot;, dest=&quot;%(destemail)s&quot;, protocol=&quot;%(protocol)s&quot;, chain=&quot;%(chain)s&quot;]&#39;,
$fn_action_mwl = &#39;%(banaction)s[name=%(__name__)s, bantime=&quot;%(bantime)s&quot;, port=&quot;%(port)s&quot;, protocol=&quot;%(protocol)s&quot;, chain=&quot;%(chain)s&quot;]
%(mta)s-whois-lines[name=%(__name__)s, sender=&quot;%(sender)s&quot;, dest=&quot;%(destemail)s&quot;, logpath=%(logpath)s, chain=&quot;%(chain)s&quot;]&#39;,
$fn_action_xarf = &#39;%(banaction)s[name=%(__name__)s, bantime=&quot;%(bantime)s&quot;, port=&quot;%(port)s&quot;, protocol=&quot;%(protocol)s&quot;, chain=&quot;%(chain)s&quot;]
xarf-login-attack[service=%(__name__)s, sender=&quot;%(sender)s&quot;, logpath=%(logpath)s, port=&quot;%(port)s&quot;]&#39;,
$fn_action_cf_mwl = &#39;cloudflare[cfuser=&quot;%(cfemail)s&quot;, cftoken=&quot;%(cfapikey)s&quot;]
%(mta)s-whois-lines[name=%(__name__)s, sender=&quot;%(sender)s&quot;, dest=&quot;%(destemail)s&quot;, logpath=%(logpath)s, chain=&quot;%(chain)s&quot;]&#39;,
$fn_action_blocklist_de = &#39;blocklist_de[email=&quot;%(sender)s&quot;, service=%(filter)s, apikey=&quot;%(blocklist_de_apikey)s&quot;, agent=&quot;%(fail2ban_agent)s&quot;]&#39;,
$fn_action_badips = &#39;badips.py[category=&quot;%(__name__)s&quot;, banaction=&quot;%(banaction)s&quot;, agent=&quot;%(fail2ban_agent)s&quot;]&#39;,
$fn_action_badips_report = &#39;badips[category=&quot;%(__name__)s&quot;, agent=&quot;%(fail2ban_agent)s&quot;]&#39;,
$fn_default_action = &#39;action_&#39;,
) {
# installation section
$reqpackages = $::operatingsystem ? {
/(?i-mx:centos|fedora|redhat)/ =&gt; [&#39;fail2ban&#39;,&#39;fail2ban-firewalld&#39;,
&#39;fail2ban-sendmail&#39;,
&#39;fail2ban-server.noarch&#39;,&#39;whois&#39;],
}
$fn_jail_paths = $::operatingsystem ? {
/(?i-mx:centos|fedora|redhat)/ =&gt; &#39;fedora&#39;,
}
# shortcuts
$fn_os = $::operatingsystem
# service
$fn_service = &#39;fail2ban&#39;
# directories
$fn_main_dir = &#39;/etc/fail2ban&#39;
$fn_action_d_dir = &quot;${fn_main_dir}/action.d&quot;
$fn_fail2ban_d_dir = &quot;${fn_main_dir}/fail2ban.d&quot;
$fn_filter_d_dir = &quot;${fn_main_dir}/filter.d&quot;
$fn_jail_d_dir = &quot;${fn_main_dir}/jail.d&quot;
$fn_var_lib_dir = &#39;/var/lib/fail2ban&#39;
$fn_var_run_dir = &#39;/var/run/fail2ban&#39;
# files
$fn_fail2ban_conf_file = &quot;${fn_main_dir}/fail2ban.conf&quot;
$fn_fail2ban_conf_erb = &#39;cd_fail2ban/fail2ban_conf.erb&#39;
$fn_fail2ban_local_file = &quot;${fn_main_dir}/fail2ban.local&quot;
$fn_fail2ban_local_erb = &#39;cd_fail2ban/fail2ban_local.erb&#39;
$fn_jail_conf_file = &quot;${fn_main_dir}/jail.conf&quot;
$fn_jail_conf_erb = &#39;cd_fail2ban/jail_conf.erb&#39;
$fn_jail_local_file = &quot;${fn_main_dir}/jail.local&quot;
$fn_jail_local_erb = &#39;cd_fail2ban/jail_local.erb&#39;
$fn_paths_common_file = &quot;${fn_main_dir}/paths-common.conf&quot;
$fn_paths_common_erb = &#39;cd_fail2ban/paths_common_conf.erb&#39;
# includes must be last
include cd_fail2ban::main::config
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated on Mon Oct 9 17:39:08 2017 by
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
0.9.9 (ruby-2.0.0).
</div>
</div>
</body>
</html>