RDS 포트와 접근 통제 점검

데이터베이스 포트 선택과 실제 접근 통제를 구분해 관리하세요.

설명

엔진 기본 포트 사용 자체가 취약성은 아닙니다. 예를 들어 MySQL·MariaDB·Aurora MySQL은 3306, PostgreSQL·Aurora PostgreSQL은 5432를 기본으로 사용합니다. 다른 포트로 바꿔도 서비스 탐색이나 무단 접근을 막을 수는 없으며, 실제 위험은 네트워크 접근 범위와 인증·권한에 따라 달라집니다.

잠재적 영향

  • 접근 범위가 넓으면 데이터베이스가 불필요한 연결 시도에 노출될 수 있습니다.
  • 포트 변경을 접근 통제로 오인하거나 연결 설정을 함께 바꾸지 않으면 보안 공백이나 서비스 중단이 생길 수 있습니다.

해결 방법

  • 보안 그룹과 서브넷·라우팅으로 필요한 클라이언트만 허용하고 데이터베이스 인증, 최소 권한과 전송 암호화를 적용하세요.
  • 운영 기준상 별도 포트가 필요하면 지원되는 값을 설정하고 클라이언트, 방화벽과 모니터링을 함께 변경하세요. Aurora 포트는 인스턴스가 아니라 클러스터에서 설정합니다. 기존 연결에 미치는 영향을 확인하고 전환을 계획하세요.

예시

Aurora MySQL 클러스터의 포트만 비교하는 부분 예시입니다. 관리자 자격 증명은 안전하게 제공하고 실제 네트워크·보안 그룹 및 클러스터 인스턴스를 별도로 준비해야 합니다.

변경 전

yaml
- name: Aurora 클러스터 포트 설정
  amazon.aws.rds_cluster:
    engine: aurora-mysql
    password: "{{ password }}"
    username: "{{ username }}"
    cluster_id: ansible-test-cluster
    backup_retention_period: 7
    port: 3306

Aurora MySQL 기본 포트 3306을 지정합니다. 기본 포트만으로 데이터베이스가 공개되거나 인증이 약해지는 것은 아닙니다.

변경 후

yaml
- name: Aurora 클러스터 포트 설정
  amazon.aws.rds_cluster:
    engine: aurora-mysql
    password: "{{ password }}"
    username: "{{ username }}"
    cluster_id: ansible-test-cluster
    backup_retention_period: 7
    port: 3307

클러스터 포트를 3307로 변경합니다. 네트워크와 데이터베이스 권한은 그대로이므로 별도 접근 통제와 클라이언트 연결 변경이 필요합니다.

참조