[AWS] 보안 체크 리스트

Kim Hyewon·2026년 1월 19일
post-thumbnail

AWS 인스턴스 생성 시 보안 주의사항들(털리기 싫으면 필독)

오늘 작업하면서 AI 끼고 AWS 인스턴스 새로 파는데, 보안 관련해서 "이건 진짜 지키자" 싶은 것들 정리함.
나중에 까먹고 대충 하다가 사고 치지 말고 미리미리 챙기자!!

1. 절대절대절대 Root 계정 Access Key 만들지 마라

  • 방금 만든 따끈따끈한 그 Root 계정 말하는 거다.
  • AWS에서도 제발 만들지 말라고 사정하는데, 심지어 Root 키를 만든다? 탈취되는 순간 내 AWS 계정은 그냥 해커 놀이터 되는 거임. (과금 폭탄은 덤)
  • Action: Root는 MFA(OTP) 빡세게 걸어두고 봉인해라. 작업은 무조건 권한 쪼개진 계정으로 하는 거다. '최소 권한 원칙' 알지?

2. IAM 계정 생성 vs. SSO 설정 (대세는 SSO다)

  • 아직도 IAM User 만들어서 Access Key 파일 다운받아 쓰나? 요즘 권장 방식은 IAM Identity Center(SSO)임.
  • "진짜 계정"을 하나 파주는 게 IAM이라면, SSO는 "임시 출입증"만 발급해주는 거다.
  • Why?: 로컬에 영구적인 키 파일(credentials)이 안 남는다. 해킹 당할 건덕지 자체가 줄어든다는 소리. 1인 개발이라도 습관 들이자.

3. DB랑 백엔드는 퍼블릭 서브넷에 두는 거 아니다

  • DB를 퍼블릭에 둔다? ㅎㅎ 그냥 "어서오세요" 보안 대문 열어주는 꼴임.
  • 정석(3-Tier): 웹 서버만 퍼블릭에 두고, WAS랑 DB는 프라이빗 서브넷에 꽁꽁 숨겨야 함.
  • 외부에서 접속 필요하면 어떡하냐고? Bastion Host(점프 서버) 하나 뚫어서 들어가거나 VPN 쓰는 게 맞다. 귀찮아도 지킬 건 지키자.

4. 계정 정보, 비밀번호 하드코딩 금지

  • "테스트만 해보고 지울 건데?" ← 이러다가 까먹고 깃허브에 올리는 순간 나락 감.
  • 코드에 설정값 박아 버리는 거 한 번 하면 습관 된다. 절대 금지.
  • Action: .env 파일 써서 dotenv로 불러오거나, AWS Parameter StoreSecrets Manager 써서 우아하게 관리하자.

5. Terraform 쓸 때 .gitignore 안 하면 망함

원격 저장소에 절대 올라가면 안 되는 파일들 있다. 프로젝트 파자마자 .gitignore부터 세팅해라.

  • .terraform/: 바이너리랑 캐시 덩어리들. 굳이 올릴 필요 없음.
  • *.tfstate, *.tfstate.*: (중요) 여기 인프라 상태랑 민감 정보 다 평문으로 들어있음. 이거 털리면 인프라 지도 갖다 바치는 거.
  • infra/terraform.tfvars: 여기에 IP랑 비번 들어갈 수 있음. 주의.

6. 보안 그룹(Security Group) = IP 화이트리스팅

  • 퍼블릭 액세스 Yes로 열어두고 보안 그룹 인바운드를 0.0.0.0/0 (전 세계 허용)으로 둔다? 그냥 "내 DB 공공재입니다" 선언하는 거임.
  • Action: 소스(Source)는 무조건 내 IP (My IP)로 설정해라. CIDR 표기법으로 /32 붙이는 거 잊지 말고 (예: 58.126.xx.xx/32).
  • 내 공인 IP 확인법 (Mac/Linux):
    curl ifconfig.me
    터미널에 ifconfig 쳐서 나오는 건 내부 IP니까 헷갈리지 말 것.
profile
볼일 없는 상태에서 별볼일 있는 블로그로 키우는 중입니다.

0개의 댓글