AWS Command Line Interface
사용 설명서

AWS CLI 구성

이 단원에서는 보안 자격 증명, 기본 출력 형식, 기본 AWS 리전을 비롯하여 AWS Command Line Interface (AWS CLI)가 AWS와 상호 작용하는 데 사용하는 설정을 구성하는 방법을 설명합니다.

참고

AWS에서는 모든 수신 요청이 암호화 서명되어야 합니다. AWS CLI에서 이 작업을 수행합니다. "서명"에는 날짜/시간 스탬프가 포함됩니다. 따라서 컴퓨터의 날짜 및 시간이 올바르게 설정되어야 합니다. 잘못 설정되면 서명의 날짜/시간과 AWS 제품에서 인식한 날짜/시간의 차이가 극심하여 AWS에서 요청을 거부합니다.

빠르게 AWS CLI 구성

일반적인 용도에서 aws configure 명령은 AWS CLI 설치를 설정할 수 있는 가장 빠른 방법입니다.

$ aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [None]: us-west-2 Default output format [None]: json

이 명령을 입력하면 AWS CLI에서 액세스 키, 보안 액세스 키, AWS 리전 및 출력 형식 등 네 가지 정보를 묻는 메시지를 표시합니다. 이러한 정보는 다음 단원에 설명되어 있습니다. AWS CLI에서 이 정보를 default라는 프로파일(설정 모음)에 저장합니다. default 프로파일의 정보는 사용할 프로파일을 명시적으로 지정하지 않는 AWS CLI 명령이 실행될 때마다 사용됩니다.

액세스 키 및 비밀 액세스 키

AWS Access Key IDAWS Secret Access Key는 AWS 자격 증명입니다. 이러한 자격 증명은 사용자에게 부여되는 권한을 결정하는 AWS Identity and Access Management(IAM) 사용자 또는 역할과 연결되어 있습니다. IAM 서비스를 통해 사용자를 생성하는 방법에 대한 자습서는 IAM 사용 설명서첫 번째 IAM 관리자 사용자 및 그룹 생성을 참조하십시오.

액세스 키는 액세스 키 ID 및 보안 액세스 키로 이루어져 있는데, 이를 사용하여 AWS에 보내는 프로그래밍 방식의 요청에 서명할 수 있습니다. 액세스 키가 없는 경우에는 AWS Management 콘솔에서 액세스 키를 생성할 수 있습니다. AWS 계정 루트 사용자 액세스 키가 필요하지 않은 작업에는 해당 액세스 키를 사용하지 않는 것이 가장 좋습니다. 대신 자신에 대한 액세스 키를 사용하여 새 관리자 IAM 사용자를 생성하십시오.

보안 액세스 키는 액세스 키를 생성하는 시점에만 보고 다운로드할 수 있습니다. 나중에 복구할 수 없습니다. 하지만 언제든지 새 액세스 키를 생성할 수 있습니다. 필요한 IAM 작업을 수행할 수 있는 권한도 있어야 합니다. 자세한 내용은 IAM 사용 설명서IAM 리소스에 액세스하는 데 필요한 권한을 참조하십시오.

IAM 사용자에 대한 액세스 키를 생성하려면

  1. AWS Management 콘솔에 로그인한 다음 https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  2. 탐색 창에서 사용자를 선택합니다.

  3. 액세스 키를 생성할 사용자의 이름을 선택한 다음 Security credentials(보안 자격 증명) 탭을 선택합니다.

  4. 액세스 키 섹션에서 Create access key(액세스 키 생성)를 선택합니다.

  5. 새 액세스 키 페어를 보려면 표시를 선택합니다. 이 대화 상자를 닫은 후에는 보안 액세스 키에 다시 액세스할 수 없습니다. 자격 증명은 다음과 비슷합니다.

    • 액세스 키 ID: AKIAIOSFODNN7EXAMPLE

    • 보안 액세스 키: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

  6. 키 페어 파일을 다운로드하려면 [Download .csv file]을 선택합니다. 안전한 위치에 키를 저장합니다. 이 대화 상자를 닫은 후에는 보안 액세스 키에 다시 액세스할 수 없습니다.

    AWS 계정을 보호하기 위해 키를 기밀로 유지하고, 이메일로 전송하지 마십시오. AWS 또는 Amazon.com의 이름으로 문의가 온다 할지라도 조직 외부로 키를 공유하지 마십시오. Amazon을 합법적으로 대표하는 사람이라면 결코 보안 키를 요구하지 않을 것입니다.

  7. .csv 파일을 다운로드한 후 닫기를 선택합니다. 액세스 키를 생성하면 키 페어가 기본적으로 활성화되므로 해당 페어를 즉시 사용할 수 있습니다.

관련 주제

리전

Default region name은 기본적으로 요청을 전송할 서버가 있는 AWS 리전을 식별합니다. 이 리전은 일반적으로 가장 가까운 리전이지만 어떤 리전이든 될 수 있습니다. 예를 들어, us-west-2를 입력하여 미국 서부(오레곤)를 사용할 수 있습니다. 개별 명령으로 달리 지정하지 않는 한 이후의 모든 요청이 전송되는 리전입니다.

참고

