AWS CLI 설치& 등록

startingfindmistake·2025년 12월 18일

AWS CLI(Command Line)

리눅스(Linux)

$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
$ unzip awscliv2.zip
$ sudo ./aws/install

$ aws --version
aws-cli/2.7.9 Python/3.9.11 Linux/5.13.0-51-generic exe/x86_64.ubuntu.20 prompt/off

$ rm -f awscliv2.zip # 설치 되었으면 zip은 지워주자. 용량이 여유롭지 못하다

이미 설치되어있고 업데이트만 하려면 다음 명령어를 입력한다.

$ which aws
/usr/local/bin/aws

$ sudo ./aws/install --bin-dir /usr/local/bin --install-dir /usr/local/aws-cli --update

윈도우(Windows)

아래 링크로 awscliv2를 다운로드 받는다.

맥(Mac)

Mac OS는 Homebrew를 사용하면 명령어로 간단히 설치 할 수 있다.

$ brew install awscli

$ which aws
/usr/local/bin/aws

$ aws --version
aws-cli/2.31.37 Python/3.13.9 Darwin/25.1.0 exe/arm64

AWS CLI 사용법

CLI 인증 설정

AWS CLI를 사용하기 위해서는 AWS 계정에서 발급한 IAM 사용자의 AWS Access Key IDAWS Secret Access Key가 필요하다.

즉 AWS 홈페이지에서 계정을 로그인 한 것과 같이, CLI에서도 내 서비스를 이용하기 위해선 IAM에서 등록한 사용자 계정의 아이디와 비밀번호가 필요하다.

유저 액세스 키를 알아냈다면, aws configure를 입력하여 이용하고자 하는 User의 Access, Secret Access Key를 입력해주자.

$ aws configure
AWS Access Key ID [None] : [발급받은 IAM의 Access Key ID]
AWS Secret Access Key [None] : [발급받은 IAM의 Secret Access Key]
Default region name [None] : ap-northeast-2[서울 리전]
Default output format [None] : text / json / table

Default output format(기본 출력 포맷)은 API를 호출한 결과룰 출력할 포맷을 지정.
이 값은 명령어를 실행할 때 --output옵션으로 덮어쓸 수 있다.


CLI 다중 계정 설정

위의 방식은 default 프로파일을 사용한다.
그런데 Cli를 사용하다 보면 default계정 이외에 다중 계정을 이용할 경우가 꽤 발생한다.

CLI에서 만일 여러 AWS 계정과 아이디를 운용하고 싶은 경우 OS에서도 열 계정을 생성할 수 있듯이, --profile 옵션으로 지정해 줄수 있다.

$ aws configure --profile [원하는 이름]

이렇게 프로필을 설정해 다중 계정을 구축한다면,
다른 서비스 CLI 명령어를 사용할 때 --profile 이름을 붙여서 다른 계정의 내역을 출력할 수 있게 된다.

$ aws s3 ls # default user의 s3 내역을 출력한다.

$ aws s3 ls --profile [profile이름] # profile의 s3 내역을 출력한다.
$ aws s3 ls --configure=[profile이름]

하지만 다른 프로필을 사용해야 할때 일일히 옵션을 붙여가며 하는건 비효율적이다.
따라서 aws용 환경변수에 프로필을 등록해 기본 사용자를 변경할 수 있다.

$ export AWS_PROFILE=[profile이름]
 
$ export AWS_PROFILE=default

설정한 인증 정보 보기

위에서 aws configure로 설정한 인증정보는, /home/유저명/.aws 경로에서 config파일과 credentials 파일에 들어있다.

aws configure 정보를 등록하게 된다면, aws라는 폴더에 config와 credentials 파일이 생성되게 된다.
여기에 인증정보가 저장되니, 인스턴스를 재부팅해도 인증정보가 계속 인스턴스에 유지되게 된다.

저장된 credentials 파일은,
Linux 또는 macOS의 경우는 ~/.aws/에,
Windows의 경우는 C:\Users\USERNAME.aws\

config

  • output: aws cli로 부터 응답을 받는 형식 (예: json, text)
  • region: aws region을 의미한다. region 코드표는 aws 서비스 엔드포인트를 참고하여 설정해주면 된다.

credentials

  • aws_access_key_id: 액세스 키 아이디
  • aws_secret_access_key: 시크릿 액세스 키
$ cat ~/.aws/config
[default]
region=us-west-2
output=json

[profile 프로필명]
region=us-east-1
output=text
 
$ cat ~/.aws/credential
[default]
aws_access_key_id="디폴트 엑세스 키 아이디"
aws_secret_access_key="디폴트 시크릿 엑세스 키"

[프로필명]
aws_access_key_id="프로필명 엑세스 키 아이디"
aws_secret_access_key="프로필명 시크릿 엑세스 키"

다른 CLI 명령어

help 명령어를 사용해 명령어들의 사용방법을 커맨드 라인에서 바로 확인할수 있다.

$ aws help
$ aws <COMMAND> help
$ aws <COMMAND> <SUBCOMMAND> help
# 모든 프로파일 리스트	
$ aws configure list-profiles

# 현 사용자 Region 변경하기	
$ aws configure set region us-east-1

# aws iam user 정보 얻어오기	
$ aws iam list-users
$ aws iam list-users --profile <profile-name>

# 현재 사용중인 iam  정보(권한) 얻기 	
$ aws sts get-caller-identity
{
    "UserId": "AIDAYXPEPKAAAH2G44W3T",
    "Account": "600163123454",
    "Arn": "arn:aws:iam::600163123454:user/QA2"
}

환경 변수로 계정 프로필 변경하기

현재 터미널을 창을 닫기 전까지, 해당 프로필로 실행되도록 고정하고 싶을 때 사용한다.

export AWS_PROFILE=변경할프로필이름

내 컴퓨터에 저장된 프로필 목록 보기

aws configure list-profiles

참고문헌
https://inpa.tistory.com/entry/AWS-%F0%9F%93%9A-AWS-CLI-%EC%84%A4%EC%B9%98-%EC%82%AC%EC%9A%A9%EB%B2%95-%EC%89%BD%EA%B3%A0-%EB%B9%A0%EB%A5%B4%EA%B2%8C

profile
도움이되었다면 그것으로 충분 합니다.

0개의 댓글