About/Cloud

[AWS] AWS CLI 자격 증명하기(aws configure 명령어)

김징어 2022. 5. 19. 14:51

AWS CLI에서 다양한 리소스를 다루기 위해서는 자격 증명이 필요합니다.  AWS 계정 혹은 액세스 키를 통하여 자격 증명을 할 수 있는데, 액세스 키를 이용하여 자격 증명을 하는 방법에 대하여 다루어 보겠습니다.

AWS CLI에서 자격 증명 우선순위는 다음과 같습니다.

  • CLI 명령어 옵션
  • 환경 변수
  • CLI 자격 증명 파일 - ~/.aws/credentials
  • CLI 설정 파일 - ~/.aws/config
  • 컨테이너 자격 증명 (ECS의 경우)
  • 인스턴스 프로파일 자격 증명 (EC2)

실습할 내용은 CLI 자격 증명 파일을 이용한 자격증명 입니다.

만약 AWS CLI가 없다면 다음 사이트에서 다운로드 받으시면 됩니다.

https://docs.aws.amazon.com/ko_kr/cli/latest/userguide/getting-started-install.html

 

최신 버전의 AWS CLI 설치 또는 업데이트 - AWS Command Line Interface

설치 관리자의 아무 위치에서나 Cmd+L을 눌러 설치에 대한 디버그 로그를 볼 수 있습니다. 이렇게 하면 로그를 필터링하고 저장할 수 있는 로그 창이 열립니다. 로그 파일도 /var/log/install.log에 자

docs.aws.amazon.com

실습 환경은 다음과 같습니다.

  • Ubuntu 22.04 LTS
  • aws-cli/2.7.0 버전

AWS CLI 자격 증명하기

액세스 키 발급

우선 AWS Management Console에 접속하여 액세스 키를 발급받습니다.

실습에서는 간단하게 root 계정으로 발급을 하였지만, 실무에서는 상황에 맞게 IAM 계정을 생성하여 해당 IAM 계정에 대한 액세스 키를 발급하여야 합니다. (root 계정으로는 모든 동작이 가능하므로 해킹을 당하는 경우 위험합니다.)

  • AWS Management Console -> 보안 자격 증명 접속
  • 액세스 키 선택

  • 새 액세스 키 만들기 버튼 클릭

  • 키 파일 다운로드 클릭 (csv 파일 확인)
  • csv 파일에 다음 두 내용이 담겨져 있습니다.
    • AWSAccessKeyId : 자격증명 주체를 가리키는 ID 값
    • AWSSecretKey : 자격증명 주체가 본인임을 인증하는 Key 값
  • 위의 csv에 저장된 값을 절대로 유출되면 안되는 중요한 값들이므로 신중하게 보관하여야 합니다.

AWS CLI에서 자격 증명

터미널을 열어서 aws cli의 동작을 확인한 후 다음과 같이 명령어를 입력합니다.

$ aws configure 
AWS Access Key ID [None]: <위에서 발급한 Key id>
AWS Secret Access Key [None]: <위에서 발급한 Secret Access Key>
Default region name [None]: 
Default output format [None]:
  • AWS Access Key ID와 AWS Secret Access Key에 위에서 발급한 액세스 키 값을 복사하여 입력합니다.
  • Default region name과 output format은 기본 리전과 기본 출력 포맷으로 지정하지 않아도 됩니다.

~/.aws/credentials 파일에 저장된 값을 확인합니다.

$ cat ~/.aws/credentials
[default]
aws_access_key_id = <위에서 발급한 Key id>
aws_secret_access_key = <위에서 발급한 Secret Access Key>

 

이후 다음 명령어를 통해 자격증명이 활성화 되었는지 확인합니다.

$ aws sts get-caller-identity 명령어는 현재 작업을 호출하는 사용자 혹은 역할에 대한 정보를 반환합니다.

$ aws sts get-caller-identity
{
    "UserId": "138996337336",
    "Account": "138996337336",
    "Arn": "arn:aws:iam::138996337336:root"
}
  • AWS Management Console에 접속하여 위의 결과가 내 계정 id와 같은지 확인합니다.

 

위와 같이 설정하면 AWS CLI를 사용할 때 별다른 자격증명이 필요 없이 사용할 수 있게 됩니다.


감사합니다.