🛠️

【やっておきたい】構築記事が教えてくれないMisskeyのスパム対策【コントロールパネルだけ】

2024/12/15に公開

こんにちは!みなさんはウルトラスーパーギャラクティックエンジョイアブルな2024年を送れましたでしょうか?
まだの人は12月中にウルトラスーパーギャラクティックエンジョイアブルな2024年にしましょう!別にしなくても大丈夫です!

この記事を書くことになったきっかけ

2024年の2月あたりからmisskeyだけではなくActivityPubを利用したマイクロブログ等(以下fediverse)にて連投メンションスパムが散見されるようになりました。
ここでは、今年実装されたものも含めてMisskeyでスパム対策を行う機能のヒントやその他便利機能を提供出来たらと思います

大前提

最低限のスパムを発生させほかの連合先に負荷をかけたり処理をめんどくさくしないための対策

  • 人を入れる気がないなら招待制にしましょう
    • コントロールパネル > モデレーション > 誰でも新規登録できるようにするより
    • 10月のアップデートで一定期間モデレーターや管理者のアクティビティがない場合に自動で変更されるようになりましたが、Misskeyを見るなどしたら永遠に変わらないためそもそもオフにしましょう
  • メールアドレス登録の必須化
    • コントロールパネル > モデレーション > アカウント登録にメールアドレスを必須にする
    • 特段理由がなければONにしたほうがいいです
      • メールの発行など細かい手間でもスパマーは嫌います(大量アカウント生成が面倒になるため)
  • Captchaサービスを使いましょう
    • コントロールパネル > セキュリティ > Botプロテクションより
    • hCaptcha, mCaptcha reCAPTCHA, Turnstileなどが設定できます

新規登録や通報を購読して監視する

discordなどのサービスにWebhookを飛ばすことができます。
とはいっても、特定サービスに向けたWebhookの形では提供されていないため、自分でCloudflare Workersなどのサービスを用いて設定する必要があります

なっかぁさんの記事などが参考になるでしょう

  • misskeyでの設定場所は設定 > コントロールパネル > Webhookから
  • あまり登録数が多くないサーバーは登録を監視するだけでもスパムのような登録をこれで気づけるはず

リモートのユーザーの振る舞いを制限する

Misskeyではロール機能を使いユーザーの振る舞いを制限できます。この機能は主にローカルユーザーのモデレーションや支援者限定特典に使われますが、リモートユーザーをある程度機械的にモデレーションすることも可能です。

Misskey上でのリモートユーザーの扱い

まず、(未改変状態での)Misskeyでは基本的にリモートユーザーのフォロー数やフォロワー数
はローカルユーザーを対象としたものです。これをコンディショナルロールの条件に利用し、フォロワー数が○○以上、フォロー数が○○以上のリモートユーザーという条件を設定することでローカルユーザーとリモートユーザーの関係で制限を設定することが可能です。

メンション数制限

2024年2月あたりから流行したスパムは主にメンションを送信することが特徴です。これに対応する「ノート内の最大メンション数」という設定項目がロールに追加されています。
フォロー/フォロワー数などに応じて適切に制限することでスパムを減らせると思います。

特定メールドメインからの登録を拒否

  • コントロールパネル > セキュリティ > Banned Email Domainsにて拒否するドメインの指定が可能です

使い捨てメールのドメインリストは

https://github.com/disposable-email-domains/disposable-email-domains

が有名ですが、これに掲載されていないものもたくさんあるため、各自調査して追加するとよいかもしれません。

メンションの観測

パブリック投稿やホーム投稿で行われた自ドメインへのメンションはアンテナ機能を使うことである程度拾うことが可能です。アンテナ機能を使いそれらのノートを定期的に確認することでスパムの発生にいち早く気づけるかもしれません

その他(番外編)

ここではあまり詳しくは紹介しませんが、コントロールパネル外での対策としてはCloudflareのWAFやnginxを使った方法のほか、「プテチゲ」を使った方法などが挙げられます

さいごに

この記事で書いたものとは違ったスパムが発生するかもしれませんが、日々自分の建てたインスタンスを利用し監視することでその被害は最小限に抑えられるでしょう。
スパムが発生した際に制限を弱めたり強めたりするよりも、日常からスパム対策を行うことでスパムの発生を未然に防ぎ、より良きMisskeyライフが送れるのではないでしょうか?

それでは、2024年の残りと2025年も楽しいMisskeyライフを!

Discussion