見出し画像

【Discord】今すぐできる!世界一くわしくサーバーセキュリティの強化 0から100まで【Vortex】

最終更新日: 2022/12/11

こんにちは!みなさん、サーバーを荒らされたことはありますか?

私 は あ り ま す 😭

ですが、荒らしに時間も精神も追い詰められるのはナンセンスなので、事前に対策しておくのが良いでしょう。

さて、今回は私が運営するサーバーで行っている荒らし対策を紹介します!ただセキュリティを強めるだけではなく、それによる副作用的なことも含めて書いていきます。

みなさんがサーバーを作るときの少しの参考にでもなれば嬉しいです。

1. セキュリティの強化

最初に、Discord の基本的な荒らし対策をしていきます。

1. everyone, hereメンション権限をオフにする

画像1

ほぼ全てのロールにこれを設定してください。

この権限をオンにすると、サーバーメンバー全員にメンション(通知をすること)が可能になります。つまりサーバー人数が増えてくると、100人や1000人以上に通知がされてしまいます。

ただ、ゲームや何らかの募集鯖などでは大勢にメンションを送って募集したい時があるかと思います。このような需要があっても出来ればこの権限はOFFにするべきです。その代わり、通知専用の役職を設けて配布した方が被害が抑えられるでしょう。

これを悪用するメンバーがいると非常に危険なので、特に事情がない限り絶対にオフにしましょう。

2. このロールに対して@mentionを許可しない

画像3

ほぼ全てのロールでこれを設定してください。

オンにすると、「メッセージを送る」権限さえあれば、このロールに対してメンションできてしまいます。

メンバーのおおよそが持っているロールにこれが設定されると、悪意を持ったユーザーに everyone の代わりとして使われてしまい大変危険です。

3. 認証レベルの設定を低以上にする

画像4

認証レベルは必ず低以上にしましょう。

本当は、セキュリティを本当に固めたいなら最高に設定するべきです。最高にすれば、8割の悪意を持ったユーザーは防ぐことが出来ると思います。

ですが、電話番号を持っていないユーザーや複数アカウントを持ちたいユーザーも多数いますので、多くのサーバーでは低か中に設定するのがベターでしょう。

注意!ロールを付与しない!
サーバーに入ってきたユーザーに、すぐにロールを付与してしまうと認証レベルの設定の意味がなくなります。(無効化されます)
サーバー独自の認証システム(リアクションロール)などを行うようにしたり、そもそもロールを与えないようにするなど、対策が必要です!

4. 二要素認証を必須にする

画像5

二要素認証を必須にしましょう。

必須にすることにより、二要素認証を行っていない管理権限を持っているメンバーは、サーバーで管理アクション* を行えなくなります。

「管理権限のあるメンバーのアカウントが乗っ取られて、サーバーが荒らされてしまった」のような事態を、99%防止できます。

これを行うことによる一般メンバーへのデメリットはほぼないので、進んで有効化しましょう。しかし、スレッドの管理権限などの権限を一般メンバーに与えているサーバーでは、二要素認証を求める通知がチャンネル上部に表示されてしまうので注意が必要です。

5. everyoneまたはそれに値するロール以外に権限を付与しない

画像6

「デフォルトの権限(everyone)」で基本的な権限は操作しましょう。
(管理者権限などは別)

こうすることで、余計な管理権限を付与したロールを誤って一般メンバーに付与してしまったりということを事前に防ぐことが出来ます。

リアクションロール認証などを行っていて、デフォルトの権限で基本的な権限の操作ができない場合は、画像上の「新しいロール1」だけで権限の操作を行いましょう。

あとの権限は、基本的にクリア!しましょう。(*PCのみ iOSは作成時に「コスメティック」に設定すると権限クリアで作成される )

画像7

6. 低速モードをつける

画像8
ここで「低速モード」の設定が可能です!

低速モードは、ユーザーごとに送信間隔が制限される機能です。この機能によって、1ユーザーの連続投稿を防げます。

