[Trouble Shooting] Mac에서 Windows EC2 RDP 접속을 위한 네트워크 트러블슈팅
AWS Control Tower 환경에서 Private Subnet만 존재할 때 EC2 RDP 접속을 위한 네트워크 구성 과정
목표 (Goal)
Mac 환경에서 Windows 전용 프로그램 구동을 위해 AWS EC2(Windows Server 2022) 사용.
제약 사항: AWS Control Tower로 관리되는 계정이라 기본적으로 모든 서브넷이 Private으로 설정되어 있어 외부 접속이 불가능했음.
최종 아키텍처 (Final Architecture)
접속 성공을 위해 구축한 네트워크 흐름:
1
2
3
4
5
6
7
[Mac (RDP Client)]
⬇️ (Internet)
[AWS VPC (Internet Gateway)]
⬇️ (Route Table: 0.0.0.0/0 -> IGW)
[Public Subnet (172.31.48.0/20)]
⬇️ (Security Group: TCP 3389 Open)
[EC2 Instance (Windows Server)]
주요 구성 단계 (Implementation Steps)
Step 1: 인터넷 게이트웨이(IGW) 생성 및 연결
문제: VPC에 외부로 나가는 문(Gateway)이 없었음.
해결:
Create internet gateway생성.Actions->Attach to VPC를 통해 현재 VPC에 연결.
Step 2: Public Subnet 생성
문제: 기존 서브넷이 모두 Private이라 외부 IP 할당 및 라우팅 불가.
해결:
- CIDR:
172.31.48.0/20(기존 대역과 겹치지 않게 설정). - 설정:
Auto-assign IPv4활성화 (인스턴스 생성 시 Public IP 자동 할당).
Step 3: 라우팅 테이블(Route Table) 구성 (핵심)
문제: 서브넷을 만들었으나 인터넷으로 가는 길(표지판)이 없었음.
해결:
- Route Table 생성 후 Public Subnet과 연결(Association).
- Route 추가:
- Destination:
0.0.0.0/0(모든 트래픽) - Target:
Internet Gateway(Step 1에서 만든 IGW).
- Destination:
Step 4: 보안 그룹(Security Group) 설정
설정: Inbound Rule에 RDP (TCP 3389) 포트 개방.
Source: My IP (보안을 위해 내 IP에서만 접속 허용).
트러블슈팅 로그 (Troubleshooting Log)
과정에서 발생한 에러와 원인 분석:
| 에러 코드 / 현상 | 원인 (Root Cause) | 해결책 (Solution) |
|---|---|---|
| Public IP 미할당 | Private Subnet에 인스턴스를 생성함. | Public Subnet 새로 생성 및 재배포. |
| RDP 0x204 (Timeout) | 1. 보안 그룹: IP 불일치. 2. 네트워크: 라우팅 테이블에 IGW가 없어서 패킷이 밖으로 못 나감. | 1. nc -vz [IP] 3389로 진단.2. 라우팅 테이블에 IGW 연결. |
| RDP 0x104 (Not Found) | PC Name에 IP 주소가 아닌 Instance ID(i-04...)를 입력함. | PC Name에 Public IP(13.124...) 입력. |
| SSM Agent Not Online | 인스턴스가 인터넷과 통신 불가능한 상태. | IGW 연결 및 라우팅 테이블 수정 후 해결. |
핵심 포인트 정리
- IGW는 VPC에 연결해야 함 - 생성만 하면 동작하지 않음.
- 라우팅 테이블이 핵심 - 서브넷이 Public이 되려면 반드시 IGW로 향하는 라우트가 필요함.
- 보안 그룹은 최소 권한 원칙 - RDP 포트는
My IP로 제한하는 것이 안전함. - Public IP는 Auto-assign 설정 확인 - 서브넷 레벨에서 자동 할당 설정이 필요함.
결론
AWS Control Tower 환경에서는 보안을 위해 기본적으로 모든 리소스가 Private으로 구성됨. 외부 접속이 필요한 경우 IGW, Public Subnet, Route Table을 직접 구성해야 하며, 각 구성 요소가 올바르게 연결되어 있는지 확인하는 것이 중요함.
특히 RDP 접속 문제의 대부분은 네트워크 구성(라우팅 테이블, IGW)과 보안 그룹 설정에서 발생하므로, nc -vz [IP] 3389 명령어로 포트 연결 상태를 먼저 진단하는 것을 권장함.
This post is licensed under CC BY 4.0 by the author.