AWS Ephemeral Ports - Overview.
Scope:
- The concept of Ephemeral Ports,
- Typical Flow Sample (Role, Source Ports, Destination Ports & Description),
- Default Ephemeral Port Ranges by OS & Default Range,
- Ephemeral Ports & AWS Security,
- Why Ephemeral Ports Matter for Performance & Security Implications,
- Visual Architecture for Client–Server Communication.
1. The concept of Ephemeral Ports
- Ephemeral ports (also called dynamic ports) are temporary,
short-lived ports automatically
assigned by a client’s operating system
(OS) for outbound
connections.
- Ephemeral ports (also called dynamic ports) are used to establish communication with a server’s well-known or registered port, such as:
- HTTP → port 80
- HTTPS → port 443
- SSH → port 22
- RDS → port 3306 (MySQL)
- 5432 (PostgreSQL)
- When a client initiates a connection, it uses a random high-numbered port from its ephemeral port range as the source port.
2. Typical Flow Sample (Role, Source Ports, Destination Ports & Description)
|
Role |
Source
Port |
Destination
Port |
Description |
|
Client
(EC2, browser, etc.) |
52,345 |
443 |
Ephemeral port assigned by OS |
|
Server
(web, RDS, etc.) |
443 |
52,345 |
Response sent back to ephemeral port |
Key idea:
- The client initiates communication from a random ephemeral port, and the server responds to that port.
3.
Default Ephemeral Port Ranges by OS & Default Range
|
Operating System |
Default Range |
|
Linux (modern) |
32768 – 60999 |
|
Windows (Vista and
later) |
49152 – 65535 |
|
macOS / BSD |
49152 – 65535 |
|
Older Linux (pre-2.6
kernel) |
32768 – 61000 |
NB:
- twtech can verify or modify this
range:
- Linux:
o cat /proc/sys/net/ipv4/ip_local_port_range
- Windows (PowerShell):
o netsh int ipv4 show dynamicport tcp
4. Ephemeral Ports &
AWS Security
- Ephemeral ports play a crucial role when defining Security Group and Network ACL (NACL) rules.
Security Groups
- Stateful
→ automatically allows return traffic, regardless of port
numbers.
- No need to manually open ephemeral ports.
Sample Security Groups:
- Inbound: Allow TCP 443 (HTTPS)
- Outbound: All traffic (default)
- ✅ Responses to ephemeral ports are automatically allowed.
NACLs
- Stateless → requires explicit rules for
both inbound and outbound directions.
- Must account for ephemeral port ranges in return traffic.
Sample NACLs:
- If inbound rule allows TCP 443 (HTTPS) from 0.0.0.0/0,
- Then outbound rule must allow ephemeral port range (e.g., 1024–65535)
- So return traffic can pass through.
|
Direction |
Protocol |
Port
Range |
Source/Destination |
Action |
|
Inbound |
TCP |
443 |
0.0.0.0/0 |
ALLOW |
|
Outbound |
TCP |
1024–65535 |
0.0.0.0/0 |
ALLOW |
- Otherwise, response traffic will be dropped by the NACL.
5. Why Ephemeral Ports Matter for Performance & Security Implications:
- Efficient use of ports for large-scale outbound connections.
- Essential for correctly configuring firewalls, NACLs, and proxies.
- Helps prevent connection failures due to blocked return traffic.
- Important in load-balanced and multi-tier architectures (e.g., EC2 → ALB → RDS).
6. Visual Architecture for Client–Server Communication
No comments:
Post a Comment