SSH 연결을 위한 설정 단계AWS CodeCommit윈도우의 리포지토리 - AWS CodeCommit

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

SSH 연결을 위한 설정 단계AWS CodeCommit윈도우의 리포지토리

연결하기 전에AWS CodeCommit처음 몇 가지 초기 구성 단계를 완료해야 합니다. 컴퓨터를 설정한 후AWS프로필을 사용하면 CodeCommit 리포지토리에 연결하고 해당 리포지토리를 컴퓨터에 복제 (로컬 리포지토리 생성) 할 수 있습니다. Git을 처음 사용하는 경우, Git에 대한 자세한 내용은 어디에서 확인할 수 있나요?의 정보를 검토하는 것이 좋습니다.

1단계: CodeCommit 초기 구성

Amazon Web Services 계정을 설정하고 IAM 사용자를 생성하며 CodeCommit 에 대한 액세스를 구성합니다.

CodeCommit 에 액세스할 IAM 사용자를 생성 및 구성하려면
  1. 로 이동하여 Amazon Web Services 계정을 생성합니다.http://aws.amazon.com및 선택가입.

  2. Amazon Web Services 계정에서 IAM 사용자를 생성하거나 기존 사용자를 사용합니다. 액세스 키 ID가 있고 해당 IAM 사용자와 연결된 보안 액세스 키가 있는지 확인합니다. 자세한 내용은 단원을 참조하십시오.Amazon Web Services 계정에서 IAM 사용자 생성.

    참고

    CodeCommit 필요AWS Key Management Service. 기존 IAM 사용자를 사용하는 경우 해당 사용자에게 명시적으로 거부하는 정책이 연결되어 있지 않은지 확인하십시오.AWS KMS코드커밋에 필요한 작업입니다. 자세한 정보는 AWS KMS및 암호화을 참조하십시오.

  3. AWS Management Console에 로그인하여 https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  4. IAM 콘솔의 탐색 창에서사용자를 선택한 후 CodeCommit 액세스에 대해 구성할 IAM 사용자를 선택합니다.

  5. 권한 탭에서 Add Permissions(권한 추가)를 선택합니다.

  6. Grant permissions(권한 부여)에서 Attach existing policies directly(기존 정책 직접 연결)를 선택합니다.

  7. 정책 목록에서 다음 명령을 실행합니다.AWSCodeCommitPowerUser또는 CodeCommit 액세스에 대한 다른 관리형 정책 자세한 정보는 CodeCommit의 AWS 관리형 정책을 참조하십시오.

    연결할 정책을 선택한 후 를 선택합니다.다음: 검토를 눌러 IAM 사용자에 연결할 정책 목록을 검토합니다. 목록이 올바르면 Add permissions(권한 추가)를 선택합니다.

    CodeCommit 관리형 정책과 리포지토리에 대한 액세스를 다른 그룹 및 사용자와 공유하는 방법에 대한 자세한 내용은 단원을 참조하십시오.리포지토리 공유AWS CodeCommit에 대한 인증 및 액세스 제어.

참고

사용하고자 하는 경우AWS CLI코드 커밋을 사용하여 명령을 설치하십시오.AWS CLI. 자세한 정보는 명령줄 참조을 참조하십시오.

2단계: Git 설치

CodeCommit 리포지토리의 파일, 커밋 및 기타 정보를 사용하려면 로컬 시스템에 Git를 설치해야 합니다. CodeCommit 버전은 1.7.9 이상을 지원합니다. Git 버전 2.28은 초기 커밋에 대한 브랜치 이름 구성을 지원합니다. 최신 버전의 Git를 사용하는 것이 좋습니다.

Git 설치를 위해서는 Git 다운로드와 같은 웹 사이트를 권장합니다.

참고

Git은 계속 개선되며 정기적으로 업데이트되는 플랫폼입니다. 기능 변경에 따라 CodeCommit 작동 방식이 달라지는 경우가 있습니다. Git 및 CodeCommit 및 의 특정 버전에서 문제가 발생할 경우 단원의 내용을 검토하십시오.문제 해결.

설치한 Git 버전에 Git Bash와 같은 Bash 에뮬레이터가 포함되지 않다면 에뮬레이터를 설치합니다. SSH 연결을 구성할 때 Windows 명령줄 대신 이 에뮬레이터를 사용합니다.

단계 3: Git 및 CodeCommit 퍼블릭 및 프라이빗 키 설정

