구성 기본 사항 - AWS Command Line Interface

구성 기본 사항

이 섹션에서는 AWS Command Line Interface(AWS CLI)가 AWS와 상호 작용하는 데 사용하는 기본 설정을 간편하게 구성하는 방법에 대해 설명합니다. 여기에는 보안 자격 증명, 기본 출력 형식 및 기본 AWS 리전이 포함됩니다.

참고

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

aws configure를 통한 빠른 구성

일반적인 용도에서 aws configure 명령은 AWS CLI 설치를 설정할 수 있는 가장 빠른 방법입니다. 이 명령을 입력하면 AWS CLI가 네 가지 정보를 입력하라는 메시지를 표시합니다.

AWS CLI는 이 정보를 default 파일에서 credentials라는 프로파일(설정 모음)에 저장합니다. 기본적으로 이 프로파일의 정보는 사용할 프로파일을 명시적으로 지정하지 않는 AWS CLI 명령이 실행될 때 사용됩니다. credentials 파일에 대한 자세한 내용은 구성 및 자격 증명 파일 설정 섹션을 참조하세요.

다음 예제는 샘플 값을 보여줍니다. 다음 섹션에 설명된 대로 해당 값을 사용자 고유의 값으로 바꿉니다.

$ 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

액세스 키 ID 및 보안 액세스 키

액세스 키는 액세스 키 ID 및 비밀 액세스 키를 사용하며, 이를 통해 AWS에 보내는 프로그래밍 방식의 요청에 서명할 수 있습니다.

키 페어 생성

액세스 키는 액세스 키 ID 및 비밀 액세스 키로 이루어져 있는데, 이를 사용하여 AWS에 보내는 프로그래밍 방식의 요청에 서명할 수 있습니다. 액세스 키가 없는 경우에는 AWS Management Console에서 액세스 키를 생성할 수 있습니다 AWS 계정 루트 사용자 액세스 키가 필요하지 않은 태스크에는 액세스 키를 사용하지 않는 것이 바람직한 모범 사례입니다. 대신 자신에 대한 액세스 키를 사용하여 새 관리자 IAM 사용자를 생성합니다.

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

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

  1. AWS Management Console에 로그인하여 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 파일을 다운로드한 후 닫기를 선택합니다. 액세스 키를 생성하면 키 페어가 기본적으로 활성화되므로 해당 페어를 즉시 사용할 수 있습니다.

관련 주제

.CSV 파일을 통해 키 페어 가져오기

aws configure를 사용하여 키 페어를 입력하는 대신 키 페어를 생성한 후 다운로드한 .csv 파일을 가져올 수 있습니다.

.csv 파일에는 다음 헤더가 포함되어야 합니다.

  • 사용자 이름

  • 액세스 키 ID

  • 보안 액세스 키

참고

초기 키 페어 생성 중에 .csv 파일 다운로드(Download .csv file) 대화 상자를 닫으면 대화 상자를 닫은 후 비밀 액세스 키에 액세스할 수 없습니다. .csv 파일이 있어야 하는 경우 필요한 헤더와 저장된 키 페어 정보를 사용하여 파일을 직접 만들어야 합니다. 키 페어 정보에 액세스할 수 없는 경우 새 키 페어를 생성해야 합니다.

.csv 파일을 가져오려면 다음과 같이 aws configure import 명령을 --csv 옵션과 함께 사용합니다.

$ aws configure import --csv file://credentials.csv

자세한 내용은 aws_configure_import 단원을 참조하세요.

리전(Region)

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

참고

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

출력 형식

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

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

  • yaml - 출력은 YAML 문자열로 형식이 지정됩니다.

  • yaml-stream - 출력은 스트리밍되고 YAML 문자열로 형식이 지정됩니다. 스트리밍을 통해 대용량 데이터 유형을 빠르게 처리할 수 있습니다.

  • text - 출력은 여러 줄의 탭으로 구분된 문자열 값으로 형식이 지정됩니다. 출력을 grep, sed 또는 awk와 같은 텍스트 프로세서로 전달하는 데 사용할 수 있습니다.

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

프로파일

설정 모음을 프로파일이라고 합니다. 기본적으로 AWS CLI는 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 profilename을 지정하고 해당 이름으로 저장된 자격 증명 및 설정을 사용할 수 있습니다.

$ aws s3 ls --profile produser

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

명명된 프로파일에 대한 자세한 내용은 AWS CLI에 사용되는 명명된 프로파일 섹션을 참조하세요.

구성 설정 및 우선 순위

AWS CLI에서는 시스템 또는 사용자 환경 변수, 로컬 AWS 구성 파일 또는 명령줄에서 파라미터로 명시적으로 선언된 위치 등 다양한 장소에 있는 자격 증명 및 구성 설정을 사용합니다. 특정 위치가 다른 위치보다 우선합니다. AWS CLI 자격 증명 및 구성 설정은 다음 순서에 따라 우선적으로 적용됩니다.

  1. 명령줄 옵션 - 다른 위치의 설정을 재정의합니다. 명령줄에서 --region, --output--profile을 파라미터로 지정할 수 있습니다.

  2. 환경 변수 - 시스템의 환경 변수에 값을 저장할 수 있습니다.

  3. CLI 자격 증명 파일 - credentials 명령을 실행하면 configaws configure 파일이 업데이트됩니다. credentials 파일은 ~/.aws/credentials(Linux 또는 macOS) 또는 C:\Users\USERNAME\.aws\credentials(Windows)에 저장됩니다. 이 파일에는 default 프로필 및 모든 명명된 프로필에 대한 자격 증명 세부 정보가 포함되어 있습니다.

  4. CLI 구성 파일 - credentials 명령을 실행하면 configaws configure 파일이 업데이트됩니다. config 파일은 ~/.aws/config(Linux 또는 macOS) 또는 C:\Users\USERNAME\.aws\config(Windows)에 저장됩니다. 이 파일에는 기본 프로필 및 모든 명명된 프로필에 대한 구성 설정이 포함되어 있습니다.

  5. 컨테이너 자격 증명 - IAM 역할을 각 Amazon Elastic Container Service(Amazon ECS) 태스크 정의에 연결할 수 있습니다. 그러면 작업의 컨테이너에 대해 해당 역할의 임시 자격 증명을 사용할 수 있습니다. 자세한 내용은 Amazon Elastic Container Service 개발자 안내서에서 태스크에 대한 IAM 역할을 참조하세요.

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