SSH 문제 해결

SSH 키를 사용할 때 다음과 같은 문제가 발생할 수 있습니다.

TLS: server sent certificate containing RSA key larger than 8192 bits

GitLab 16.3 이후부터, Go는 RSA 키를 최대 8192비트로 제한합니다. 키의 길이를 확인하려면:

openssl rsa -in <your-key-file> -text -noout | grep "Key:"

8192비트보다 긴 키를 짧은 키로 대체하세요.

git clone에서 암호 프롬프트

git clone을 실행할 때 git@gitlab.example.com's password:와 같은 암호를 입력하라는 프롬프트가 나타날 수 있습니다. 이것은 SSH 설정에 문제가 있다는 것을 나타냅니다.

  • SSH 키 페어를 올바르게 생성하고 공개 SSH 키를 GitLab 프로필에 추가했는지 확인하세요.
  • ssh-agent를 사용하여 개인 SSH 키를 수동으로 등록해 보세요.
  • ssh -Tv git@example.com를 실행하여 연결을 디버깅해 보세요. example.com을 GitLab URL로 바꿔주세요.
  • 마이크로소프트 윈도우에서 SSH 사용에서 모든 지시 사항을 따랐는지 확인하세요.
  • GitLab SSH 소유권과 권한 확인을 확인해 보세요. 여러 호스트가 있는 경우, 모든 호스트에서 권한이 올바른지 확인하세요.

Could not resolve hostname 오류

연결이 가능한지 확인할 때 다음 오류를 받을 수 있습니다(ssh.md#verify-that-you-can-connect):

ssh: Could not resolve hostname gitlab.example.com: nodename nor servname provided, or not known

이 오류를 받으면 터미널을 재시작한 후 명령을 다시 시도해 보세요.

Key enrollment failed: invalid format 오류

FIDO2 하드웨어 보안 키를 위한 SSH 키 페어를 생성할 때 다음과 같은 오류를 받을 수 있습니다:

Key enrollment failed: invalid format

다음을 시도하여 이 문제를 해결할 수 있습니다:

  • sudo를 사용하여 ssh-keygen 명령을 실행해 보세요.
  • FIDO2 하드웨어 보안 키가 제공된 키 유형을 지원하는지 확인하세요.
  • OpenSSH 버전이 8.2 이상인지 ssh -V를 실행하여 확인하세요.

오류: SSH host keys are not available on this system.

GitLab이 호스트 SSH 키에 액세스할 수 없는 경우, gitlab.example/help/instance_configuration을 방문하면 인스턴스 SSH 지문 아래에서 다음과 같은 오류 메시지가 표시됩니다:

SSH host keys are not available on this system. Please use ssh-keyscan command or contact your GitLab administrator for more information.

이 오류를 해결하려면:

  • Helm 차트(Kubernetes) 배포의 경우, webservice 섹션 아래에서 sshHostKeys.mounttrue로 설정하기 위해 values.yaml을 업데이트하세요.
  • GitLab 자체 설치의 경우, 호스트 키가 있는지 확인하기 위해 /etc/ssh 디렉터리를 확인하세요.