EC2 인스턴스에서 AWS 조작하는 법
이번 포스트에서는 “EC2 인스턴스에서 AWS 조작하는 법”에 대해서 정리해보았습니다.
EC2 인스턴스 내에서 AWS를 CLI로 관리할 수 있는데요.
AWS 리눅스로 생성한 인스턴스의 경우, AWS-CLI를 제공하지만 ubuntu의 경우 AWS CLI를 제공하지 않습니다.
AWS CLI 란?
AWS CLI(AWS Command Line Interface)는 Amazon Web Services를 명령줄에서 관리할 수 있는 도구로, 다양한 AWS 서비스를 쉽게 제어하고 자동화된 스크립트를 작성할 수 있도록 도와줍니다.
사용자는 이를 통해 인스턴스 관리, S3 버킷 조작, IAM 사용자 생성 등 다양한 작업을 효율적으로 수행할 수 있습니다.
우분투 인스턴스에서도 AWS 서비스들에 접근하기 위해서 AWS-CLI를 설치해보겠습니다.
(다른 AMI로 만든 인스턴스도 명령어는 다를 수 있으나 절차는 유사합니다.)
# 업데이트 패키지 파일
sudo apt-get update
# curl 설치
sudo apt-get install curl
sudo apt-get install unzip
# AWS CLI 다운로드
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
# 압축 해제
unzip awscliv2.zip
# 스크립트 실행
sudo ./aws/install
# 설치 확인
aws --version
EC2에서 AWS 서비스 접근해보기
AWS CLI가 설치되었으니 다음 명령어로 iam의 사용자 리스트를 뽑아보겠습니다.
aws iam list-users
엇! 그런데 aws 자격증명 때문에 이용이 안된다고 합니다.
이 문제는 aws configure
로 credential을 수정할 수 있다고 합니다.
하지만 aws configure
를 동작 시키려면 access key등을 입력해야 하는데요.
access key를 직접 입력하게 되면 해당 인스턴스를 사용하는 다른 유저들도 볼 수 있기 때문에 이를 직접 입력하는 것은 권장되지 않습니다.
<access key> 등을 요구
IAM 계정의 역할 수정
여기서 access key를 입력하지 않고 대신에 EC2의 IAM role를 변경해줌으로써 AWS configure를 조정할 수 있게 만들어보겠습니다.
현재 계정의 EC2 권한 확인
현재 아무런 IAM 역할이 없는 것을 알 수 있습니다.
현재 계정의 EC2 권한 부여
EC2 인스턴스가 사용할 권한을 선택합니다.
예를 들어, S3 버킷에 접근하려면 AmazonS3ReadOnlyAccess
또는 필요한 특정 정책을 선택합니다.
EC2 인스턴스를 관리할 권한을 부여하려면 AmazonEC2FullAccess
와 같은 정책을 선택합니다.
저는 이전에 IAM 읽기 역할을 ‘TestRoleForEC’ 라는 이름으로 생성했기 때문에 해당 역할을 추가하겠습니다.
“IAM 역할 업데이트”를 클릭해줍니다.
이제 IAM 읽기 권한이 생겼으므로 EC2 인스턴스로 가서 aws iam list-users
를 입력하면 해당 명령어가 정상 작동하는 것을 확인 할 수 있습니다.