Skip to main content

인스턴스에 대한 SSH 연결 구성

클라이언트가 연결을 설정하는 데 사용할 수 있는 SSH 알고리즘을 구성하여 GitHub Enterprise Server 인스턴스의 보안을 강화할 수 있습니다.

누가 이 기능을 사용할 수 있나요?

Site administrators can configure SSH connections to a GitHub Enterprise Server instance.

인스턴스에 대한 SSH 연결 정보

각 GitHub Enterprise Server 인스턴스는 두 포트를 통해 SSH 연결을 허용합니다. 사이트 관리자는 SSH를 통해 관리 셸에 액세스한 다음, 명령줄 유틸리티를 실행하고 문제를 해결하고 유지 관리를 수행할 수 있습니다. 사용자는 SSH를 통해 연결하여 인스턴스의 리포지토리에서 Git 데이터를 액세스하고 쓸 수 있습니다. 사용자는 인스턴스에 대한 셸 액세스 권한이 없습니다. 자세한 내용은 다음 문서를 참조하세요.

사용자 환경에서 SSH 클라이언트를 수용하기 위해 GitHub Enterprise Server 인스턴스에서 허용하는 연결 유형을 구성할 수 있습니다.

RSA 키를 사용하여 SSH 연결 구성

사용자가 포트 22를 사용하여 SSH를 통해 GitHub Enterprise Server 인스턴스에서 Git 작업을 수행하는 경우 클라이언트는 RSA 키로 인증을 받을 수 있습니다. 클라이언트는 SHA-1 해시 함수를 사용하여 시도에 서명할 수 있습니다. 이 컨텍스트에서 SHA-1 해시 함수는 더 이상 안전하지 않습니다. 자세한 내용은 Wikipedia에서 “SHA-1”을 참조하세요.

기본적으로 다음 조건을 모두 충족하는 SSH 연결은 실패합니다.

  • RSA 키는 2022년 8월 1일 UTC로 자정에 해당하는 컷오프 날짜 후에 GitHub Enterprise Server 인스턴스의 사용자 계정에 추가되었습니다.
  • SSH 클라이언트는 SHA-1 해시 함수를 사용하여 연결 시도에 서명합니다.

컷오프 날짜를 조정할 수 있습니다. 사용자가 컷오프 날짜 전에 RSA 키를 업로드한 경우 키가 유효한 상태로 유지되는 한, 클라이언트는 SHA-1을 사용하여 계속 성공적으로 연결할 수 있습니다. 또는 클라이언트가 SHA-1 해시 함수를 사용하여 연결에 서명하는 경우 RSA 키로 인증된 모든 SSH 연결을 거부할 수 있습니다.

인스턴스에 대해 선택한 설정에 관계없이 클라이언트는 SHA-2 해시 함수로 서명된 모든 RSA 키를 사용하여 계속 연결할 수 있습니다.

SSH 인증 기관을 사용하는 경우 인증서의 valid_after 날짜가 컷오프 날짜 이후이면 연결이 실패합니다. 자세한 내용은 SSH 인증 기관 정보을(를) 참조하세요.

자세한 내용은 the GitHub Blog를 참조하세요.

  1. 에 SSH합니다. 인스턴스가 여러 노드로 구성된 경우(예: 고가용성 또는 지역 복제가 구성된 경우) 주 노드에 대한 SSH를 수행합니다. 클러스터를 사용하는 경우 임의 노드에 대해 SSH를 수행할 수 있습니다. HOSTNAME을 인스턴스의 호스트 이름 또는 노드의 호스트 이름이나 IP 주소로 바꿉니다. 자세한 내용은 "관리 셸(SSH)에 액세스"을(를) 참조하세요.

    Shell
    ssh -p 122 admin@HOSTNAME
    
  2. ghe-find-insecure-git-operations 유틸리티를 사용하여 안전하지 않은 알고리즘 또는 해시 함수를 사용하는 연결에 대한 인스턴스의 로그를 감사합니다. 자세한 내용은 명령줄 유틸리티을(를) 참조하세요.

  3. 연결이 SHA-1 해시 함수로 서명된 경우 GitHub Enterprise Server 인스턴스이(가) 해당 날짜 이후에 업로드된 RSA 키를 사용하는 클라이언트의 연결을 거부하는 컷오프 날짜를 구성하려면 다음 명령을 입력합니다. RFC-3399-UTC-TIMESTAMP 를 유효한 RFC 3399 UTC 타임스탬프로 대체합니다. 예를 들어 기본값인 2022년 8월 1일은 2022-08-01T00:00:00Z로 표시됩니다. 자세한 내용은 IETF 웹 사이트의 RFC 3339를 참조하세요.

    $ ghe-config app.gitauth.rsa-sha1 RFC-3339-UTC-TIMESTAMP
    
  4. 또는 SHA-1 해시 함수로 서명된 RSA 키를 사용하여 SSH 연결을 완전히 사용하지 않도록 설정하려면 다음 명령을 입력합니다.

    ghe-config app.gitauth.rsa-sha1 false
    
  5. 구성을 적용하려면 다음 명령을 실행합니다.

    Note

    구성을 실행하는 동안 의 서비스가 다시 시작될 수 있으므로 짧은 가동 중지 시간이 발생할 수 있습니다.

    Shell
    ghe-config-apply
    
  6. 구성 실행이 완료될 때까지 기다립니다.