AWS EKS ์คํฐ๋ 6์ฃผ์ฐจ - Security
- kkumtree
2023-06-04T06:56:52+09:00
์ด๋ฒ์๋ ๋ณด์์ ์ํ ์ธ์ฆ ๋ฐ ์ธ๊ฐ, ๊ทธ๋ฆฌ๊ณ IRSA๋ฅผ ์ค์ฌ์ผ๋ก EKS์ ๋ณด์์ ๋ํด ํ์ตํด๋ณด์์ต๋๋ค.
kops ์คํฐ๋ ๋์๋ ์ ๋ชฐ๋๋๋ฐ, RBAC ๋ฟ๋ง ์๋๋ผ ๋ณต๊ธฐํ๋ค๋ณด๋…
- [4-1] projected Volume
- [4-2] AWS Load Balancer Controller IRSA ๋ฐ LB Pod mutating
์์ ๋ ๊ฐ์ง๊ฐ ์ค์ํ ํํธ๋ฅผ ์ฐจ์งํ๊ณ ์์์์ ์ ์ ์์์ต๋๋ค.
Network(2์ฃผ์ฐจ)๊ฐ ๋งค๋ฒ ๋ญ๊ฐ ์ผ๋ถ๊ฐ ์๋ฆฌ์กํ์๋ค๋ฉด
Security๋ ๋ณต๊ธฐํ๋ค๊ฐ ์ด๋ก ์ ์ผ๋ก๋ ๊ฐ๋จ(๊ณผ์ฐ?)ํด๋ณด์ฌ๋
์ค์ ๊ตฌ๋๋ฐฉ์ ์ดํด ์์ฒด๊ฐ ์ด๋ฐ์ ์๋์, ์ฌํ ๋จ์ง ๊ฑธ๋ฆฐ ๋์ ๋ ์ด๋ ค์ ๋ ๊ฒ ๊ฐ์ต๋๋ค.
๊ทธ ์ธ
- myeks-bastion-2์ ์ ์ ์, ํจ๊ป ์งํํ ๋๋
ssh {Public IP}๋ก ์ ์ ์๋๋ ๊ฑธ ๋ดค๋๋ฐ ์ ์ ํผ์ ํ ๋ ์ ์์ด ๋์ง์์์ต๋๋ค.- Amazon Linux์์๋ ssh ec2-user@{Public IP}๋ก ์ ์ํด์ผํจ
(ํ์ํ ๊ฒฝ์ฐ sshํค๋ ํฌํจ) - AWS Public AMI์์ ์ ๊ณต๋๋ Ubuntu AMI์ ๊ฒฝ์ฐ,
ubuntu@{Public IP}๋ก ์ ์๊ฐ๋ฅ - ์ถ์ : ๊ณต์ ๋ ๋จธ์ ์ ๋ค๋ฅธ ์ค์ ์ด ์ด์๊ฐ ๋๋ ๊ฒ์ผ๋ก ์ถ์ ๋ฉ๋๋ค.

- Amazon Linux์์๋ ssh ec2-user@{Public IP}๋ก ์ ์ํด์ผํจ
- IAM User(testuser)๋ ์น์ฝ์์์ ์ญ์ ํ๋ ๊ฒ์ด ํธ๋ฆฌํฉ๋๋ค.
- ์๋๋ฉด, ์๋์ฒ๋ผ detach ํ๋ค๋ ๋๋์ผ๋ก ์์ฐจ์ ์คํํฉ๋๋ค.
- list-attached-role-policies && detach-role-policy
- list-access-keys && delete-access-key
- delete-user

- ์๋๋ฉด, ์๋์ฒ๋ผ detach ํ๋ค๋ ๋๋์ผ๋ก ์์ฐจ์ ์คํํฉ๋๋ค.
- CLI๋ก IAM Trust Relationship ์กฐํ
- ์น ์ฝ์์ ๊ตณ์ด ๋ค์ด๊ฐ์ผํ๋ ํ๊ณ , ๋ฌธ๋ ํธ๊ธฐ์ฌ์ ์๋ํ๋ค๊ฐ ์๊ฐ์ด ๋ ์๊ฐ์ต๋๋ค.
- ๊ฒฐ๋ก : ํ๋์ฝ์ดํ ํ์ฑ..
jq -r '.[].status.roleARN' | rev | cut -d '/' -f1 | rev- chatGPT์๊ฒ ์๋์ ๊ฐ์ด ๊ต์ ๋ฐ์์ง๋ง, ํํ์น ์์..
jq -r '.[].status.roleARN' | grep -oE '[^/]+$'

