# SSH 密钥管理
SSH 密钥管理功能用于统一管理访问 Git 仓库所需的 SSH 密钥,支持将密钥安全存储在数据库中。
# 功能概览

- 密钥存储: 安全存储 SSH 私钥
- 密钥关联: 将密钥关联到特定仓库
- 密钥测试: 验证密钥是否有效
- 密钥轮换: 支持密钥更新和替换
# 添加 SSH 密钥
# 操作步骤
- 点击左侧导航 "系统设置"
- 进入 "SSH 密钥" 标签
- 点击 "新增密钥" 按钮
- 填写密钥信息
- 保存

# 配置项说明
| 字段 | 说明 | 示例 |
|---|---|---|
| 名称 | 密钥别名,便于识别 | github-deploy-key |
| 类型 | 密钥类型 | RSA / ED25519 |
| 私钥内容 | SSH 私钥全文 | -----BEGIN RSA PRIVATE KEY-----... |
| 说明 | 备注信息 | 用于访问 xxx 仓库 |
# 生成 SSH 密钥
如果还没有 SSH 密钥,可以在服务器上生成:
# RSA 密钥(兼容性好)
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
# ED25519 密钥(推荐,更安全)
ssh-keygen -t ed25519 -C "your_email@example.com"
1
2
3
4
5
2
3
4
5
生成的公钥(.pub 文件)需要添加到 Git 服务(如 GitHub、GitLab)的 Deploy Keys 中。
# 使用 SSH 密钥
# 在仓库配置中选择
- 进入 "仓库管理"
- 编辑目标仓库
- 在 "SSH 密钥" 下拉框中选择已添加的密钥
- 保存
# 密钥生效范围
密钥关联到仓库后,系统会在以下操作中自动使用:
- 克隆仓库
- 拉取代码
- 推送代码
- 同步任务
# 测试 SSH 密钥
添加密钥后,建议进行测试:
- 在密钥列表中点击 "测试" 按钮
- 输入测试仓库地址
- 系统尝试使用该密钥连接
测试成功表示密钥配置正确,可以正常访问仓库。
# 密钥安全
# 安全存储
- 密钥存储在数据库中,不会明文保存在文件系统
- 建议对数据库进行加密或访问控制
# 访问控制
- 只有管理员可以查看和管理密钥
- 密钥内容在界面中脱敏显示
# 最佳实践
- 最小权限原则: 每个密钥只赋予必要的仓库访问权限
- 定期轮换: 定期更换 SSH 密钥
- 使用 Deploy Key: 使用专用的 Deploy Key 而非个人密钥
- 只读密钥: 对于只需拉取的仓库,配置只读 Deploy Key
# 密钥管理
# 查看密钥
密钥列表显示:
- 密钥名称
- 密钥类型
- 关联的仓库数
- 创建时间
# 编辑密钥
点击 "编辑" 可以修改密钥名称和说明,但不建议修改私钥内容。
# 删除密钥
注意
删除密钥前,请确保没有仓库正在使用该密钥,否则相关操作将失败。
# 常见问题
# 密钥格式错误
确保粘贴的是完整的私钥内容,包括:
- 开头:
-----BEGIN RSA PRIVATE KEY-----或-----BEGIN OPENSSH PRIVATE KEY----- - 结尾:
-----END RSA PRIVATE KEY-----或-----END OPENSSH PRIVATE KEY-----
# 权限被拒绝
检查:
- 公钥是否已添加到 Git 服务
- 公钥是否有访问目标仓库的权限
- 密钥类型是否正确
# 连接超时
可能是网络问题,检查:
- 服务器是否能访问 Git 服务
- 防火墙是否允许 SSH 连接(端口 22)