リソースを保護するために基本認証を使用するApacheを含むTLSサイトがあります。
ポート443に対する無差別代入攻撃を防ぐためにiptablesルールを設定しようとしているので、bashスクリプトに次のiptablesルールを追加しました。
$IPTABLES -N SSL-Brute-Force
$IPTABLES -A INPUT -m tcp -p tcp --dport 443 -j SSL-Brute-Force
$IPTABLES -A SSL-Brute-Force -m state --state NEW -m recent --set --name SSL --rsource
$IPTABLES -A SSL-Brute-Force -m state --state NEW -m recent --update --seconds 600 --hitcount 5 --name SSL --rsource -j LOG --log-prefix "[SSL Brute Force] "
$IPTABLES -A SSL-Brute-Force -m state --state NEW -m recent --update --seconds 600 --hitcount 5 --name SSL --rsource -j DROP
$IPTABLES -A SSL-Brute-Force -j ACCEPT
これで、私のWebサイトにまったくアクセスできなくなり、ポート443に送信されたすべてのパケットが私のメッセージファイルから破棄されていることがわかりません。
このルールを正しく理解していますか?
答え1
いいえ。--update
オプションを;に置き換えます--rcheck
。外観の更新が発生しました--set
。同じ--update
パケットは、ルールを転送するときに最大3つの更新を生成します。特に、ルールをDROP
一致させることなくルールLOG
を適切に一致させることができます。それぞれのヒット数が増えるからです。
に変更すると、--rcheck
スタイルシートと3つの画像を含むWebページが10分ごとに表示されるように開きます。
ページ内の個々のコンポーネント(スタイルシート、JavaScript、画像、フレーム)が新しい接続を作成することは注目に値します。したがって、5
ページ分割の程度によっては、より高い値に変更する必要があるかもしれません。問題は、ユーザーが600秒間何ページを表示するのか、各ページにどれだけの接続が必要かということです。