AWS์ ์ ๊ทผํ๋ ๋ฐฉ๋ฒ์ ์ธ ๊ฐ์ง๊ฐ ์์ต๋๋ค.
- AWS Management Console (๋น๋ฐ๋ฒํธ + MFA๋ก ๋ณดํธ๋จ)
- AWS Command Line Interface (CLI): Access Keys๋ก ๋ณดํธ๋จ
- AWS Software Development Kit (SDK) - ์ฝ๋์ฉ: Access Keys๋ก ๋ณดํธ๋จ
Access Keys ๊ด๋ฆฌ
Access Keys๋ AWS ์๋น์ค์ ํ๋ก๊ทธ๋จ ๋ฐฉ์์ผ๋ก ์ ๊ทผํ ์ ์๋๋ก ํด์ฃผ๋ ์ค์ํ ์๊ฒฉ ์ฆ๋ช ์ ๋๋ค. Access Keys๋ AWS Console์ ํตํด ์์ฑ๋๋ฉฐ, ์ฌ์ฉ์๋ค์ ์์ ์ Access Keys๋ฅผ ์ ์คํ๊ฒ ๊ด๋ฆฌํด์ผ ํฉ๋๋ค. Access Keys๋ ๋น๋ฐ๋ฒํธ์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋น๋ฐ์ค๋ฌ์ด ์ ๋ณด์ด๋ฏ๋ก, ์ด๋ฅผ ๋ค๋ฅธ ์ฌ๋๊ณผ ๊ณต์ ํ์ง ๋ง์ธ์.
- Access Key ID: ์ฌ์ฉ์ ์ด๋ฆ(username)๊ณผ ์ ์ฌํ ์ญํ ์ ํฉ๋๋ค.
- Secret Access Key: ๋น๋ฐ๋ฒํธ(password)์ ์ ์ฌํ ์ญํ ์ ํฉ๋๋ค.
์์ (Fake) Access Keys
- Access Key ID: AKIASK4E37PV4983d6C
- Secret Access Key: AZPN3zojWozWCndIjhB0Unh8239a1bzbzO5fqqkZq
Remember: Access Keys๋ ์ ๋ ๋ค๋ฅธ ์ฌ๋๊ณผ ๊ณต์ ํ์ง ๋ง์ธ์.
What’s the AWS CLI?
CLI๋ฅผ ์ฌ์ฉํ๋ฉด AWS ์๋น์ค์ ๊ณต์ฉ API๋ก ์ง์ ์ก์ธ์ค๊ฐ ๊ฐ๋ฅํฉ๋๋ค. CLI๋ฅผ ํตํด ๋ฆฌ์์ค๋ฅผ ๊ด๋ฆฌํ๋ ์คํฌ๋ฆฝํธ๋ฅผ ๊ฐ๋ฐํด ์ผ๋ถ ์์ ์ ์๋ํํ ์ ์์ต๋๋ค.
Command Line Interface - AWS CLI - AWS
aws-shell์ ๋ช ๋ น์ค ์ ธ ํ๋ก๊ทธ๋จ์ผ๋ก์, AWS ๋ช ๋ น์ค ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ ์๋ก์ด ์ฌ์ฉ์์ ๊ณ ๊ธ ์ฌ์ฉ์ ๋ชจ๋์๊ฒ ๋์์ด ๋๋ ํธ์ ๊ธฐ๋ฅ ๋ฐ ์์ฐ์ฑ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ์ฃผ์ ๊ธฐ๋ฅ์ ๋ค์๊ณผ ๊ฐ์ต
aws.amazon.com
AWS CLI๋ ๋ฌด์์ธ๊ฐ์?
- AWS CLI๋ ๋ช ๋ น์ค ์ ธ์์ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํด AWS ์๋น์ค๋ฅผ ์ํธ์์ฉํ ์ ์๋๋ก ํ๋ ๋๊ตฌ์ ๋๋ค.
- AWS ์๋น์ค์ ๊ณต๊ฐ API์ ์ง์ ์ ๊ทผํ ์ ์์ต๋๋ค.
- ๋ฆฌ์์ค๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ํด ์คํฌ๋ฆฝํธ๋ฅผ ๊ฐ๋ฐํ ์ ์์ต๋๋ค.
- ์คํ ์์ค๋ก ์ ๊ณต๋๋ฉฐ, GitHub์์ ํ์ธํ ์ ์์ต๋๋ค
GitHub - aws/aws-cli: Universal Command Line Interface for Amazon Web Services
Universal Command Line Interface for Amazon Web Services - aws/aws-cli
github.com
- AWS Management Console์ ๋์์ผ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค.
What’s the AWS SDK?
SDK๋ ๋ฌด์์ธ๊ฐ์? - SDK ์ค๋ช - AWS
์ํํธ์จ์ด ๊ฐ๋ฐ ํคํธ(SDK)๋ ๊ฐ๋ฐ์๋ฅผ ์ํ ํ๋ซํผ๋ณ ๊ตฌ์ถ ๋๊ตฌ ์ธํธ์ ๋๋ค. ํน์ ํ๋ซํผ, ์ด์ ์ฒด์ ๋๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์์ ์คํ๋๋ ์ฝ๋๋ฅผ ๋ง๋ค๋ ค๋ฉด ๋๋ฒ๊ฑฐ, ์ปดํ์ผ๋ฌ ๋ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๊ฐ
aws.amazon.com
AWS ์๋น์ค๋ API์ ํ๋ก๊ทธ๋๋ฐ์ ์ํ ์ก์ธ์ค๊ฐ ๊ฐ๋ฅํฉ๋๋ค. ํ์ง๋ง SDK๋ ํฐ๋ฏธ๋ ๋ด์์๋ ์ฌ์ฉํ๋ ๊ฒ์ด ์๋๋ผ ์ฝ๋ฉ์ ํตํด ์ ํ๋ฆฌ์ผ์ด์ ๋ด์ ์ฌ๋ ๊ฒ์ ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ๋ด์ ์์ฒด์ ์ผ๋ก AWS SDK๊ฐ ์กด์ฌํฉ๋๋ค.
AWS SDK๋ ๋ฌด์์ธ๊ฐ์?
- AWS Software Development Kit (AWS SDK)๋ ํน์ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ๋ง๋ API(๋ผ์ด๋ธ๋ฌ๋ฆฌ ์งํฉ)๋ฅผ ์ ๊ณตํฉ๋๋ค.
- AWS ์๋น์ค๋ฅผ ํ๋ก๊ทธ๋๋ฐ ๋ฐฉ์์ผ๋ก ์ ๊ทผํ๊ณ ๊ด๋ฆฌํ ์ ์๋๋ก ํฉ๋๋ค.
- ์ ํ๋ฆฌ์ผ์ด์ ๋ด์ ์๋ฒ ๋๋๋์ด ๋์ํฉ๋๋ค.
- ์ง์๋๋ SDK:
- ์ผ๋ฐ SDK: JavaScript, Python, PHP, .NET, Ruby, Java, Go, Node.js, C++
- ๋ชจ๋ฐ์ผ SDK: Android, iOS ๋ฑ
- IoT ๋๋ฐ์ด์ค SDK: Embedded C, Arduino ๋ฑ
์์: AWS CLI๋ AWS SDK for Python์ ๊ธฐ๋ฐ์ผ๋ก ๋ง๋ค์ด์ก์ต๋๋ค.
AWS CLI ์ค์น ๋ฐ ์ค์
AWS CLI ์ค์น
์ต์ ๋ฒ์ ์ AWS CLI ์ค์น ๋๋ ์ ๋ฐ์ดํธ - AWS Command Line Interface
์ด์ ๋ฒ์ ์์ ์ ๋ฐ์ดํธํ๋ ๊ฒฝ์ฐ unzip ๋ช ๋ น์ ์คํํ๋ฉด ๊ธฐ์กด ํ์ผ์ ๋ฎ์ด์ธ์ง ๋ฌป๋ ๋ฉ์์ง๊ฐ ํ์๋ฉ๋๋ค. ์คํฌ๋ฆฝํธ ์๋ํ์ ๊ฐ์ ๊ฒฝ์ฐ์ ์ด๋ฌํ ํ๋กฌํํธ๋ฅผ ๊ฑด๋๋ฐ๋ ค๋ฉด unzip์ ๋ํ -u ์ ๋ฐ์ด
docs.aws.amazon.com
AWS CLI๋ฅผ ์ค์นํ๋ ค๋ฉด AWS์์ ์ ๊ณตํ๋ ๊ฐ์ด๋๋ฅผ ์ฐธ๊ณ ํ์ฌ ์ค์นํ ์ ์์ต๋๋ค. ์ฃผ๋ก GUI Installer๋ฅผ ์ฌ์ฉํ์ฌ ์ค์นํฉ๋๋ค.
์ค์น ํ์ธ
์ค์น ํ ํฐ๋ฏธ๋ ์ฐฝ์์ ๋ค์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ์ฌ ์ค์น๊ฐ ์ ์์ ์ผ๋ก ์๋ฃ๋์๋์ง ํ์ธํฉ๋๋ค.
aws --version
์์ ์ถ๋ ฅ
aws-cli/2.23.2 Python/3.12.6 Darwin/24.2.0 exe/x86_64
AWS CLI ์ค์ต
IAM์์ Access Key ์์ฑ
- AWS ์ฝ์์์ IAM ์๋น์ค๋ฅผ ์ ํํฉ๋๋ค.
- ๋ณด์ ์๊ฒฉ ์ฆ๋ช (Security credentials) ํญ์ผ๋ก ์ด๋ํฉ๋๋ค.
- Access Keys ์น์ ์์ Access Key ๋ง๋ค๊ธฐ(Create Access Key) ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.
- ๋ก์ปฌ ์ฝ๋์ธ์ง ๋๋ AWS ๋ด๋ถ๋ ์ธ๋ถ์์ ์คํ๋๋ ์ ํ๋ฆฌ์ผ์ด์
์ธ์ง์ ๋ฐ๋ผ ์๋์ชฝ์์ ๋ช ๊ฐ์ง ๊ถ์ฅ ์ฌํญ์ ๋ณผ ์ ์์ต๋๋ค.
- ์ง๊ธ์ CLI & ์ก์ธ์ค ํค๋ฅผ ์ฌ์ฉ → ์ค์ ํ๊ทธ ์ค์ ์ ํจ์คํ์ต๋๋ค.
- Access Key ID์ Secret Access Key๊ฐ ์์ฑ๋ฉ๋๋ค. ์ด ์ ๋ณด๋ ์ด ํ์ด์ง์์๋ง Access Key์ Secret Access Key์ ์ ๊ทผํ ์ ์์ต๋๋ค.
AWS CLI ๊ตฌ์ฑ
AWS CLI๋ฅผ ๊ตฌ์ฑํ๋ ค๋ฉด ๋ค์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๊ณ , ์๋ ์ ๋ณด๋ฅผ ์ฐจ๋ก๋๋ก ์ ๋ ฅํฉ๋๋ค.
aws configure
- AWS Access Key ID: ์์ฑ๋ Access Key ID๋ฅผ ์ ๋ ฅํฉ๋๋ค.
- AWS Secret Access Key: ์์ฑ๋ Secret Access Key๋ฅผ ์ ๋ ฅํฉ๋๋ค.
- Default region name: ์ํ๋ ๋ฆฌ์ ์ ์ ๋ ฅํฉ๋๋ค (์: eu-west-1).
- Default output format: ๊ทธ๋ฅ ์ํฐ ํค๋ฅผ ๋๋ฌ ๊ธฐ๋ณธ๊ฐ(json)์ ์ฌ์ฉํฉ๋๋ค.
์์
aws configure
AWS Access Key ID [None]: AKIA6JQ44VCU6PNMWSWB
AWS Secret Access Key [None]: AZPN3zojWozWCndIjhB0Unh8239a1bzbzO5fqqkZq
Default region name [None]: ap-northeast-2
Default output format [None]:
AWS CLI ๊ธฐ๋ณธ ๋ช ๋ น์ด
์ฌ์ฉ์ ๋์ดํ๊ธฐ
๋ชจ๋ ์ฌ์ฉ์๋ฅผ ๋์ดํ๋ ค๋ฉด ๋ค์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ์ธ์
aws iam list-users
์์ ์ถ๋ ฅ
{
"Users": [
{
"Path": "/",
"UserName": "toby",
"UserId": "AIDA6JQ44VCUSKEUKYQRN",
"Arn": "arn:aws:iam::982534367401:user/toby",
"CreateDate": "2025-01-20T06:03:13+00:00"
}
]
}
(END)
- ์ฆ, AWS Management Console๊ณผ AWS CLI๋ ๋น์ทํ ์ข ๋ฅ์ ์ ๋ณด๋ฅผ ์ ๊ณตํฉ๋๋ค. ๋ํ, CLI ๊ถํ์ IAM ์ฝ์์์ ์ป๋ ๊ถํ๊ณผ ์์ ํ ๋์ผํฉ๋๋ค.
์ฌ์ฉ์๋ฅผ ๊ทธ๋ฃน์์ ์ ๊ฑฐํ๊ธฐ
- ํน์ ์ฌ์ฉ์๋ฅผ ํน์ ๊ทธ๋ฃน์์ ์ ๊ฑฐํ๋ ค๋ฉด ๋ค์ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ธ์.
aws iam remove-user-from-group --group-name admins --user-name stephane
์ฌ์ฉ์ ๋ค์ ๊ทธ๋ฃน์ ์ถ๊ฐํ๊ธฐ
- ์ฌ์ฉ์๋ฅผ ๊ทธ๋ฃน์ ๋ค์ ์ถ๊ฐํ๋ ค๋ฉด ๋ค์ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ธ์.
aws iam add-user-to-group --group-name admins --user-name stephane
์ฌ์ฉ ๊ถํ ํ ์คํธ
์ฌ์ฉ์ ๊ถํ์ด ์๋ ์ํ์์ ์์ ์๋
- ์ฌ์ฉ์๊ฐ ๊ทธ๋ฃน์์ ์ ๊ฑฐ๋๋ฉด ๋ช ๋ น์ด ์คํ ์ ๊ถํ ๊ฑฐ๋ถ ๋ฉ์์ง๊ฐ ๋์ต๋๋ค.
aws iam list-users
์ฌ์ฉ์๋ฅผ ๋ค์ ์ถ๊ฐํ ํ ์์
- ์ฌ์ฉ์๋ฅผ ๋ค์ ๊ทธ๋ฃน์ ์ถ๊ฐํ ํ์๋ ์ ์์ ์ผ๋ก ๋ช ๋ น์ด๋ฅผ ์คํํ ์ ์์ต๋๋ค.
์ฐธ๊ณ
- ๊ทธ๋ฃน ์ด๋ฆ๊ณผ ์ฌ์ฉ์ ์ด๋ฆ์ ์ํฉ์ ๋ง๊ฒ ์์ ํ์ธ์.
- ๋ช ๋ น์ด ์คํ ํ ์๋ต์ด JSON ํ์์ผ๋ก ์ถ๋ ฅ๋ฉ๋๋ค. ์ฌ๋์ด ์ฝ๊ธฐ ์ฝ๊ฒ ์ถ๋ ฅํ๋ ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด --output text ๋๋ --output table ์ต์ ์ ์ถ๊ฐํ ์ ์์ต๋๋ค,
aws iam list-users --output table
๋ณด์ ์ฃผ์ ์ฌํญ
Access Keys๋ ๋น๋ฐ๋ฒํธ์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋น๋ฐ์ค๋ฌ์ด ์ ๋ณด์ ๋๋ค. ์ด๋ฅผ ๋ค๋ฅธ ์ฌ๋๊ณผ ๊ณต์ ํ์ง ๋ง์ธ์. Access Keys๊ฐ ์ ์ถ๋ ๊ฒฝ์ฐ, ํด์ปค๊ฐ AWS ๋ฆฌ์์ค์ ์ ๊ทผํ ์ ์์ต๋๋ค. ๋ฐ๋ผ์, Access Keys๋ ์์ ํ๊ฒ ๋ณด๊ดํ๊ณ , ๋ถํ์ํ๊ฒ ๋ ธ์ถ๋์ง ์๋๋ก ์ฃผ์ํด์ผ ํฉ๋๋ค.
Access Keys ๊ด๋ฆฌ ํ
- ์ ๊ธฐ์ ์ธ Access Key ํ์ : ์ฃผ๊ธฐ์ ์ผ๋ก Access Keys๋ฅผ ์ฌ๋ฐ๊ธํ๊ณ , ์ด์ ํค๋ ๋นํ์ฑํํ๊ฑฐ๋ ์ญ์ ํฉ๋๋ค.
- ์ต์ ๊ถํ ์์น: ํ์ํ ์ต์ํ์ ๊ถํ๋ง์ ๋ถ์ฌํ์ฌ ๋ณด์์ ๊ฐํํฉ๋๋ค.
- Access Keys ์ฌ์ฉ ์ ํ: ๊ฐ๋ฅํ ๊ฒฝ์ฐ, IAM ์ญํ (Role)์ ์ฌ์ฉํ์ฌ ์์ ์๊ฒฉ ์ฆ๋ช ์ ํ์ฉํฉ๋๋ค.
- ๋ชจ๋ํฐ๋ง ๋ฐ ๋ก๊น : Access Keys ์ฌ์ฉ์ ๋ชจ๋ํฐ๋งํ๊ณ , ์ด์ ์งํ๊ฐ ๋ฐ๊ฒฌ๋๋ฉด ์ฆ์ ๋์ํฉ๋๋ค.
AWS์ ์ ๊ทผํ๋ ๋ฐฉ๋ฒ์ AWS Management Console, AWS CLI, AWS SDK ์ธ ๊ฐ์ง๊ฐ ์์ต๋๋ค. ๊ฐ ๋ฐฉ๋ฒ์ ๊ณ ์ ์ ๋ณด์ ๋ฉ์ปค๋์ฆ(๋น๋ฐ๋ฒํธ + MFA, Access Keys)์ ํตํด ๋ณดํธ๋๋ฉฐ, ์ฌ์ฉ์์ ๊ทธ๋ฃน์ ๋ณด์์ ๊ฐํํ๋ ๋ฐ ์ค์ํ ์ญํ ์ ํฉ๋๋ค. ํนํ, Access Keys๋ ๋น๋ฐ๋ฒํธ์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋น๋ฐ์ค๋ฌ์ด ์ ๋ณด์ด๋ฏ๋ก ์ฒ ์ ํ๊ฒ ๊ด๋ฆฌํด์ผ ํฉ๋๋ค.
AWS CLI๋ฅผ ํตํด ๋ช ๋ น์ค์์ AWS ์๋น์ค๋ฅผ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ ์ ์์ผ๋ฉฐ, AWS SDK๋ฅผ ํ์ฉํ์ฌ ํ๋ก๊ทธ๋๋ฐ ๋ฐฉ์์ผ๋ก AWS ๋ฆฌ์์ค๋ฅผ ์ ์ดํ ์ ์์ต๋๋ค. ๋ณด์ ๊ฐํ๋ฅผ ์ํด ๋น๋ฐ๋ฒํธ ์ ์ฑ ๊ณผ MFA ์ค์ ์ ์ ์ ํ ๊ตฌ์ฑํ๊ณ , Access Keys๋ฅผ ์์ ํ๊ฒ ๊ด๋ฆฌํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
์ฐธ๊ณ ์๋ฃ
- AWS CLI ๊ณต์ ๋ฌธ์: AWS Command Line Interface
- AWS IAM ์ฌ์ฉ์ ๋ฐ ๊ทธ๋ฃน ๊ฐ์ด๋: IAM User Guide
- AWS IAM ์ ์ฑ ๊ฐ์ด๋: IAM Policies
- AWS ๊ณต์ ๋ฌธ์ - IAM Access Keys: Managing Access Keys
- AWS ๊ณต์ ๋ฌธ์ - AWS CLI: AWS CLI Documentation
- AWS ๊ณต์ ๋ฌธ์ - AWS SDK: AWS SDKs
'โ๏ธ Cloud Native > ๐ณ๏ธ AWS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[AWS] Amazon EC2 ์ธ์คํด์ค ์ ํ (0) | 2025.01.23 |
---|---|
[AWS] AWS Service์ ๋ํ IAM Role & IAM ๋ณด์๋๊ตฌ (0) | 2025.01.22 |
[AWS] IAM ์ ์ฑ : ์ฌ์ฉ์ ๋ณดํธ๋ฅผ ์ํ ๋น๋ฐ๋ฒํธ ์ ์ฑ ๊ณผ MFA ์ค์ (0) | 2025.01.21 |
[AWS] AWS Region ์ ํ ๊ฐ์ด๋ (0) | 2025.01.19 |
[AWS] AWS ์ดํดํ๊ธฐ: IP ์ฃผ์์ VPC ๊ด๋ฆฌ (0) | 2025.01.17 |