Discord荒らし(ニューク)対策ボット:大量BANとチャンネル削除を止める
Discordの荒らし対策ボットは、一つのアカウントがサーバーを引き裂くのを止めます。 Noxyrは、チャンネルの削除、ロールの削除、BAN、キックを本人ごとに数え、短い時間枠の中で上限を超えた人を、タイムアウト、キック、またはBANし、ログチャンネルに投稿します。
想定している攻撃
スパムフィルターは、普通のメンバーを見張ります。ニュークは、すでに権限を持つ人から来ます。乗っ取られたモデレーター、盗まれた管理者のアカウント、招待すべきでなかったボットなどです。一分もかからず、すべてのチャンネルを削除し、メンバーの半分をBANすることができます。Discordはそれを自動では止めません。そのロールにとっては、一つ一つの操作がすべて許されているからです。
荒らし対策は、代わりにそのパターンに基づいて働きます。一人が破壊的な操作を素早く多数行うことは、普通のスタッフの振る舞いではありません。
監視する対象
Noxyrは監査ログを読み、各操作を誰が行ったかを調べてから、本人ごとに数えます。
- チャンネルの削除
- ロールの削除
- メンバーのBAN
- メンバーのキック
一人が時間枠の中で上限を超えると、ボットはその人を罰し、ログチャンネルに投稿します。
設定と既定値
| 設定 | 既定値 | 意味 |
|---|---|---|
| enabled | オフ | オンにするまで、何も罰しない |
| max_actions | 3 | 時間枠の中で許される操作の数 |
| window_seconds | 30 | 数える期間 |
| action | timeout | timeout、kick、ban、またはnone。noneはログだけ |
| timeout_minutes | 60 | actionがtimeoutのときに使う |
これらは/security antinukeか、ダッシュボードのSecurityのページで設定し、/security statusを実行すると、何が有効かを確認できます。アクションをnoneにして始めるのは、誰かを罰する前に、何を捉えるかを見る安全な方法です。
信頼リスト
掃除をしている管理者のように、本当に多くのものを削除する人もいます。ロールまたはユーザーに対して/security trustを使えば免除でき、/security untrustで外せます。サーバーのオーナーは常に免除され、ボット自身が行った操作は無視されます。
信頼リストは短く保ってください。一括の掃除ツールと、最も信頼する管理者だけです。信頼リストは設定のコピーでは引き継がれないので、二つ目のサーバーに誤ってそれが引き継がれることはありません。
不足しうる点
これは、どの荒らし対策の設定にも共通する、正直な部分です。
- ボットには監査ログの表示が必要です。それがなければ、誰が行ったかを判別できません。
- タイムアウト、キック、BANをするには、その権限と、罰する人より上のロールが必要です。ボットのロールより上のロールを持つ人には作用できません。
- Discordの監査ログは、負荷がかかると数秒遅れることがあります。時間枠は、それでもバーストを捉えられるだけの幅があります。
そのため、Noxyrのロールは高い位置に置いてください。オーナーより下で、カバーしたいほかのすべての人より上です。また、管理者権限を持つアカウントは、できるだけ少なくしてください。
妥当な初期設定
- Noxyrのロールを上に移動する。サーバー設定のロールで、自分のすぐ下に。
- ログチャンネルを設定する。すべての検出が記録されるように。
- 荒らし対策を既定値でオンにする。30秒に3回の操作、60分のタイムアウト。
- 信頼できる人を追加する。
/security trustで。 - 一週間後に見直す。より厳しい線が必要なら、キックかBANに移してください。
罰を選ぶ
既定はタイムアウト60分です。被害をすぐに止め、確認する時間を与えます。アカウントが悪意ある者ではなく、電話を乗っ取られた本物のモデレーターである場合に、これは重要です。キックやBANは、スタッフの入れ替わりが少なく、破壊的な行為の連続が常に疑わしいサーバーで意味があります。
アクションをnoneに設定すると、荒らし対策は警報になります。ボットはログを取るだけなので、誰かを罰することなく、誰が何をしたかが分かります。多くのオーナーは一週間このように動かして、どの普通の管理作業が上限に引っかかるかを見つけ、そのうえでmax_actionsを上げるか、適切な人を信頼します。
何かが起きる前にオンにしておく理由
荒らし対策は初期状態でオフで、オンにする前に起きたことを取り消すことはできません。ログだけのアクションでも、今日オンにしておけば、必要になった日に監査の記録が存在します。
安全にテストする
使い捨てのサーバー、または信頼リストに入っていないテスト用のアカウントを使ってください。テスト用のチャンネルをいくつか素早く削除し、ログチャンネルに記録が付くか確認します。何も起きなければ、まず監査ログの表示を確認し、次にボットのロールの位置を確認してください。
次のステップ
設定は荒らし対策のドキュメントにあります。その背後にある考え方は荒らし対策のガイドで読めます。それでも何かが起きた場合に備えて、ニューク後の復旧チェックリストを手元に置いてください。最も効果的なのは、アンチスパムとより広いセキュリティボットと並べて使うときです。Noxyrを追加して、オンにしてください。
よくある質問
Discordの荒らし対策ボットは何をしますか?
一つのアカウントが、サーバーを大量に破壊するのを止めます。Noxyrは、チャンネルの削除、ロールの削除、BAN、キックを本人ごとに数え、時間枠の中で上限を超えた人を罰します。
Noxyrの荒らし対策の既定値は何ですか?
初期状態ではオフです。オンにすると、30秒に3回の操作が許され、操作は60分のタイムアウトです。キック、BAN、ログのみも選べます。
荒らし対策から管理者を免除するにはどうすればよいですか?
ロールまたはユーザーに対して/security trustを使ってください。サーバーのオーナーは常に免除され、ボット自身の操作は無視されます。
荒らし対策が、ある人を止めなかったのはなぜですか?
ボットには監査ログの表示、対応する権限、そして相手より上のロールが必要です。ボットのロールより上のロールを持つアカウントは止められません。
Noxyrの荒らし対策は無料ですか?
はい。無料のセキュリティモジュールの一部です。