AWS

[AWS] CloudShell 이란

비번변경 2023. 8. 2. 16:42

CloudShell

브라우저 기반의 사전 인증된 Shell로, AWS Management Console에서 사용할 수 있다. CloudShell을 시작하면 Amazon Linux 2 기반의 컴퓨팅 환경이 생성되고 Bash, PowerShell, Z shell 등의 원하는 쉘을 이용해 AWS CLI를 사용할 수 있다. 즉, 별도의 설치 없이 AWS CLI를 수행할 수 있다.

단, CloudShell을 이용하기 위해서는 AWSCloudShellFullAccess와 같은 권한이 필요하다.

 

이 글에서는 간단히 CloudShell에서 제공하는 기능을 살펴보고 직접 사용해보려고 한다.

 

 

기능

CloudShell은 다음과 같은 기능을 지원한다.

 

AWS CLI

AWS 콘솔에 로그인한 자격증명으로 Shell을 시작한다. 

 

Shell / 개발 도구

Bash, PowerShell, Z shell 등 원하는 종류의 Shell을 사용할 수 있다. 또한 Node.js나 Python 같은 몇 가지 주요 언어가 설치되어 있다.

 

저장 공간

추가 비용 없이 각 AWS 리전에 최대 1GB의 영구 스토리지를 사용할 수 있다. 저장 공간은 홈 디렉터리에 해당되며 private 영역이다. 또한 세션이 종료되도 데이터가 유지된다. 관련하여 CloudShell 저장공간에 파일을 업로드하거나 다운로드할 수 있는 기능도 제공한다.

 

 

CloudShell 실행

AWS 콘솔에 로그인한 사용자는 다음과 같은 경로로 CloudShell을 사용할 수 있다.

 

a. 상단의 CloudShell 버튼 클릭

b. 상단 검색 창에서 CloudShell 서비스로 이동

c. 최근에 방문한 서비스에서 선택

d. 왼쪽 하단의 CloudShell 클릭

원하는 경로로 CloudShell을 시작하면, 바로 실행할 수 있는 터미널 환경을 만날 수 있다.

대충 실행 환경은 AWS Linux2 AMI, 2 vCPU, 8GiB MEM, 30GiB /root, 1GiB /home 정도 되는 것 같다. 지금 사용하고 있는 테스트 서버가 t4g.small에 10GiB /root인데…… 리소스 자체는 좀 더 넉넉한 것 같다. 참고로 CloudShell 자체는 무료다!

그리고 sudo 권한도 부여되어 있다.

 

 

AWS cli 사용

현재 콘솔로 로그인한 권한으로 AWS Cli를 사용한다. 별도 추가 설정 없이 사용할 수 있다.

참고로 CLI 버전은 2 버전이다.

 

 

pem 키를 이용한 EC2 접속

이 글에서 접속할 EC2는 pem 키가 필요하다. CloudShell에서 제공하는 파일 업로드 기능을 사용해 서버에 pem 키를 업로드한다.

 

1. 작업 > 파일 업로드

2. 대화 상자에서 업로드할 파일 선택

잠시 기다리면 홈 디렉터리에 파일 이 업로드되었다는 결과 메세지가 나타나고,

서버에 위치한 파일을 확인할 수 있다.

pem는 다른 사용자가 접근할 수 없도록 권한을 400으로 변경해두자.

chmod 400 *.pem

 

3. SSH를 이용한 서버 접속

이상이 없으면 서버에 정상적으로 접근한 모습을 확인할 수 있다.

ssh -i ./YOUR_KEY.pem SERVER_USER@SERVER_IP

 

 

참고 문서

https://docs.aws.amazon.com/cloudshell/latest/userguide/welcome.html