Git 및 CodeCommit 에 대한 퍼블릭 및 프라이빗 키를 설정하려면Windows의 경우
  1. Bash 에뮬레이터를 엽니다.

    참고

    관리자 권한을 사용하여 에뮬레이터를 실행해야 할 수 있습니다.

    에뮬레이터에서 ssh-keygen 명령을 실행하고 지침에 따라 파일을 프로필의 .ssh 디렉터리에 저장합니다.

    예:

    $ ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/drive/Users/user-name/.ssh/id_rsa): Type a file name here, for example /c/Users/user-name/.ssh/codecommit_rsa Enter passphrase (empty for no passphrase): <Type a passphrase, and then press Enter> Enter same passphrase again: <Type the passphrase again, and then press Enter> Your identification has been saved in drive/Users/user-name/.ssh/codecommit_rsa. Your public key has been saved in drive/Users/user-name/.ssh/codecommit_rsa.pub. The key fingerprint is: 45:63:d5:99:0e:99:73:50:5e:d4:b3:2d:86:4a:2c:14 user-name@client-name The key's randomart image is: +--[ RSA 2048]----+ | E.+.o*.++| | .o .=.=o.| | . .. *. +| | ..o . +..| | So . . . | | . | | | | | | | +-----------------+

    다음이 생성됩니다.

    • codecommit_rsa 파일: 프라이빗 키 파일입니다.

    • codecommit_rsa.pub 파일: 퍼블릭 키 파일입니다.

    작은 정보

    기본적으로ssh-keygen2048비트 키를 생성합니다. -t 및 -b 매개 변수를 사용하여 키의 유형과 길이를 지정할 수 있습니다. rsa 형식으로 4096비트 키를 사용하려면 다음 매개 변수를 사용하여 명령을 실행하여 이 키를 지정합니다.

    ssh-keygen -t rsa -b 4096

    SSH 키에 필요한 형식 및 길이에 대한 자세한 내용은 단원을 참조하십시오.IAM과 CodeCommit을 함께 사용.

  2. 다음 명령을 실행하여 퍼블릭 키 파일(codecommit_rsa.pub)의 값을 표시합니다.

    cd .ssh notepad codecommit_rsa.pub

    파일 콘텐츠를 복사한 다음 메모장을 저장하지 않고 닫습니다. 파일 콘텐츠는 다음과 비슷합니다.

    ssh-rsa EXAMPLE-AfICCQD6m7oRw0uXOjANBgkqhkiG9w0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJB gNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb2 5zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wHhc NMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAw DgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDAS=EXAMPLE user-name@computer-name
  3. AWS Management Console에 로그인하여 https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

    참고

    에서 CodeCommit 자격 증명을 직접 보고 관리할 수 있습니다.내 보안 자격 증명. 자세한 정보는 자격 증명 보기 및 관리을 참조하십시오.

  4. IAM 콘솔의 탐색 창에서사용자사용자 목록에서 IAM 사용자를 선택합니다.

  5. 사용자 세부 정보 페이지에서 Security Credentials(보안 자격 증명) 탭을 선택한 다음 Upload SSH public key(SSH 퍼블릭 키 업로드)를 선택합니다.

  6. SSH 퍼블릭 키의 콘텐츠를 필드에 붙여넣은 후 Upload SSH public key(SSH 퍼블릭 키 업로드)를 선택합니다.

  7. SSH Key ID(SSH 키 ID)(예: APKAEIBAERJR2EXAMPLE)에 정보를 복사하거나 저장합니다.

    
            IAM 콘솔의 SSH 키 ID
    참고

    SSH 키 ID를 두 개 이상 업로드한 경우, 키가 업로드 날짜가 아니라 키 ID를 기준으로 영문자순으로 나열됩니다. 올바른 업로드 날짜와 연결된 키 ID를 복사했는지 확인하십시오.

  8. Bash 에뮬레이터에서 다음 명령을 실행하여 ~/.ssh 디렉터리에서 config 파일을 생성하거나 이미 있는 경우 편집합니다.

    notepad ~/.ssh/config
  9. 파일에 다음 행을 추가합니다. 여기서 User 값은 앞서 복사한 SSH 키 ID이고 IdentityFile은 프라이빗 키 파일의 경로 및 이름입니다.

    Host git-codecommit.*.amazonaws.com User APKAEIBAERJR2EXAMPLE IdentityFile ~/.ssh/codecommit_rsa
    참고

    프라이빗 키 파일에 codecommit_rsa 이외의 이름을 지정한 경우, 여기서 해당 이름을 사용해야 합니다.

    여러 Amazon Web Services 계정의 리포지토리에 대한 SSH 액세스를 설정할 수 있습니다. 자세한 내용은 단원을 참조하십시오.에 대한 SSH 연결 문제 해결AWS CodeCommit.

    파일을 config 파일(config.txt가 아님)로 저장하고 메모장을 닫습니다.

    중요

    파일 이름은 파일 확장명 없이 config여야 합니다. 그렇지 않으면 SSH 연결이 실패합니다.

  10. 다음 명령을 실행하여 SSH 구성을 테스트합니다.

    ssh git-codecommit.us-east-2.amazonaws.com

    git-codecommit.us-east-2.amazonaws.com이 알려진 호스트 파일에 아직 포함되어 있지 않으므로 연결을 확인하라는 메시지가 표시됩니다. CodeCommit 서버 지문이 확인 과정에서 표시됩니다 (a9:6d:03:ed:08:42:21:be:06:e1:e0:2a:d1:75:31:5eMD5의 경우 또는3lBlW2g5xn/NA2Ck6dyeJIrQOWvn7n8UEs56fG6ZIzQSHA256 용).

    참고

    CodeCommit 서버 지문은 고유합니다.AWS 리전. 에 대한 서버 지문을 보려면AWS 리전참조할 섹션에 대한 서버 핑거프린트CodeCommit.

    연결을 확인한 후 서버를 알려진 호스트 파일에 추가했다는 확인 메시지와 연결이 성공했다는 메시지가 표시되어야 합니다. 성공 메시지가 표시되지 않는 경우 를 저장했는지 다시 한 번 확인하십시오.configCodeCommit에 액세스하도록 구성한 IAM 사용자의 ~/.ssh 디렉터리에 있는 파일은config파일에 파일 확장자가 없으며 (예: config.txt 이름을 지정하면 안 됨) 올바른 개인 키 파일을 지정했습니다 (코드커밋_RSA, 아님코드커밋_RSA.pub).

    문제를 해결하려면 다음을 실행하십시오.ssh명령을 사용하여-v파라미터. 예:

    ssh -v git-codecommit.us-east-2.amazonaws.com

    연결 문제를 해결하는 방법은 에 대한 SSH 연결 문제 해결AWS CodeCommit 단원을 참조하십시오.