しかし、いくつもアカウントを作ってサーバーを荒らす人が大半なので、荒らしが防げるとは言えません。あくまで一時的な対策になります。

また、これによって各メンバーがメッセージを送信するとき何秒か待つ必要があるため、メンバーにとって良い施策とは言えません。

7. ウェブフックの管理権限をできるだけ付与しない

この権限は、ウェブフックの概念を理解していない運営メンバーには安易に与えるべきではないです。

ウェブフックを作成すると、固有のURLが作成され、権限がない第三者でもそのURLさえあればサーバーにメッセージが送信できてしまうので、とても危険です。

ウェブフックは使えば便利な機能ですが、もしURLが流出してしまう場合を考えれば安易に運営メンバーに付与するべき権限だとは言えません。

さらに、この権限の見直しとともに、サーバーに不要なウェブフックが作成されていないか確認しましょう。

通常、ウェブフックURLが第三者に渡ることはありませんが、ボットなど外部のサービスを経由して作成したURLは、各データベースに保存されていることがあります。不要になったウェブフックは随時削除したほうがよいと思います。

8. BOTに付与する権限の確認①

サーバーに導入している全てのBOTに与えている権限を把握していますか?

大切なのは、使う機能に必要な権限だけONにすることです。よく管理者権限だけを与えているサーバーがありますが、オススメはできません。

必要な権限だけONにすることにより、ボット自体が悪意を持ったユーザーに乗っ取られた場合に被害を最小限に抑えられます。

例えば、リアクションロールを使うとき必要な権限はこれです。

「メッセージを読む」「メッセージ履歴を読む」「ロールの管理」
※必要に応じて「メッセージを送信」「メッセージの管理」「埋め込みリンク」「リアクションの追加」

自分がそのBOTで使いたい機能に必要な権限だけをONにしておけば、後から起こるトラブルを最小限にできます!

画像9

9. BOTに付与する権限の確認②

BOTに付与する権限の確認①では、ボットが乗っ取られた時に被害を最小限に抑える方法について紹介しました。ここではチャンネル単位で権限を変更することで、悪意のあるユーザーによってボットが利用されることを防いでいきます。

ほとんどのボットは、ユーザーからのコマンド入力やスラッシュコマンドによって何かをするように作られています。これを利用すると、「ボットへコマンド入力を大量に送って、ボットのメッセージで荒らす」事ができてしまいます。

これを防ぐための方法をいくつかまとめておきます。

  • コマンド専用のチャンネルを作成する

  • スラッシュコマンドの使用権限を、コマンド用チャンネル以外でOFFにする。

  • ボットのチャンネル閲覧権限を、コマンド用チャンネル以外で無効にする。

画像10
Rythmやディスボードのコマンドを連投して荒らすユーザーがいます。

10. コミュニティサーバーを有効にする

サーバー設定を開いてコミュニティサーバーを有効にすると、サーバー運営に役立つ様々な機能が使えるようになります。コミュニティサーバーにしてデメリットはほぼないので、有効にしておくと良いでしょう。

コミュニティサーバーを有効にし、「メンバー・スクリーニング」を設定するとサーバーに入ってこようとする多くの荒らしユーザー(セルフボット等)を防げる場合があります。

メンバー・スクリーニング
サーバーに参加すると案内やサーバールールが書かれたポップアップが表示され、「同意する」ボタンを押すまで、発言などが制限される機能です。

一部のサーバーではAutoMod機能がデフォルトで実装されており、サーバー運営のためのいくつかの荒らし対策ができます。

2. セキュリティの強化+

ここではボットを用いてさらにセキュリティを強化していきます。この章で紹介する Vortex は多くのサーバーで導入されていることが多い印象です。

1. セキュリティボットVortexを導入する

画像11

いよいよ、ボットを使っていきます!

ここからは、Vortex というセキュリティボットの使い方を解説していきます。まずは Vortex をあなたのサーバーに導入しましょう。