1. ์ค์ต ํ๊ฒฝ ๋ฐฐํฌ
- ๋ชจ์๊ณต๊ฒฉ(?) ํ ์คํธ๋ฅผ ์ํด 2๊ฐ์ bastion ์๋ฒ๊ฐ ๊ตฌ์ฑ๋ ํ๊ฒฝ ๋ฐฐํฌ
- p8s ๋ฐ grafana์ ๊ฒฝ์ฐ, ์ ํ์ ์ผ๋ก ๋ฐฐํฌํด๋ ๋์ ๊ธฐ์ ์๋ต
curl -O https://s3.ap-northeast-2.amazonaws.com/cloudformation.cloudneta.net/K8S/eks-oneclick5.yaml
# ์ดํ ์ค๋ต
# CERT_ARN(ACM)์ ๊ฒฝ์ฐ์๋ /etc/profile์ ํ๊ฒฝ๋ณ์ ์ ์ฅ์ ์ํด๋ฌ์
# ์ธ์
์ด ๋ง๋ฃ๋๋ฉด, ๋ค์ ์ฌ์ค์ ํ์
CERT_ARN=`aws acm list-certificates --query 'CertificateSummaryList[].CertificateArn[]' --output text`
echo $CERT_ARN
2. k8s ์ธ์ฆ/์ธ๊ฐ
.kube/configํ์ผ์ ๊ธฐ๋ฐ- cluster: k8s API ์๋ฒ ์ ์์ ๋ณด
- users: API ์๋ฒ์ ์ ์ํ๊ธฐ ์ํ ์ ์ ์ธ์ฆ์ ๋ณด ๋ชฉ๋ก
- contexts: cluster๋ฐ user๋ฅผ ๋งคํ(์กฐํฉ)ํ ์ ๋ณด

Ubuntu Pro๋ฅผ ์ ์ฉํ๊ณ ์ฌ์ฉํด๋ณด๊ธฐ
- kkumtree
2023-03-17T11:14:50+09:00
ํํ ๋ฆฌ์ผ ๋ ๋ฒจ์ ๊ฒ์๋ฌผ์
๋๋ค.
๋ชจ๋ ์ ๋ณด๋ https://ubuntu.com/pro/tutorial ์ ๊ธฐ์ดํฉ๋๋ค.
๊ธฐํ ์ด๊ธฐ ๊ตฌ์ฑ ์ค ์ด์๋ ์๋๋ ์ฐธ๊ณ ํ์๊ธฐ ๋ฐ๋๋๋ค.
https://canonical-ubuntu-pro-client.readthedocs-hosted.com/en/latest/index.html
๊ณ๊ธฐ
ํ์๊ฐ ๊ฐ์ธ ๋ฐ์คํฌํ์ผ๋ก ์ฌ์ฉํ๋ Ubuntu ๋ฒ์ ์ด 22.10 (Kinetic Kudu), 23.04 (Lunar Lobster) ์ด๊ธฐ์, Ubuntu Pro๋ฅผ ์ ์ฉํด๋ณผ ๊ธฐํ๊ฐ ์์๋ค.
์ด๋ฒ์ ์ง์ธ ๋ถ์ผ๋ก๋ถํฐ ์ ๊ณต๋ฐ์ ์์ธ์ค๋ฉ(XSLAB)์ฌ์ ARM ๊ธฐ๋ฐ Vraptor SQ nano๋ฅผ
ํด๋ฆฐ์ค์นํ๊ณ ๋๋ Ubuntu 20.04.6 LTS (Focal Fossa) ๋ฒ์ ์ด์๊ธฐ์, Ubuntu Pro๋ฅผ ์ ์ฉํด๋ณด๊ธฐ๋ก ํ๋ค.
ํด๋น ์ ํ์ ๋ณด๋ผ๋ชฐ/voramall์์๋ ๋ง๋๋ณผ ์ ์๋ค.
Ubuntu Pro๋?
Ubuntu Pro๋ Ubuntu์ ๊ตฌ๋ ์ํ์ผ๋ก, ๋ณด์ ๋ฑ์ ์ง์ ๊ธฐ๋ฅ์ ์ถ๊ฐํ ์๋น์ค๋ก ์ฌ์ ์ ๋ณด์ ์ทจ์ฝ์ ์ ๋น ๋ฅด๊ฒ ๋ณด์ํด์ ๋ฐ์ดํฐ๋ฅผ ๋ณดํธํ๋๊ฒ ์ฌ๋ฌ๋ชจ๋ก ์ ๊ฐ๋์ง ์์ ๊น ์ถ๊ธฐ์ ์ธ์ ๊น์๋ ํ๋ก๋ํธ์๋ค.