Help us learn about your current experience with the documentation. Take the survey.
限制允许的 SSH 密钥技术和最小长度
- Tier: Free, Premium, Ultimate
- Offering: GitLab Self-Managed, GitLab Dedicated
ssh-keygen 允许用户创建最少 768 位的 RSA 密钥,这远低于某些标准组织(如美国 NIST)的建议。一些部署 GitLab 的组织需要强制执行最小密钥强度,以满足内部安全政策或法规要求。
同样,某些标准组织推荐使用 RSA、ECDSA、ED25519、ECDSA_SK 或 ED25519_SK,而不是较旧的 DSA,管理员可能需要限制允许的 SSH 密钥算法。
GitLab 允许您限制允许的 SSH 密钥技术,并为每种技术指定最小密钥长度:
- 在左侧边栏底部,选择 管理员。
- 选择 设置 > 常规。
- 展开 可见性和访问控制,为每种密钥类型设置所需的值:
- RSA SSH 密钥。
- DSA SSH 密钥。
- ECDSA SSH 密钥。
- ED25519 SSH 密钥。
- ECDSA_SK SSH 密钥。
- ED25519_SK SSH 密钥。
- 选择 保存更改。
如果对任何密钥类型施加限制,用户无法上传不符合要求的新 SSH 密钥。任何不符合要求的现有密钥将被禁用但不会被删除,用户无法使用它们拉取或推送代码。
如果您有受限密钥,在您的个人资料的 SSH 密钥 部分会显示一个警告图标( )。将鼠标悬停在图标上即可了解该密钥被限制的原因。
默认设置
默认情况下,GitLab.com 和 GitLab 自托管版本对 支持的密钥类型 的设置为:
- 禁止使用 DSA SSH 密钥。
- 允许使用 RSA SSH 密钥。
- 允许使用 ECDSA SSH 密钥。
- 允许使用 ED25519 SSH 密钥。
- 允许使用 ECDSA_SK SSH 密钥。
- 允许使用 ED25519_SK SSH 密钥。
阻止被禁止或泄露的密钥
- Tier: Free, Premium, Ultimate
- Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
当用户尝试向 GitLab 账户 添加新的 SSH 密钥 时,该密钥会与已知泄露的 SSH 密钥列表进行比对。用户无法将列表中的密钥添加到任何 GitLab 账户。此限制无法配置。此限制存在的原因是与密钥对关联的私钥是公开已知的,可用于访问使用该密钥对的账户。
如果您的密钥被此限制禁止,请 生成新的 SSH 密钥对 来替代使用。