導入方法
① こちらのリンクにアクセスする。
② 自分のサーバーを選ぶ。
③ 「はい」を押す。
④ 権限を確認して「認証」を押す。
⑤ hCaptchaを行う。

※メンバー数がBot数より少ないサーバー、メンバーが30人以下のサーバーでは使用できません。(しばらくすると退出します)

2. Vortexを導入する理由

Discord においてセキュリティボットといっても、Vortex 以外にも様々な特徴を持ったボットがあります。

たくさんのセキュリティボットがある中で、私が Vortex をおすすめする理由は、広いカスタマイズ性と管理性です。

メッセージの連投、複数メンションの送信…など、各違反行為に対する処罰の ON/OFF を切り替え、それらの基準を幅広く決めることができます。また、それぞれの違反行為に対しての処罰 Strike という仕組みを使って自分のサーバーだけの処罰の重みを決めることができたりします。

個人的に少し足りない部分もありますが、他ボットで補えばOK!

3. Vortexの仕組み

Vortex の仕組みはこうです。

画像12

Vortex の独自の概念、Strike の説明はこうです。

画像13

① Vortexの役職の設定

Vortex について少しだけ理解したところで、設定を行っていきましょう。全く理解していなくても感覚で理解していけばたぶん大丈夫…です。

Vortex はメンバーに対してキックや Ban を行いますが、役職の上下関係が Vortex のほうが下の場合、Vortex はメンバーに対してキックや Ban を行えません。必ず Vortex のロールをメンバーに付与しているロールより上にしましょう。

② ミュートロールの設定

ミュートロールは、「Muted」とロールに命名されていることが多いです。

このロールを設定すると、この次で設定した違反行為に違反したユーザーを喋れなくしてくれます。

もしサーバー運営者がいないときに荒らしが来てもユーザーを喋れなくしてくれるので、一回の被害で済みます。

早速設定していきます。以下のコマンドを送信してください。

>>setup muterole

すると以下のようなメッセージが出るので、こっち!を押してください。

画像14

すると、設定が完了します。

画像15

全てのチャンネルの Muted ロールで「メッセージの送信」と「リアクションの追加」が OFF にされていることがわかります。

これにより、ユーザーが喋れなくなります。リアクションも新規に追加できなくなるため、リアクションによる荒らしも防げます。

画像16


③ Strikeの設定

ミュートロールを設定したら、次に Strike の数に対する処罰の内容を決めていきます。Strike はある項目に違反した回数に応じて増えていきます。

以下のコマンドを利用して Strike に対する処罰の内容を決めます。

>>punishment <Strikeの数がこの数のとき> <この処罰を行う> [処罰の有効時間]

たとえば、②で設定したミュートロールを付与(以下、ミュートするといいます)をStrike が 1 のときに 10分間 したい場合にはこうなります。(10 minutes は 10 m と省略可)

>>punishment 2 mute 10 minutes

たとえば、ユーザーについた Strike が 5 のときにそのユーザーを Ban したい場合にはこうなります。

>>punishment 5 Ban

えらべる処罰の種類
行える処罰は Kick、Ban、Softban、Mute です。
Ban と Mute の場合には 時間を設定することができます。

Kick: 追放(再入室可)
Ban: 永久追放(再入室不可)
Softban*: Banしてすぐに解除
Mute: 発言・リアクションの禁止

*Softban… = Kick と同じだが、一度 Ban するのでそのユーザーのメッセージを消すことができる。

えらべる処罰の時間
Ban と Mute の場合には 時間を設定することができます。

分 : minutes もしくは m
時間: hours もしくは h
日 : days もしくは d

もし、間違えて設定した場合には以下のコマンドで設定を削除できます。

>>punishment <Strikeの数がこの数のとき> None

たとえば、 Strike が 1 のときの設定を削除したいときにはこうです。

>>punishment 1 None

私のサーバーでは以下のように設定しています。(真ん中)(🚩= Strike)

