iptables-permanentを使用したfall2ban

iptables-permanentを使用したfall2ban

私はしばらくFail2banを実行し、最近インストールしてiptables-persistentブラックリストと一緒に使用していますipset(このコンピュータには常に攻撃する特定のIPがあります)。ipset/ iptablesPersistenceはUbuntuでいくつかの作業をしましたが、この部分は食べられるようです。今私の問題は次のとおりです。

マシンを再起動すると、私の(関連部分)iptablesは次のようになります。

Chain INPUT (policy ACCEPT 682 packets, 84744 bytes)
 pkts bytes target     prot opt in     out     source               destination
  347 23254 f2b-sshd   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            multiport dports 22
    0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0            match-set blacklist src
  347 23254 f2b-sshd   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            multiport dports 22

Chain f2b-sshd (2 references)
 pkts bytes target     prot opt in     out     source               destination
  694 46508 RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0
    0     0 RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0

netfilter-persistent.serviceこれにより、明確にルールファイルをロードしたにもかかわらず"loaded failed failed"systemctlnetfilter-perciousの後にロードするためにfailure2banサービスを編集しようとし"loaded active exited"ましたが、これでnetfilter-persistが...とマークされていますが、ルールはまだ重複しています(明らかにf2bはルールがすでに存在するかどうかに関係なくルールを生成します) )。

実行するたびにf2bエントリを削除するためにこのファイルを手動で編集することはiptables-save許容可能なオプションです。しかし、より良いオプションがあるかどうか疑問に思います。

ベストアンサー1

解決策を考えてみましたが、私の考えでは…ちょっと変ですね。次のファイルを作成して実行してみてください。他の項目ではなくf2b項目に依存し、すべての項目に「f2b」があり、スクリプトがiptables-save直接実行されるのではなく...

~/bin£ cat saveFilteredIptables.sh
#!/usr/bin/zsh
sudo iptables-save | perl -ne 'print if !/f2b/'
~/bin£

おすすめ記事