web-dev-qa-db-ja.com

Fail2BanはIPを正しく禁止しようとしますが、IPは禁止されません-iptablesチェーンは存在しますが機能しません

Ubuntu 14.04サーバーで実行されています。

だから私はfail2banを正しく設定して/var/log/auth.log SSHログイン試行。

3回失敗すると、fail2banログにこれが表示されます。

2014-11-19 15:22:56,822 fail2ban.actions: WARNING [ssh] Ban BANNED_IP_ADDY

iptables -Lはこのチェーンを示しています。

Chain fail2ban-ssh (1 references)
target     prot opt source               destination         
REJECT     all  --  BANNED_IP_ADDY  anywhere             reject-with icmp-port-unreachable
RETURN     all  --  anywhere             anywhere

それでも、そのIPからSSH経由で問題なくログインできます。

同じことがすべてのfail2ban刑務所に当てはまります。たとえば、Apacheでは、fail2banがログを正しく検出し、IPを禁止していると主張しています。 IPは最終的にiptablesチェーンになりますが、IPは実際には拒否されていません。

これらのケースでは、SSHが標準ポートにないためだと感じています。別のポートにあります。

したがって、ssh jailルールで新しいポートを使用するように強制すると、次のようになります。

[ssh]

enabled  = true
port     = 32323
filter   = sshd
logpath  = /var/log/auth.log
maxretry = 5

次に、このエラーが表示されます。

2014-11-19 15:30:06,775 fail2ban.actions.action: ERROR  iptables -D INPUT -p tcp -m multiport --dports 32323 -j fail2ban-ssh
iptables -F fail2ban-ssh
iptables -X fail2ban-ssh returned 400
2014-11-19 15:30:06,778 fail2ban.actions.action: ERROR  iptables -N fail2ban-ssh
iptables -A fail2ban-ssh -j RETURN
iptables -I INPUT -p tcp -m multiport --dports 32323 -j fail2ban-ssh returned 400
2014-11-19 15:30:06,779 fail2ban.actions.action: ERROR  iptables -n -L INPUT | grep -q 'fail2ban-ssh[ \t]' returned 100
2014-11-19 15:30:06,780 fail2ban.actions.action: CRITICAL Unable to restore environment

そのままにしておくと

 port = ssh

次に、それは正しくiptablesに入りますが、チェーンはREJECTトラフィックに対して機能していません(前述のとおり)。

更新:

変更した場合:

banaction = iptables-multiport

に:

banaction = iptables-allports

その後、動作するように見えます。この変更の影響は何ですか?

fail2ban SSHのためにIPを禁止するには、このallportsはそのIPのすべてのポートを禁止しました。 sshログインが繰り返し失敗するため、故意に禁止されました。また、他のすべてのサービスで禁止されました。

12
Halsafar

Fail2banチェーンがINPUTおよびOUTPUTチェーンに正しくリンクされていません。質問を編集して、以下の出力を提供してください:

iptables -n -L INPUT
iptables -n -L OUTPUT

そして、すべてのfail2banチェーンもまた、より正確にできるようになります。

2
Marco
INPUT -p tcp -m multiport --dports 22 -j fail2ban-ssh
0
Zareh Kasparian