허용된 SSH 키 기술 및 최소 길이 제한
ssh-keygen
을 사용하면 사용자가 768비트로만 RSA 키를 생성할 수 있으며, 이는 특정 표준 그룹(예: 미국 NIST)의 권고에서 크게 벗어납니다. GitLab을 배포하는 일부 조직은 내부 보안 정책을 준수하거나 규정 준수를 위해 최소 키 강도를 강제로 설정해야 할 수 있습니다.
마찬가지로, 특정 표준 그룹은 오래된 DSA 대신 RSA, ECDSA, ED25519, ECDSA_SK 또는 ED25519_SK를 사용하는 것을 권장하며, 관리자는 허용된 SSH 키 알고리즘을 제한해야 할 수 있습니다.
GitLab을 사용하면 각 기술의 최소 키 길이를 지정할 뿐만 아니라 허용된 SSH 키 기술을 제한할 수 있습니다:
- 왼쪽 사이드바에서 맨 아래에서 관리 영역(Admin Area)를 선택합니다.
- 설정(Settings) > 일반(General)을 선택합니다.
-
가시성 및 접근 제어(Visibility and access controls)를 확장합니다:
키 유형에 대한 제한이 부과되면 사용자는 요구 사항을 충족하지 못하는 새 SSH 키를 업로드할 수 없습니다. 요구 사항을 충족하지 못하는 기존 키는 비활성화되지만 제거되지는 않으며, 사용자는 해당 키를 사용하여 코드를 가져오거나 푸시할 수 없습니다.
제한된 키의 사용자는 해당 프로필의 SSH 키 섹션에서 아이콘이 표시됩니다:
이 아이콘 위로 마우스를 올리면 해당 키가 제한된 이유를 알 수 있습니다.
기본 설정
기본적으로, GitLab.com 및 Self-managed 설정에서 지원되는 키 유형은 다음과 같습니다: supported key types are:
- RSA SSH 키가 허용됩니다.
- DSA SSH 키가 금지됩니다 (GitLab 11.0부터).
- ECDSA SSH 키가 허용됩니다.
- ED25519 SSH 키가 허용됩니다.
- ECDSA_SK SSH 키가 허용되며 (GitLab 14.8 이상).
- ED25519_SK SSH 키가 허용되며 (GitLab 14.8 이상).
금지된 또는 Compromised 키 차단
- GitLab 15.1에 도입되었습니다.
ssh_banned_key
라는 플래그로 기본으로 활성화됩니다.- GitLab 15.2에서 일반적으로 사용 가능해집니다. 피처 플래그
ssh_banned_key
가 제거되었습니다.
사용자가 GitLab 계정에 새 SSH 키를 추가하려고 시도할 때, 해당 키가 알려진 보안이 침해된 SSH 키 디렉터리과 비교됩니다. 사용자는 이 디렉터리에 있는 키를 어떤 GitLab 계정에도 추가할 수 없습니다. 이 제한은 구성할 수 없습니다. 이 제한은 해당 키 쌍과 관련된 개인 키가 공개적으로 알려져 있고, 해당 키 쌍을 사용하여 계정에 액세스할 수 있기 때문에 존재합니다.
이 제한으로 허용되지 않는 경우, 새 SSH 키 쌍을 생성하여 대신 사용하세요.