Spamcheck 反垃圾邮件服务

引入于 14.8 版本

caution此功能不适用于社区版。

Spamcheck 是一个反垃圾邮件引擎,最初是为了对抗 SaaS 中不断增加的垃圾邮件,后来公开用于私有化部署实例。

启用 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. 选择 保存修改
note在单节点实例中,Spamcheck 在localhost 上运行,因此以未经身份验证的模式运行。如果极狐GitLab 在一台服务器上运行,而 Spamcheck 在另一台服务器上运行,并侦听公共端点的多节点实例上,建议在 Spamcheck 服务前使用反向代理强制执行某种身份验证,该服务可与 API 密钥。一个示例是为此使用 JWT 身份验证并指定不记名令牌作为 API 密钥。

通过 TLS 运行垃圾邮件检查

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