| 概要 | ProxyTracer API を使用して、ユーザー登録、ログイン、またはグローバルに VPN、Tor、プロキシのトラフィックを検知・ブロックします。 | |
| リポジトリリンク | https://github.com/ProxyTracer/discourse-proxytracer | |
| インストールガイド | Discourse へのプラグインのインストール方法 |
このプラグインは、Discourse 上で VPN、Tor、プロキシのトラフィックを検知・ブロックするために ProxyTracer API を使用します。
機能
- 新しいユーザーの登録、既存ユーザーの認証、またはサイト訪問者全体に対して、VPN、Tor、プロキシユーザーのブロックを細かく制御できます。VPN、Tor、プロキシユーザーがフォーラムへの読み取りアクセスを許可しても問題ない場合は、API リクエストを節約するために、ユーザー登録と認証時のみ有効にすることも可能です。
- 最近の IP アドレスの評価結果をキャッシュすることで、API へのリクエストを削減し、レイテンシを低下させます。IP アドレスの評価結果をどの程度保持するかを設定で制御できます。
- API のタイムアウトやネットワーク障害が発生した場合、大規模なロックアウトを防ぐためにユーザーのアクセスを優先します。この動作はオプションで変更可能です。
- 特定の IP および CIDR サブネットのホワイトリスト機能を内蔵しています。
設定手順
- ProxyTracer ダッシュボード から標準の API キーを取得します。
- Discourse の管理パネルに移動し、管理 → プラグイン → ProxyTracer から ProxyTracer の設定を開きます。
ProxyTracer API キーフィールドに API キーを入力します。サインアップ時に有効、ログイン時に有効、すべての訪問者に対して有効を切り替えて、保護パラメータを有効にします。- 信頼できる IP アドレスまたは CIDR 範囲を
ホワイトリスト登録された IPリストに追加します。 - (オプション)サーバーのトラフィック要件に合わせて、API タイムアウトと Redis キャッシュの期間制限を調整します。
- (オプション)ブロックされたユーザーに表示されるブロックメッセージをカスタマイズします。例えば、ブロックが不当であると考える場合や、プロキシ、Tor、VPN を経由していない場合に管理者に連絡するための指示を追加できます。
設定項目
設定項目とその説明を含む表
| 名前 | 説明 |
|---|---|
| API タイムアウト (ms) | タイムアウトが発生するまでの API 応答待ち時間。 |
| キャッシュ期間 (時間) | 再度 API をチェックする前に IP アドレスを保持する時間。 |
| エラー時にオープンにする | API がクラッシュまたはタイムアウトした場合、すべてのユーザーのロックアウトを防ぐために、登録またはログインを許可します。 |
| サインアップ時に有効 | 新しいユーザーが登録を試みるときにプロキシと VPN をブロックします。 |
| ログイン時に有効 | 既存のユーザーがログインを試みるときにプロキシと VPN をブロックします。 |
| すべての訪問者に対して有効 | フォーラムのどのページにもアクセスまたは表示できないようにプロキシと VPN をブロックします。(警告:すべての訪問者をチェックするため、API クォータを大量に消費します) |
| ブロックメッセージ | ユーザーがブロックされた際に表示されるエラーメッセージ。 |
| ホワイトリスト登録された IP | ブロックを完全にバイパスできる IP アドレスまたは CIDR 範囲(例:192.168.1.0/24)。 |
ネットワーク設定:Cloudflare とリバースプロキシ
ProxyTracer が正常に機能するためには、Discourse アプリケーションが真のクライアント IP アドレスを受け取る必要があります。
IP アドレスの転送を正しく行うには、以下の詳細な手順に従ってください。
緊急アクセス
ロックアウトされた場合は、以下の簡単な手順に従ってアクセスを回復できます。
テストを行いたい場合は、ProxyTracer にサインアップして、テスト用の無料 API クレジットを取得できます。