AWS CLI를 사용하여 명시적으로 또는 기본 리전을 설정하여 AWS 리전을 지정해야 합니다. 사용 가능한 리전 목록은 리전 및 엔드포인트를 참조하십시오. AWS CLI에서 사용하는 리전 표기는 AWS Management 콘솔 URL 및 서비스 엔드포인트에서 사용하는 것과 동일한 이름입니다.

출력 형식

Default output format은 결과의 형식을 지정하는 방법을 지정합니다. 값은 다음 목록에 있는 값 중 하나일 수 있습니다. 출력 형식을 지정하지 않으면 json이 기본값으로 사용됩니다.

  • json: 출력은 JSON 문자열로 형식이 지정됩니다.

  • text: 출력은 여러 행의 탭 구분된 문자열 값으로 형식이 지정됩니다. 이 값은 grep, sed 또는 awk과 같은 텍스트 프로세서에 출력을 전달하려는 경우에 유용합니다.

  • table: 출력은 셀 테두리를 형성하기 위해 +|- 문자를 사용하여 표로 서식 지정됩니다. 일반적으로 읽기는 쉽지만 프로그래밍 방식으로는 유용하지 않은 "인간 친화적" 형식으로 정보를 표시합니다.

여러 프로파일 생성

위 단원에 나와 있는 명령을 사용할 경우 결과는 이름이 default인 단일 프로파일이 됩니다. --profile 옵션을 지정하고 이름을 할당하여 이름으로 참조할 수 있는 추가 구성을 생성할 수 있습니다. 다음 예제에서는 produser라는 프로파일을 생성합니다. 다른 프로파일과는 완전히 다른 계정 및 리전의 자격 증명을 지정할 수 있습니다.

$ aws configure --profile produser AWS Access Key ID [None]: AKIAI44QH8DHBEXAMPLE AWS Secret Access Key [None]: je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY Default region name [None]: us-east-1 Default output format [None]: text

그런 다음 명령을 실행할 때 --profile 옵션을 생략하고 default 프로파일에 저장된 자격 증명 및 설정을 사용할 수 있습니다.

$ aws s3 ls

또는 --profile profilename을 지정하고 해당 이름으로 저장된 자격 증명 및 설정을 사용할 수 있습니다.

$ aws s3 ls --profile produser

설정을 업데이트하려면 aws configure를 다시 실행(업데이트할 프로파일에 따라 --profile 파라미터를 사용하거나 사용하지 않고)하고 새 값을 적절하게 입력합니다. 다음 단원에서는 aws configure에서 생성되는 파일, 추가 설정 및 명명된 프로필에 대해 자세히 설명합니다.

구성 설정 및 우선 순위

AWS CLI는 여러 자격 증명 공급자를 사용하여 AWS 자격 증명을 찾습니다. 각 자격 증명 공급자는 시스템 또는 사용자 환경 변수, 로컬 AWS 구성 파일 또는 명령줄에서 파라미터로 명시적으로 선언된 위치 등 다양한 장소에서 자격 증명을 찾습니다. AWS CLI는 다음 순서로 공급자를 호출하고 사용할 자격 증명 세트를 찾은 경우 중지하여 자격 증명 및 구성 설정을 찾습니다.

  1. 명령줄 옵션 – 명령줄의 파라미터로 --region, --output--profile을 지정할 수 있습니다.

  2. 환경 변수 – 환경 변수 AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEYAWS_SESSION_TOKEN에 값을 저장할 수 있습니다. 변수가 있는 경우 해당 변수가 사용됩니다.

  3. CLI 자격 증명 파일 – 이 파일은 aws configure 명령을 실행할 때 업데이트되는 파일 중 하나입니다. 이 파일은 Linux, macOS, or Unix의 경우 ~/.aws/credentials에, Windows의 경우 C:\Users\USERNAME\.aws\credentials에 있습니다. 이 파일에는 default 프로필 및 모든 명명된 프로필에 대한 자격 증명 세부 정보가 포함되어 있습니다.

  4. CLI 구성 파일 – 이 파일은 aws configure 명령을 실행할 때 업데이트되는 파일 중 또 다른 파일입니다. 이 파일은 Linux, macOS, or Unix의 경우 ~/.aws/config에, Windows의 경우 C:\Users\USERNAME\.aws\config에 있습니다. 이 파일에는 기본 프로필 및 모든 명명된 프로필에 대한 구성 설정이 포함되어 있습니다.

  5. 컨테이너 자격 증명 – IAM 역할을 각각의 Amazon Elastic Container Service (Amazon ECS) 작업 정의와 연결할 수 있습니다. 그러면 작업의 컨테이너에 대해 해당 역할의 임시 자격 증명을 사용할 수 있습니다. 자세한 내용은 Amazon Elastic Container Service Developer Guide작업에 대한 IAM 역할을 참조하십시오.

  6. 인스턴스 프로필 자격 증명 – IAM 역할을 각각의 Amazon EC2(Amazon Elastic Compute Cloud) 인스턴스와 연결할 수 있습니다. 그러면 인스턴스에서 실행되는 코드에 대해 해당 역할의 임시 자격 증명을 사용할 수 있습니다. 자격 증명은 Amazon EC2 메타데이터 서비스를 통해 전달됩니다. 자세한 내용은 Linux 인스턴스용 Amazon EC2 사용 설명서Amazon EC2에 대한 IAM 역할IAM 사용 설명서인스턴스 프로필 사용을 참조하십시오.