Linux上保护GitLab的实用方案
一 基础防护清单
二 系统与网络加固
三 数据安全与代码治理
四 备份恢复与应急响应
五 快速检查清单与常用命令
| 检查项 | 关键动作 | 常用命令/路径 |
|---|---|---|
| 端口与防火墙 | 仅放行 80/443 | firewalld/iptables;ss -tulpen |
| HTTPS/TLS | 部署有效证书并自动续期 | /etc/gitlab/gitlab.rb: external_url “https://…”;Let’s Encrypt |
| SSH 加固 | 仅密钥登录、禁用口令 | /etc/ssh/sshd_config: PasswordAuthentication no, PermitRootLogin no |
| 2FA 与 RBAC | 全员 2FA、最小权限 | GitLab 管理后台;项目/组角色分配 |
| 备份与恢复 | 定期备份、可验证恢复 | /opt/gitlab/bin/gitlab-backup create;gitlab-rake gitlab:backup:restore |
| 日志与审计 | 集中日志、审计关键调用 | /var/log/gitlab/;auditd、logrotate |
| 系统与内核 | 最小服务、内核加固 | systemctl disable <无用服务>;/etc/sysctl.conf |
| 升级与重配置 | 按路径升级、执行 reconfigure | yum/apt 升级;gitlab-ctl reconfigure;gitlab-ctl restart |