ProxyTracer: VPN およびプロキシブロッカー

:information_source: 概要 ProxyTracer API を使用して、ユーザー登録、ログイン、またはグローバルに VPN およびプロキシトラフィックを検出・ブロックします。
:hammer_and_wrench: リポジトリリンク https://github.com/ProxyTracer/discourse-proxytracer
:open_book: インストールガイド Discourse へのプラグインのインストール方法

このプラグインは、Discourse 内で VPN およびプロキシトラフィックを検出・ブロックするために ProxyTracer API を使用します。

機能

  • 新しいユーザーの登録時、既存ユーザーの認証時、またはサイト訪問者全体に対して、VPN やプロキシユーザーのブロックを細かく制御できます。VPN やプロキシユーザーにフォーラムへの読み取りアクセスを許可しても問題ない場合は、API リクエストを節約するために、ユーザー登録と認証時のみ有効に設定することも可能です。
  • 最近の IP アドレスの評価結果をキャッシュに保存することで、API へのリクエストを削減し、遅延を低減します。IP アドレスの評価結果をどのくらい記憶するかは、設定で制御できます。
  • API のタイムアウトやネットワーク障害が発生した場合、大規模なロックアウトを防ぐために、ユーザーのアクセスを優先します。この動作はオプションで変更可能です。
  • 特定の IP および CIDR サブネットのホワイトリスト機能を内蔵しています。

設定手順

  1. ProxyTracer ダッシュボード から標準の API キーを取得します。
  2. Discourse の管理パネルに移動し、管理 → プラグイン → ProxyTracer を選択して、ProxyTracer の設定画面を開きます。
  3. ProxyTracer API Key フィールドに API キーを入力します。
  4. Enabled during Signup(登録時有効)、Enabled during Login(ログイン時有効)、Enabled for All Visitors(全訪問者向け有効)を切り替えて、保護パラメータを有効にします。
  5. 信頼できる IP アドレスまたは CIDR 範囲を Whitelisted IPs リストに追加します。
  6. (オプション)API のタイムアウト時間や Redis キャッシュの有効期限を、サーバーのトラフィック要件に合わせて調整します。
  7. (オプション)ブロックされたユーザーに表示されるメッセージをカスタマイズします。例えば、ブロックが誤っている場合や、プロキシや VPN を経由していないと考える場合に、サイト管理者へ連絡する方法を指示するメッセージを追加できます。

設定項目

設定項目とその説明を表形式で記載します。

名前 説明
API Timeout (ms) API が応答するまで待機するタイムアウト時間(ミリ秒)
Cache Duration (hours) IP アドレスを再確認する前に記憶する時間(時間)
Fail Open on Error API がクラッシュまたはタイムアウトした場合、すべてのユーザーのロックアウトを防ぐために、登録・ログインを許可する
Enabled during Signup 新しいユーザーが登録を試みる際にプロキシや VPN をブロックする
Enabled during Login 既存のユーザーがログインを試みる際にプロキシや VPN をブロックする
Enabled for All Visitors フォーラムのすべてのページへのアクセスや閲覧をプロキシや VPN からブロックする(警告:すべての訪問者をチェックするため、API クォータを大量に消費します)
Block Message ユーザーがブロックされた際に表示されるエラーメッセージ
Whitelisted IPs ブロックを完全にバイパスすることを許可される IP アドレスまたは CIDR 範囲(例:192.168.1.0/24)

ネットワーク設定:Cloudflare およびリバースプロキシ

:warning: ProxyTracer が正しく機能するためには、Discourse アプリケーションが実際のクライアント IP アドレスを受け取る必要があります。

正しい IP アドレス転送を確保するには、これらの 詳細な手順 に従ってください。

緊急アクセス

アクセスできなくなった場合は、これらの 簡単な手順 に従ってアクセスを回復できます。


テストを行いたい場合は、ProxyTracer にサインアップして、テスト用の無料 API クレジットを取得できます。

「いいね!」 3

クレジットは翌月ごとにリセットされますか?

サインアップ時の無料クレジットについてお尋ねですね?もしそうであれば、それは一度限りのチャージとなります。

これではプラグインの存在意義が台無しにならないでしょうか?誰でもセーフモードを使用できてしまいます。

「いいね!」 1

これってVPNユーザーにも影響するんですか?

状況によります。安全モードを無効化できるサイト設定があり、これはゲート付きトピックコンポーネントや、広告、ゲストゲートなど、ユーザーが容易に無効化すべきではないコンポーネントやプラグインに役立ちます。ただし、ログアウト状態では、管理者にとって安全モードの利用がより困難になる可能性があります。ただし、管理者は 管理者ログイン を使用して、安全モードを再度有効にできるはずです。

このプラグインについては、安全モードが役立つとは思えません。安全モードはプラグインのフロントエンド部分のみを無効化しますが、このプラグインは 100% Ruby で書かれています。したがって、JavaScript カスタマイズを無効化しても役立たないと考えられます。この事実は、プラグインに対して少し懐疑的な気持ちを抱かせます。また、テーマコンポーネントであるかのように about.json ファイルが含まれている点も同様です。しかし最終的には、フォーラムにインストールするコードの責任はすべて、それを導入する本人にあります。

「いいね!」 1