허용된 SSH 키 기술 및 최소 길이 제한

Tier: Free, Premium, Ultimate Offering: Self-managed

ssh-keygen은 사용자가 최소 768비트의 RSA 키를 생성할 수 있도록 허용하는데, 이는 특정 표준 그룹(예: 미국 NIST)의 권장 사항에 비해 훨씬 미흡합니다. GitLab을 배포하는 일부 조직은 내부 보안 정책을 충족하거나 규제 준수를 위해 최소 키 강도를 적용해야 할 필요가 있습니다.

마찬가지로, 특정 표준 그룹에서는 오래된 DSA보다 RSA, ECDSA, ED25519, ECDSA_SK 또는 ED25519_SK를 사용하는 것을 권장하며, 관리자는 허용된 SSH 키 알고리즘을 제한해야 할 필요가 있습니다.

GitLab은 허용된 SSH 키 기술을 제한하고 각 기술에 대해 최소 키 길이를 지정할 수 있도록 합니다:

  1. 왼쪽 사이드바에서 하단의 Admin을 선택합니다.
  2. Settings > General을 선택합니다.
  3. Visibility and access controls를 확장합니다:

    SSH keys restriction **Admin** area settings

어떤 키 유형에 대해 제한이 부과되면, 사용자는 해당 요구 사항을 충족하지 않는 새로운 SSH 키를 업로드할 수 없습니다. 기존 키 중 요구 사항을 충족하지 않는 키는 비활성화되지만 제거되지는 않으며, 사용자는 해당 키를 사용하여 코드를 풀거나 푸시할 수 없습니다.

제한된 키의 사용자에게는 프로필의 SSH 키 섹션에 아이콘이 표시됩니다:

Restricted SSH key icon

이 아이콘에 마우스를 올리면 키가 제한된 이유를 알 수 있습니다.

기본 설정

기본적으로 GitLab.com 및 자체 관리 설정의 지원되는 키 유형은 다음과 같습니다:

  • DSA SSH 키는 금지됩니다.
  • RSA SSH 키는 허용됩니다.
  • ECDSA SSH 키는 허용됩니다.
  • ED25519 SSH 키는 허용됩니다.
  • ECDSA_SK SSH 키는 허용됩니다.
  • ED25519_SK SSH 키는 허용됩니다.

금지되거나 손상된 키 차단

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated
  • GitLab 15.1에서 ssh_banned_key라는 플래그와 함께 도입되었습니다. 기본적으로 활성화되어 있습니다.
  • GitLab 15.2에서 일반적으로 사용 가능. 기능 플래그 ssh_banned_key가 제거되었습니다.

사용자가 새 SSH 키를 추가하기 위해 GitLab 계정에 추가하려고 할 때, 해당 키는 손상된 것으로 알려진 SSH 키 목록과 비교됩니다. 사용자는 이 목록에 있는 키를 어떤 GitLab 계정에도 추가할 수 없습니다. 이 제한은 구성할 수 없습니다. 이 제한은 키 쌍과 연결된 개인 키가 공개적으로 알려져 있으며, 해당 키 쌍을 사용하여 계정에 접근하는 데 사용할 수 있기 때문에 존재합니다.

제한으로 인해 키가 허용되지 않는 경우 새 SSH 키 쌍을 생성하여 대신 사용하십시오.