そのため、最近WebSocketを使用するアプリケーションを設定しており、Apacheプロキシパスを使用してdomain.com/applicationを介してアプリケーションを配信しています。
問題は、アプリがあまりにも不正だということです。ログイン画面が付属していますが、さらに一歩進んで、Proxypass設定でApache経由でhtpasswdログインを実装しました。
(この記事を書いて私の質問に対する答えになったようですが、再表現/要求します)
<Location /application>
AllowOverride AuthConfig
AuthUserFile /home/[USERNAME]/.htpasswd
AuthName "Authorization Required"
AuthType Basic
require user [USERNAME]
ProxyPass wss://192.168.1.50:443/application
ProxyPassReverse wss://192.168.1.50:443/application
</Location>
ProxyPassサーバーで実際のアプリケーションログイン画面を監視するようにFail2Banを構成できます。 [アプリケーションはFail2Banをインストールできません。]
--解決策? htpasswd認証ページを実装することで、プロキシサーバーは初期Apache認証プロンプトを介して失敗したログイン試行に応じて失敗2banをブロックします。
答え1
純粋な構成では、いくつかの理由でProxypass failure2banがここで機能しないと確信しています。
failure2banは実際にログを見て、失敗した認証試行をブロックできます。認証ログがバックエンドにあるため、認証しようとしません。
既知のプロトコルの定義セットであるFail2ban。特定のケースではそうでない可能性があり、そのような場合はプラグインを開発する必要があります。
pass2banは、認証が実行されるのと同じシステムで実行する必要があります。
何よりも、ツールを選択する際には、そのツールが特定の状況に適しているかどうかを確認するために、いくつかの調査を行うことをお勧めします。これらのツールを使用するよりも重要なのは、そのツールがあなたの状況に適用されるかどうかを知ることです。
このリンクに示すように、実際にFail2banを使用してネットワーク基本認証を乱用するのを防ぐことができます。あなたのプロキシパスが優先され、認証が完了しないと思います。認証にはログインページが必要な場合があり、その仮想ホストのルートでプロキシパスを実行しないことがあります。
私は通常、DoS /悪意のある要求を制御するために少なくともApacheの追加のセキュリティ層としてmod_evasiveを使用します。このスレッドに対する私の答えを見てください。 (正解で示された回答ではありません。)私の/etc/hosts.denyを編集してください。Apacheでは制限リクエストを評価できることを忘れないでください。これは、パスワードを要求するときだけでなく、人々がサービスを乱用するのを防ぐのに実際に多くの助けになる可能性があります。
制限回答を評価するためのレイヤ7測定値としてCAPTCHAを使用することを検討してください。ボットネット調整ネットワークは、複数の異なるIPを使用してアクションをバイパスし、Fail2banルールを無効にします。
確認してください:
「Google reCAPTCHA - 実際のユーザーが簡単に通過できるようにしながら、スパムや悪用からサイトを保護します。」