IPtablesのFail2banブロックはDebian Lennyでは動作しません。 [モバイルSSHポート]

IPtablesのFail2banブロックはDebian Lennyでは動作しません。 [モバイルSSHポート]

私は最近セキュリティメンテナンスを行うことにしました。私のログを見て、SSHサーバーでいくつかの操作を試しました。まず、SSHポートをデフォルト22から移動しました。その後、私は次の内容を読んだ。失敗2禁止ブロックホストそしてホスト拒否

最初の項目を見ました。構成は簡単で、すべてが理解しやすいです。しかし、「保護機能を探索」しようとするとテスト失敗。すべてが問題ないようですが、まだサーバーにアクセスできます。

また、IPtablesもテストしました。# iptables -I INPUT -j DROP- その後SSH接続が失われました(それで私が望んでいました)。それでは# iptables -I INPUT -s 84.x.y.z -j DROPこれも効果がありました。

しかし、Fail2banによって作成されたルールは機能しません:($ sudo iptables -L

Chain INPUT (policy ACCEPT)
target     prot opt source               destination        
fail2ban-apache  tcp  --  anywhere             anywhere            multiport dports www,https
fail2ban-ssh  tcp  --  anywhere             anywhere            multiport dports ssh
fail2ban-ssh-ddos  tcp  --  anywhere             anywhere            multiport dports ssh

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination        

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination        

Chain fail2ban-apache (1 references)
target     prot opt source               destination        
RETURN     all  --  anywhere             anywhere            

Chain fail2ban-ssh (1 references)
target     prot opt source               destination        
DROP       all  --  84.x.y.z           anywhere            
RETURN     all  --  anywhere             anywhere            

Chain fail2ban-ssh-ddos (1 references)
target     prot opt source               destination        
RETURN     all  --  anywhere             anywhere

ロードされたカーネルモジュール:($ lsmod | grep ip

iptable_nat             4680  0
nf_nat                 15576  1 iptable_nat
nf_conntrack_ipv4      12268  3 iptable_nat,nf_nat
nf_conntrack           55540  4 xt_state,iptable_nat,nf_nat,nf_conntrack_ipv4
xt_multiport            2816  2
iptable_filter          2624  1
ip_tables              10160  2 iptable_nat,iptable_filter
x_tables               13284  5 xt_state,xt_tcpudp,iptable_nat,xt_multiport,ip_tables
ipv6                  235396  24

バージョン:

  • Debian Reny 5.06、カーネル 2.6.26-2-686
  • IP表1.4.2-6
  • Fail2ban 0.8.3-2sid1
  • openssh-server1:5.1p1-5

段階的なテスト#1:

  1. 低い禁止時間に対してFail2banを設定します。 60秒。その後、再ロードしてください。
  2. 間違ったパスワードで直接ログインしてみてください(SSHを使用)。
  3. 6番目に正しいパスワードを入力してください(最大試行回数は4回です)。ログインしました。そのサーバーでホストされているWebページにアクセスすることもできます。
  4. iptables -L上記のように見せてください。したがって、サーバーに接続してコマンドを発行すると、禁止が適用されます。

段階的テスト#2:

  1. Fail2banを停止します。at将来、以下に作成された禁止規則を削除するには、スクリプトを作成してください。 ( iptables -D INPUT 1)
  2. ブロックルールを作成します。iptables -I INPUT 1 -s 84.x.y.z -j DROP
  3. 他のものを入力できず、SSH接続が機能しません。このページにアクセスできません。それでは、iptablesで何をしたいですか?
  4. スクリプトが完了したら、at私のサーバーにアクセスできます。

解決策は見えません。 IPtables禁止(Fail2banで実行)を機能させるにはどうすればよいですか?

ベストアンサー1

Fail2banをインストールする前に問題を発見しましたが、どうしましたか?時間をつかんで申し訳ありません。

セキュリティ上の理由から、sshdをポート22から別のポートに移動しました。の参照はiptablesポート22のみを参照します。私の考えでは、常に現在のsshdポートを参照する変数のようです。しかし、いいえ

正確な回避策(デーモンを元のポートから離す場合):

  1. Jail.local(または.conf)を開きます。
  2. あなたのサービスを見つけてください(中括弧内)。
  3. このport部分を修正してみんな。例:port = all
  4. banaction値を含むポート行の後に既存の行を追加または編集します。iptables - すべてのポート。例: banaction = iptables-allports
  5. デーモンを再起動してください。例: # service fail2ban restart

port sshディレクティブを変更したり、数字を書き込んだりするソリューションが見つかりません。完全に移植されていない解決策があれば聞いてみましょう!

おすすめ記事