Ubuntu
fail2ban 無法將 iptables 添加到規則中
我遇到的問題是 fail2ban 沒有將被禁止的 IP 添加到 iptables。
這是錯誤;
2022-01-29 15:13:48,499 fail2ban.actions [2608]: NOTICE [man] Restore Ban 212.192.246.26 2022-01-29 15:13:48,513 fail2ban.utils [2608]: ERROR 7f9281692660 -- exec: iptables -w -N f2b-man iptables -w -A f2b-man -j RETURN iptables -w -I INPUT -p tcp -m multiport --dports all -j f2b-man 2022-01-29 15:13:48,514 fail2ban.utils [2608]: ERROR 7f9281692660 -- stderr: 'iptables: Chain already exists.' 2022-01-29 15:13:48,514 fail2ban.utils [2608]: ERROR 7f9281692660 -- stderr: "iptables v1.8.4 (legacy): invalid port/service `all' specified" 2022-01-29 15:13:48,514 fail2ban.utils [2608]: ERROR 7f9281692660 -- stderr: "Try `iptables -h' or 'iptables --help' for more information." 2022-01-29 15:13:48,514 fail2ban.utils [2608]: ERROR 7f9281692660 -- returned 2 2022-01-29 15:13:48,514 fail2ban.actions [2608]: ERROR Failed to execute ban jail 'man' action 'iptables-multiport' info 'ActionInfo({'ip': '212.192.246.26', 'family': 'inet4', 'fid': <function Actions.ActionInfo.<lambda> at 0x7f9280d62e50>, 'raw-ticket': <function Actions.ActionInfo.<lambda> at 0x7f9280d63550>})': Error starting action Jail('man')/iptables-multiport: 'Script error'
所以 iptables 不喜歡;
iptables -w -I INPUT -p tcp -m multiport --dports all -j f2b-man
–dport all 顯然是問題所在,所以我的問題是為什麼?為什麼fail2ban會給出錯誤的命令,以及如何糾正它?
編輯:在沒有網路計劃的情況下執行 Ubuntu 伺服器 20.04.3。
操作
iptables-multiport
並不適合禁止所有埠,您可以使用其他禁止操作。只需將
banaction
jail 設置為您選擇的所有埠操作(例如iptables-allports
),或使用已在(也由您的發行版維護者設置或覆蓋)中可用的插值變數“banaction_allports” ,也可以在您的.jail.conf``jail.local
[man] # banaction = iptables-allports banaction = %(banaction_allports)s [other-allports-jail] banaction = %(banaction_allports)s