AWS VPC
1. VPC & Subnets
VPC (Virtual Private Cloud) là mạng riêng ảo để deploy tài nguyên AWS, phạm vi regional (theo Region).
Subnet là phân vùng mạng bên trong VPC, phạm vi AZ (Availability Zone).
- Public subnet: có thể truy cập từ internet
- Private subnet: không thể truy cập từ internet
- Route Table điều phối traffic giữa các subnet và ra internet
💡 Hình dung VPC như một tòa nhà, subnet là các tầng, Route Table là bảng chỉ đường nội bộ.
2. Internet Gateway (IGW)
- Kết nối VPC với internet
- Gắn ở cấp VPC
- Bắt buộc phải có nếu muốn public subnet giao tiếp với internet (2 chiều)
3. NAT Gateway
- Cho phép instance ở private subnet kết nối ra internet (1 chiều – outbound only)
- Ngăn traffic từ internet vào trực tiếp
- Dùng khi instance cần tải update/patch nhưng không muốn expose ra ngoài
- Managed by AWS – không cần tự quản lý
So sánh NAT Gateway vs NAT Instance (hay ra thi):
| Tiêu chí | NAT Gateway | NAT Instance |
|---|---|---|
| Quản lý | AWS quản lý | Bạn tự quản lý |
| Availability | Cao, tự redundant | Cần tự script failover |
| Bandwidth | Lên đến 100 Gbps | Phụ thuộc instance type |
| Security Group | Không gắn được | Gắn được |
| Bastion Server | Không hỗ trợ | Hỗ trợ |
| Port Forwarding | Không hỗ trợ | Hỗ trợ |
💡 Thi CLF-C02 thường hỏi: cần managed, scalable → chọn NAT Gateway. Cần tùy biến/bastion → NAT Instance.
4. Network ACL (NACL) & Security Group
NACL:
- Hoạt động ở cấp Subnet
- Có cả rule ALLOW và DENY
- Stateless: phải khai báo cả inbound lẫn outbound
- Xử lý rule theo thứ tự số (number order)
- Áp dụng tự động cho tất cả instance trong subnet
Security Group:
- Hoạt động ở cấp EC2 instance / ENI
- Chỉ có rule ALLOW
- Stateful: traffic chiều về tự động được cho phép
- Đánh giá tất cả rule trước khi quyết định
- Phải gán thủ công khi launch instance
💡 Ghi nhớ nhanh: NACL = tường lửa subnet, stateless | Security Group = tường lửa instance, stateful
5. VPC Flow Logs
- Ghi lại thông tin IP traffic đi qua interface
- Áp dụng ở 3 cấp: VPC / Subnet / ENI
- Dùng để monitor và troubleshoot kết nối mạng
- Ghi cả traffic từ AWS managed services: ELB, RDS, ElastiCache, Aurora…
- Output đến: S3 hoặc CloudWatch Logs
6. VPC Peering
- Kết nối trực tiếp 2 VPC qua mạng private (không qua internet)
- Có thể giữa 2 account khác nhau
- Bắt buộc: 2 VPC không được có CIDR trùng nhau
- Non-transitive: A↔B, B↔C không có nghĩa A↔C – phải peering riêng
7. VPC Endpoints
Kết nối đến AWS services qua mạng nội bộ AWS thay vì qua internet → bảo mật hơn, latency thấp hơn.
- Endpoint Gateway: dùng cho S3 và DynamoDB
- Endpoint Interface: dùng cho các service còn lại
8. Site-to-Site VPN & Direct Connect
| Site-to-Site VPN | Direct Connect (DX) | |
|---|---|---|
| Kết nối | On-premises ↔ AWS | On-premises ↔ AWS |
| Đường truyền | Public internet (có mã hóa) | Mạng riêng vật lý |
| Tốc độ setup | Nhanh | Tối thiểu 1 tháng |
| Bảo mật | Mã hóa qua VPN | Private, không qua internet |
| Thành phần | CGW (phía on-prem) + VGW (phía AWS) | Kết nối vật lý chuyên dụng |
💡 Thi hỏi: cần nhanh, tạm thời → VPN. Cần ổn định, băng thông cao, private → Direct Connect.
9. Transit Gateway
- Kết nối hàng nghìn VPC và on-premises network qua một gateway trung tâm
- Thay thế mô hình peering nhiều chiều phức tạp (hub-and-spoke)
- Hỗ trợ routing policy và monitoring traffic tập trung
- Giải pháp khi hạ tầng mạng lớn, phức tạp
Bảng tóm tắt nhanh (ôn thi)
| Thành phần | Chức năng chính | Cấp hoạt động |
|---|---|---|
| IGW | Kết nối VPC ra internet | VPC |
| NAT Gateway | Private subnet → internet (outbound) | Subnet |
| NACL | Firewall stateless | Subnet |
| Security Group | Firewall stateful | Instance/ENI |
| VPC Peering | Kết nối 2 VPC private | VPC-VPC |
| VPC Endpoint | Truy cập AWS service nội bộ | VPC |
| Flow Logs | Ghi log traffic mạng | VPC/Subnet/ENI |
| Site-to-Site VPN | On-premises ↔ AWS qua internet | Hybrid |
| Direct Connect | On-premises ↔ AWS qua đường riêng | Hybrid |
| Transit Gateway | Kết nối nhiều VPC + on-prem | Multi-VPC |