Gitea 用户注册控制完整指南
Gitea 默认允许开放注册,但在私有部署场景中需要严格控制用户注册。以下是多种注册控制方案,从基础到高级:
一、基础注册控制(核心方法)
1. 完全禁用注册
通过修改配置文件 app.ini 彻底关闭注册功能:
[service] DISABLE_REGISTRATION = true # 关闭用户自助注册,只有管理员可创建用户
操作步骤:
- 找到配置文件路径: 或 (Docker 环境为 )
Gitea 默认允许开放注册,私有部署需严格控制。本文提供多种方案:基础层可通过 app.ini 配置完全禁用注册或管理后台设置;进阶层支持邮箱白名单、管理员手动审核及验证码防机器人;企业级可集成 LDAP/OAuth 外部认证或反向代理控制。Docker 环境需注意配置文件路径映射。验证时需重启服务并检查注册入口状态。推荐组合白名单、审核与验证码实现最佳防护,极端场景下可由管理员命令行创建用户。
Gitea 默认允许开放注册,但在私有部署场景中需要严格控制用户注册。以下是多种注册控制方案,从基础到高级:
通过修改配置文件 app.ini 彻底关闭注册功能:
[service] DISABLE_REGISTRATION = true # 关闭用户自助注册,只有管理员可创建用户
操作步骤:
/etc/gitea/app.ini~/.gitea/custom/conf/app.ini/data/gitea/conf/app.ini[service] 段落下添加上述配置sudo systemctl restart gitea 或 docker restart gitea效果:注册按钮消失,/user/sign_up 页面无法访问
管理员登录后:
底层原理仍是修改 app.ini,适合不熟悉文件操作的运维人员
只允许特定域名的邮箱注册:
[service] ENABLE_REGISTRATION = true # 保持注册开启 EMAIL_DOMAIN_ALLOWLIST = company.com,example.org # 仅允许这些域名
用户提交注册后需管理员手动激活:
[service] REGISTER_MANUAL_CONFIRM = true # 注册需管理员审核 DISABLE_REGISTRATION = false # 保持注册入口可见
防止机器人批量注册:
[service] ENABLE_CAPTCHA = true # 启用图形验证码
关闭本地注册,强制使用 LDAP/OAuth 等统一认证:
[service] ALLOW_ONLY_EXTERNAL_REGISTRATION = true # 仅允许外部认证注册 DISABLE_REGISTRATION = false # 保持外部注册可用 [auth] ENABLE_EXTERNAL_LOGIN = true DEFAULT_LOGIN_TYPE = LDAP [openid] ENABLE_OPENID_SIGNUP = false # 关闭 OpenID 注册
若使用反向代理认证,可控制自动创建用户:
[service] ENABLE_REVERSE_PROXY_AUTO_REGISTRATION = false # 禁止自动创建用户 ENABLE_REVERSE_PROXY_AUTHENTICATION = true
# 进入容器修改配置 docker exec -it gitea /bin/bash vi /data/gitea/conf/app.ini # 或直接修改宿主机映射文件(假设映射到 /var/gitea) vi /var/gitea/gitea/conf/app.ini # 重启容器生效 docker restart gitea
典型 Docker 配置示例:
[service] DISABLE_REGISTRATION = true # 禁用注册 [openid] ENABLE_OPENID_SIGNIN = false # 禁用 OpenID 登录 ENABLE_OPENID_SIGNUP = false # 禁用 OpenID 注册
完成配置后务必:
/user/sign_up 应返回错误或重定向对于暴露在公网的实例,建议多层防护:
[service] DISABLE_REGISTRATION = false # 允许注册(用于白名单) EMAIL_DOMAIN_ALLOWLIST = company.com # 严格限制邮箱域 REGISTER_MANUAL_CONFIRM = true # 人工审核 ENABLE_CAPTCHA = true # 验证码防机器人 DEFAULT_USER_IS_RESTRICTED = true # 新用户默认受限 [openid] ENABLE_OPENID_SIGNUP = false # 关闭 OpenID 注册
极端场景:完全私有时,直接设置 DISABLE_REGISTRATION = true,管理员通过命令行创建用户:
sudo -u gitea gitea admin user create --username user --password pass --email [email protected] --admin
以上方法可根据实际需求灵活组合,实现从完全开放到完全封闭的注册控制。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML 转 Markdown 互为补充。 在线工具,Markdown 转 HTML在线工具,online
将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML 转 Markdown在线工具,online
通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online
将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online