안녕하세요! 오늘은 AWS RDS의 기본적인 보안 설정에 대해서 검토해봐요 :)
대표적인 검토 사항은 1) 퍼블릭 액세스 허용 여부, 2) 보안 그룹, 3) 계정 정보입니다.
두가지 설정 모두 심각한 보안 취약점을 야기시킬 수 있어서 소개시켜드립니다.
1. 퍼블릭 액세스 허용 여부
가끔씩 RDS의 직접적인 접속을 위해서 퍼블릭 액세스를 허용시키는 경우가 있는데 지금 바로 설정 변경하는 것을 추천드립니다.
실제로 RDS의 퍼블릭 액세스를 허용한 적이 있었는데 해커가 RDS 계정의 비밀번호를 바꿔버려서 일시적으로 서비스가 먹통이 된 적이 있었습니다.
다행히도 PoC 중이었어서 심각한 문제로 발전하지는 않았지만 퍼블릭 액세스를 허용하는 것은 전세계 해커들의 공격을 감당하겠다는 뜻이라는 것을 깨달았습니다...
2. 보안 그룹
1.에서 퍼블릭 액세스를 막으셨다면 보안 그룹을 설정해야겠죠?
- 서비스들이 RDS를 활용할 수 있고, 개발자가 직접 RDS에 접속해서 데이터를 살펴볼 수도 있습니다.
이 때, 보안 그룹을 RDS 별로 나눠서 관리하지 않으면 어떤 서비스, bastion 인스턴스에서 RDS로 접근 가능한지 파악하기 어려워지니 유의해주세요!
3. 계정 정보
혹시 마스터 사용자의 아이디, 비밀번호가 기본값인 postgres / postgres 는 아니겠죠?
일단 비밀번호부터 바꿔야 합니다!
아무리 1. 퍼블릭 액세스, 2. 보안 그룹을 통해서 외부에서의 데이터베이스 접속을 막을 수 있다고 하더라도
기본 아이디, 비밀번호를 사용하는 것은 매우 위험한 행동입니다...
비밀번호 변경 방법은 다음 포스팅을 참고하시면 됩니다 ㅎㅎ
마스터 사용자 계정 정보를 안전한 값으로 수정했다면
서비스 별로 계정을 분리하는 것을 추천드립니다.
계정 별 권한을 조절하는 것으로 각 서비스에서 발생할 수 있는 보안 취약점을 최소화 시킬 수 있습니다.
'aws' 카테고리의 다른 글
Amazon ECS Graceful Shutdown - ECS를 안정적으로 사용하려면 SIGNAL은 처리해줘야죠! (0) | 2023.06.23 |
---|---|
AWS 고정 IP 할당 방법 - ingress 네트워크 트래픽편(EIP, NLB, ALB[Global Accelerator]) (2) | 2023.05.28 |
Amazon Dynamodb global secondary index - 기간별 검색 최적화 (0) | 2022.10.22 |
AWS S3의 정적 웹사이트 호스팅을 활용한 간단한 웹앱 배포 방법 (0) | 2022.09.26 |
AWS ELB(ALB)에 고정 IP 할당하기 - global accelerator (2) | 2022.09.24 |