4단계: CodeCommit 콘솔에 Connect 리포지토리를 복제합니다.

관리자가 CodeCommit 리포지토리에 대한 이름과 연결 세부 정보를 이미 전송한 경우 이 단계를 건너뛰고 리포지토리를 복제할 수 있습니다. 직접.

CodeCommit 리포지토리에 연결하려면
  1. 에서 CodeCommit 콘솔을 엽니다.https://console.aws.amazon.com/codesuite/codecommit/home.

  2. 리전 선택기에서AWS 리전저장소가 생성된 위치입니다. 리포지토리는AWS 리전. 자세한 정보는 지역 및 Git 연결 엔드포인트을 참조하십시오.

  3. 목록에서 연결하려는 리포지토리를 찾아서 선택합니다. URL 복제를 선택한 다음 리포지토리를 복제하거나 연결할 때 사용할 프로토콜을 선택합니다. 그러면 복제 URL을 복사합니다.

    • 에 포함된 자격 증명 헬퍼를 IAM 사용자와 함께 사용하는 경우 HTTPS URL을 복사합니다.AWS CLI.

    • 로컬 컴퓨터에서 git-remote-codecommit 명령을 사용하는 경우 HTTPS(GRC) URL을 복사합니다.

    • IAM 사용자와 SSH 퍼블릭/프라이빗 key pair 사용하는 경우 SSH URL을 복사합니다.

    참고

    를 볼 경우환영 인사리포지토리 목록이 아닌 페이지 에 연결된 리포지토리가 없습니다.AWS에 있는 계정AWS 리전에서 로그인한 위치 리포지토리를 만들려면 생성:AWS CodeCommit저장소을(를) 참조하거나 Git 시작하기 및 CodeCommit 자습서의 다음 단계를 따르십시오.

  4. Bash 에뮬레이터에서 복사한 SSH URL로 git clone 명령을 실행하여 리포지토리를 복제합니다. 이 명령은 명령을 실행한 디렉터리의 하위 디렉터리에 로컬 리포지토리를 생성합니다. 예를 들어 이라는 리포지토리를 복제하려면MyDemoRepo명명된 로컬 리포지토로my-demo-repo미국 동부 (오하이오) 리전:

    git clone ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo

    또는 명령 프롬프트를 열고 IAM에 업로드한 퍼블릭 키의 URL 및 SSH 키 ID를 사용하여git clone명령. 그러면 명령을 실행한 디렉터리의 하위 디렉터리에 로컬 리포지토리가 생성됩니다. 예를 들어 이라는 리포지토리를 복제하려면MyDemoRepo명명된 로컬 리포지토로my-demo-repo:

    git clone ssh://Your-SSH-Key-ID@git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo

    자세한 내용은 에 연결합니다.CodeCommit리포지토리를 복제하여 리포지토리를 생성합니다.커밋 만들기 섹션을 참조하세요.

다음 단계

사전 필수 단계를 완료했습니다. 단원의 단계를 따르십시오.CodeCommit 시작하기 를 눌러 CodeCommit 사용을 시작합니다.