この場合のコマンド一覧(一行ずつ送信)
>>
punishment 1 mute 10 m
>>punishment 2 mute 1 h
>>punishment 3 mute 3 h
>>punishment 4 mute 6 h
>>punishment 5 ban

💣!注意!サーバーの特色に合わせて設定してください。
これはあるコミュニティサーバーの一例です。
ゲームサーバーなどでメンションを多用する場合、一度に8人などメンションすることがあると思います。その場合、次に解説している「メンションの数」を4にしてしまうと5つ Strike がつき、 一度で Ban になってしまいます。あなたのサーバーでこれらの設定が適しているか確認してください。

④ ログの設定

ログがないといつの間にか謎のBanが発生していたりなどが起こるため、以下の手順で設定しておきましょう。

① Vortex 用のログチャンネルを作る
② コマンドをうつ

>>modlog <#チャンネルを指定>

これで設定完了です!お好みでもう一つチャンネルを設定して、(modlogと同じチャンネルでも構いませんが過去に辿るのが難しくなるため分けるべきです)メッセージログも設定できます。

>>messagelog <#チャンネルを指定>

Vortex にお金を払うと serverlog も設定できます。

⑤ 違反行為の設定

設定できる違反行為は以下のようにたくさんあります。設定すべきものは黒字になっています。「招待リンク」を規制しているサーバーでは招待リンクへのStrike 設定しましょう。

  • 招待リンク

  • 有名なコピペ

  • everyone / here 

  • 悪質な紹介リンク

  • メンションの数

  • ロールへのメンションの数

  • 行数

  • 重複メッセージ

  • 一定期間に一定数以上のサーバーへの入室

  • 招待リンクや悪質な紹介リンクの短縮URL(有料)

💣注意!サーバーの特色に合わせて設定してください。
設定すべきものはあくまで一例です。メンションが日常的に多用されるサーバー、重複メッセージがよく投稿されるサーバー、@everyone や @here を日常的に使うサーバーなどではこれらの設定が適していない場合があります。

それぞれ以下のように設定できます。実際に入力するときは、<>は必要ありません。

👇招待リンク を送信したとき

>>antiinvite <付与するStrikeの数>

👇有名なコピペ を送信したとき

>>anticopypasta <付与するStrikeの数>

👇everyone / here を送信したとき

>>antieveryone <付与するStrikeの数>

👇悪質な紹介リンク を送信したとき

>>antireferral <付与するStrikeの数>

👇メンションの数 の設定(Strike の数は追加のメンション数ごとに増える)

>>maxmentions <メンションの数>
>>maxmentions OFF

👇ロールへのメンションの数 の設定(Strike の数は追加のメンション数ごとに増える)

>>maxmentions role <ロールメンションの数>
>>maxmentions role OFF

👇行数 の設定(Strike の数は追加の行数ごとに増える)

>>maxlines <行数>
>>maxlines OFF

👇重複メッセージ
この設定は少し特殊です。まず、重複メッセージとは同じメッセージが何回も送信されたときのことです。

最初に「同じメッセージが何回送信されたとき Strike を付与するか」、次に「同じメッセージが何回送信されたときそれらのメッセージを消すか」、最後に「Strike を付与するとき、Strike を何個付与するか」を設定します。

>>antiduplicate <重複メッセージの数(Strike発動)> [重複メッセージの数(削除)] [付与するストライクの数(デフォルトは1)]

たとえば 3回目の重複メッセージでそれらのメッセージを削除、4回目の寿福メッセージで Strike を 1 付与したいときはこうです。

>>antiduplicate 4 3 1

👇一定期間に一定数以上のサーバーへの入室
この機能は「オートレイドモード」といいます。荒らしは短期間に何ユーザーもサーバーに入室してくることが多いですが、この機能を有効にしておくとそれらのユーザーを全員キックしてくれます。

「joins」には入室数、「seconds」には秒数を入力します。

>>autoraidmode <joins/seconds>

