
私は Ubuntu 20.04 VPS (LEMP) を持っており、 をインストールしましたiptables-persistent
。このサーバーでは、 をインストールしてfail2ban
設定し、CloudFlare
fail2ban で禁止された IP を禁止しました。また、CSF も使用しています。カスタム SSH ポートを使用し、CSF 経由で設定も行っています。Fail2banjail.local
アクションでは、「 」を使用しますiptables-allports
。
問題は、Fail2ban が IPv6 禁止アクションをトリガーしたときに、iptables-persistent がその IPv6 IP をブロックしないことです。たとえば、Fail2ban が IPv6 を禁止した場合でも、SSH または SFTP 経由で VPS に接続できます。ただし、Cloudflare は HTTPS アクセス (ポート 443 とポート 80) を正常にブロックしました。
Fail2ban が IPv4 を禁止した場合、その IP は iptables-persistent (カスタム SSH ポートを含む) によって正常にブロックされます。
この IPv6 の問題を修正する方法はありますか?
答え1
問題は、Fail2ban が IPv6 禁止アクションをトリガーしたときに、iptables-persistent がその IPv6 IP をブロックしないことです。
iptables-persistent
まったく異なる理由で設定されているため、fail2ban ではすべてが必要というわけではありません。またiptables-allports
、banaction を使用する場合、fail2ban は を使用した IPv4 アドレスiptables
と を使用した IPv6 アドレスを禁止しますip6tables
。
Cloudflare はまったく別のものです (1 つの問題でバナナとキュウリを混ぜようとしないでください)。
この IPv6 の問題を修正する方法はありますか?
- IPv6 サポートは fail2ban >= 0.10 で初めて提供されることに注意してください (0.9 ではまったくサポートされていません)。
[jail] Ban <some-ip-v6>
fail2ban.log で確認できますか?- そうでない場合、フィルター/failregex は IPv6 に対応しておらず、行と一致しません。違いを見つけて failregex で修正する必要があります。そのために、IPv6 の失敗と fail2ban で設定した failregex を含むログの抜粋を提供してください。
- IPv6 が禁止された場合、fail2ban.log にエラーが表示されますか?
- の出力に jail と禁止された IPv6 エントリが表示されますか
ip6tables -nL
?