{{< details >}}

  • Tier: 基础版,专业版,旗舰版
  • Offering: 极狐GitLab私有化部署

{{< /details >}}

{{< alert type=”warning” >}}

Spamcheck 对所有版本都可用,但仅适用于使用极狐GitLab 企业版。

{{< /alert >}}

Spamcheck 是一个反垃圾邮件引擎,最初由极狐GitLab 开发,以应对 JihuLab.com 上日益增多的垃圾邮件,然后公开供极狐GitLab 私有化部署实例使用。

启用 Spamcheck

Spamcheck 仅适用于基于软件包的安装:

  1. 编辑 /etc/gitlab/gitlab.rb 并启用 Spamcheck:

    spamcheck['enable'] = true
    
  2. 重新配置极狐GitLab:

    sudo gitlab-ctl reconfigure
    
  3. 验证新服务 spamcheckspam-classifier 是否已启动并运行:

    sudo gitlab-ctl status
    

配置极狐GitLab 使用 Spamcheck

  1. 在左侧边栏底部,选择 管理员
  2. 选择 设置 > 报告
  3. 展开 垃圾邮件和反机器人保护
  4. 更新垃圾邮件检查设置:
    1. 勾选“通过外部 API 端点启用垃圾邮件检查”复选框。
    2. 对于 外部垃圾邮件检查端点的 URL 使用 grpc://localhost:8001
    3. 垃圾邮件检查 API 密钥 保持为空。
  5. 选择 保存更改

{{< alert type=”note” >}}

在单节点实例中,Spamcheck 通过 localhost 运行,因此以未认证模式运行。如果在多节点实例中,极狐GitLab 在一台服务器上运行,而 Spamcheck 在另一台监听公共端点的服务器上运行,建议通过 Spamcheck 服务前面的反向代理强制执行某种形式的认证,可以与 API 密钥一起使用。一个示例是使用 JWT 认证,并将持有者令牌指定为 API 密钥。

{{< /alert >}}

通过 TLS 运行 Spamcheck

Spamcheck 服务本身不能直接通过 TLS 与极狐GitLab 通信。然而,Spamcheck 可以部署在执行 TLS 终止的反向代理后面。在这种情况下,可以通过在 管理员 区域设置中为外部 Spamcheck URL 指定 tls:// 方案,而不是 grpc://,使极狐GitLab 能够通过 TLS 与 Spamcheck 通信。