たとえば、10秒間に5人以上入室した場合にそれらのユーザーをキックしたいときにはこうです。

>>autoraidmode 5/10

オフにしたいときはこうです。

>>autoraidmode OFF

👇招待リンクや悪質な紹介リンクの短縮URL(有料)
Vortex Pro に登録する必要があります。

>>resolvelinks <ON | OFF>

私のサーバーでは以下のように設定しています。

この場合のコマンド一覧(一行ずつ送信)
>>antiduplicate 4 3 1
>>maxmentions 4
>>maxmentions role 2
>>antieveryone 1
>>autoraidmode 9/10

これで Vortex の設定は終わりです。おつかれさまでした!

⑤ーおまけ filterの活用(有料)

Vortex には filter 機能があります。これは特定の言葉を禁止するものです。

👇フィルターの追加(有料)

>>filter add <フィルターの名前> <付与するStrikeの数> <禁止にする言葉>

たとえばうんちを規制したい場合はこうです。フィルターの名前は自由です。

>>filter add unti_filter 1 "うんち"

クォーテーション(`)で囲むことで正規表現も利用できます。

>>filter add unti_filter 1 `(うんち)|(うんぴ)|(うんこ)`

⑥ Vortexのコマンド

Vortex は手動で Kick、Ban、Softban、Silentban*、Unban、Mute ができます。すべて >> のあとに入力し、その後にユーザーを指定するだけです。

※複数ユーザー指定可、理由設定可。BAN、Silentban、Mute は時間設定可。ユーザーの指定はメンション、ユーザー名、ユーザーIDで可。
*Silentban… メッセージを削除せずに Ban する機能。

たとえば 72時間 Mute したい場合はこうです。

>>mute @かびかび 72 h 理由はない

⑦ その他コマンド

ボットによって Strike を付与された数、ミュートの状態などを確認するにはこうです。

>>check <ユーザー>

ボットによって付与された Strike を取り消すにはこうです。理由は必須です。

>>pardon [取り消すStrikeの数] <ユーザー(複数可)> <取り消す理由>

たとえば誰かの Strike を 2個 外したい場合にはこうです。

>>pardon 2 @かびかび 理由はない

以上でモデレーションに使えそうな機能の紹介はおわりです。

その他コマンドはこちら

3. サーバー運営で気をつけること

これは特殊なケースですが、サーバー運営者の態度や言動によっては、一部のグループに狙われたりします。この章ではそうならないための私の考えを書きます。飛ばしていただいても構いません。

1. 構わない

これは基本ですが、荒らしに対して反抗したり、文句を言ったりということは避けるべきです。あなただけでなく、サーバー全員でそういった雰囲気をつくると良いでしょう。普段から誰にも愛されずに生きてきた愛着に問題のある方はこういった刺激に敏感だそうです。

くわえてこれは人間性の問題ですが、威張らないようにしましょう。もし、上記以外の問題でよく荒らしに狙われていると感じている場合には、あなたの人間性に問題があるのでしょうか…

2. サーバーにあった設定はそれぞれ違う

それぞれのサーバーにあったセキュリティ強化をしましょう!サーバー運営に対する、何か方針や考えを持っておくといいと思います。

たとえば小説投稿サーバーなどで長文をスパムとして判定する設定などをするのは不適です。

3. 1回くらい荒らされても大丈夫

1回や2回、荒らされるのはしょうがないです。Discord 公式サーバーですら荒らしの被害にあっています。

荒らされた後、原因を対策していくというのが大事です。

ここで注意すべきなのは荒らしをガチガチに対策するのではなく、一般メンバーがストレスを感じない程度の荒らし対策をするということです。あなたのサーバーにいつもいるのは荒らしではなく一般メンバーです。

4.被害にあった場合すること
執筆中

5. おわりに

ここまで見ていただきありがとうございました。

自分でも何を書いたか忘れてしまうほどですが、少しでもみなさんの参考になれば幸いです。


この記事が気に入ったらサポートをしてみませんか?