Skip to content

匿名发帖

启用匿名发帖后,用户发送以指定关键词结尾的贴文时,贴文将由一个匿名账号发出。匿名发帖的使用文档参见此处。匿名发帖使用用户账号的默认贴文设置,但只支持公开和不公开列出的可见性,不能定时发送。

配置

  1. 创建匿名发帖的代理账号
bash
tootctl accounts create anonbot --email xxx@xxx.xxxx --confirmed
  1. 登录对应的代理账号,完成基本账户信息配置

  2. 准备一组马甲列表(最好 50 个以上),一行一个,以纯文本方式保存在一个 Mastodon 服务(Sidekiq)可以访问的目录。每一行会被规范化为单行文本并去除首尾空白,空行和重复名称会被忽略。格式示例如下

txt
张三
李四
王五
  1. 生成随机参数
bash
openssl rand -hex 64
  1. 参照下列内容配置环境变量,注意,ANON_NAMELIST_PATH 应改为 Mastodon 服务能够访问到的绝对路径,ANON_SALT 应改为第 4 步生成的随机参数
ANON_ENABLED=true
ANON_TAG=匿了
ANON_ACCOUNT=anonbot
ANON_NAMELIST_PATH=/path/to/anonymous_names.txt
ANON_SALT=secret_random_salt
ANON_PERIOD=24
配置说明
  1. ANON_SALT 建议128字符,至少64字符
  2. 如果 Redis 服务出现问题,可能影响匿名的唯一性,如果 ANON_SALT 泄漏,很可能会丧失匿名性,所以配置时必须修改 ANON_SALT,不能直接将其设为 secret_random_salt
  3. 只改变发送贴文的账号,不防社工;匿名贴文会移除客户端名称,但无法防止用户通过贴文内容等信息被关联
  4. ANON_PERIOD 单位为小时;在每个周期内,同一用户会稳定使用同一马甲名称,不同用户会尽量使用不同名称,名称用尽后会自动添加数字后缀
  5. 匿名贴文不能定时发送,只支持公开和不公开列出的可见性;如果用户没有显式指定贴文格式、语言、敏感内容等选项,将使用发帖用户的默认设置,而不是代理账号的默认设置
  6. 如果 Redis 服务不可用,匿名发帖将失败,不会退回为普通发帖
  7. 如需配置仅限本站的匿名贴文,应直接使用贴文 API 的 local_only 选项,不再使用 ANON_TAG 后追加 👁 的旧格式
  8. 建议配置更大的单条贴文最大字符数,不保证原来的贴文字数接近限制时仍然可以正常发出
  9. 如果为容器部署,ANON_NAMELIST_PATH 应改为马甲列表文件在容器中的绝对路径
  1. 重新启动相关 Mastodon 服务(若为容器部署,可能需要重新创建容器),测试是否可以正常使用此功能。