fail2ban:创建为脚本提供参数的自定义操作

fail2ban:创建为脚本提供参数的自定义操作

我在理解 fail2ban 的工作流程时遇到了一些问题。

我的目标是采取以下行动:

名称:pamysql
用于:执行以<name><failures><ip>、 ... 作为参数的命令

我创建了action.d/pamysql.conf

actionban = wget -q -O /dev/null server.de/fail2ban/ajax.php?action=ban&jail=<name>&ip=<ip>&failures=<failures>&time=<time>&logpath=<logpath>

调用wget可以成功,但是诸如 等参数<name>却不成功。

我的jail.conf样子是这样的:

mta = sendmail
banaction = iptables-multiport
action_mwl = %(banaction)s[name=%(__name__)s, port="%(port)s", ...]
             %(mta)s-whois-lines[name=%(__name__)s, ...]
             pamysql[name=%(__name__)s, port="%(port)s", logpath=%(logpath)s]
action = %(action_mwl)s

有人能解释一下为什么这些参数不起作用吗pamysql.conf

答案1

我找到了。解决方案非常简单:wget 调用的 url 必须放在引号之间。

因此
actionban = wget -q -O /dev/null server.de/fail2ban/ajax.php?action=ban&jail=<name>&ip=<ip>&failures=<failures>&time=<time>&logpath=<logpath>
变成
actionban = wget -q -O /dev/null "server.de/fail2ban/ajax.php?action=ban&jail=<name>&ip=<ip>&failures=<failures>&time=<time>&logpath=<logpath>"

相关内容