Virtual Private Cloud là gì ?
Amazon Virtual Private Cloud (Amazon VPC) là một trong những loại dịch vụ được chấp nhận fan khởi chạy những tài nguyên AWS trong mạng ảo cô lập theo logic mà fan xác định. Người có toàn quyền kiểm soát môi trường thiên nhiên mạng ảo của tớ, bao gồm tất cả lựa chọn dải địa chỉ IP, tạo những mạng con, thông số kỹ thuật những bảng định tuyến và cổng kết nối mạng. Chúng ta có thể dùng cả IPv4 và IPv6 cho hồ hết những tài nguyên trong đám mây riêng ảo, giúp bảo mật thông tin nghiêm nhặt và truy vấn đơn giản những tài nguyên cũng như ứng dụng.
Là một trong những dịch vụ nền tảng của AWS, Amazon VPC sẽ hỗ trợ fan đơn giản tùy chỉnh thông số kỹ thuật mạng của VPC. Chúng ta có thể tạo một mạng con công khai minh bạch cho những sever web có quyền truy vấn internet. Thương Mại & Dịch Vụ này cũng được chấp nhận fan đặt những khối hệ thống backend, như sever ứng dụng hoặc cơ sở tài liệu, trong mạng con riêng tư không hề có quyền truy vấn internet. Với Amazon VPC, chúng ta cũng có thể tận dụng nhiều lớp bảo mật thông tin, bao gồm tất cả những nhóm bảo mật thông tin và list kiểm soát truy vấn mạng, sẽ giúp đỡ kiểm soát quyền truy vấn vào những phiên bạn dạng Amazon EC2 trong những mạng con.
Những thành phần của VPC
IPv4 and IPv6 address blocks
VPC IP address ranges được khái niệm bằng Classless interdomain routing (CIDR) blocks. Chúng ta có thể thêm primary và secondary CIDR blocks vào VPC, nếu như secondary CIDR block có cùng address range với primary block.
AWS khuyến nghị tận dụng CIDR blocks từ private address ranges được khái niệm trong RFC 1918:
Subnet
Subnet, được hiểu là một trong những sub network (mạng con ảo). Sau khoản thời gian tạo 1 VPC, chúng ta cũng có thể thêm một hoặc nhiều subnet (mạng con) trong những Availability Zone. Khi fan tạo 1 subnet, fan cần chỉ định khối CIDR cho subnet đó. Mỗi subnet phải nằm trọn vẹn trong một Availability Zone và không thể kéo dãn tới những zone khác. Những Availability Zone là những vị trí riêng lẻ được thiết kế để cách ly để tránh bị tác động khi những zone khác gặp vấn đề.
Có 2 loại subnet:
- Public Subnet: là một trong những subnet được định tuyến tới 1 internet gateway. 1 instance trong public subnet rất có thể tiếp xúc với internet trải qua địa chỉ IPv4 (public IPv4 address hoặc Elastic IP address).
- Private Subnet: Ngược với Public Subnet, Private Subnet là một subnet không được định tuyến tới một internet gateway. Người không thể truy vấn vào những instance trên một Private Subnet từ internet.
Route tables
Là bảng định tuyến, bao gồm tất cả một tập hợp những rule (được gọi là route), được tận dụng để xác định lối đi, nơi đến của những gói tin từ mạng con hay gateway.
Internet connectivity
- Internet Gateway: là một thành phần được chấp nhận tiếp xúc giữa VPC và Internet. Nói một kiểu dễ hiểu hơn là một server trong VPC muốn tiếp xúc được với Internet thì cần phải có Internet Gateway.
- NAT Gateway: là một thành phần được chấp nhận server ảo trong mạng private rất có thể kết nối tới Internet hoặc dịch vụ khác của AWS nhưng lại ngăn không cho Internet kết nối đến server đó.
- NAT Instance: là một server ảo được mọi người tiết ra và quản lý và vận hành có công dụng tương tự như NAT Gateway. Chúng ta có thể tìm hiểu thêm sự không giống nhau giữa NAT Gateway và NAT Instance được mô tả cụ thể tại đây
Elastic IP addresses
Là một địa chỉ public IPv4, rất có thể kết nối được từ Internet được tận dụng cho:
- EC2 instance
- AWS elastic network interface (ENI)
- Một vài service khác cần public IP address
Network/subnet security
AWS hỗ trợ hai tính năng mà chúng ta cũng có thể tận dụng để tăng cường bảo mật thông tin trong VPC của fan: Security Group và Network ACLs .
- Security Group kiểm soát lưu lượng vào và ra cho những instance
- Network ACL giúp kiểm soát lưu lượt truy cập vào và ra cho subnet.
Một vài networking services khác
- Virtual Private Networks (VPNs)
- Direct connectivity between VPCs (VPC peering)
- Gateways
- Mirror sessions
Một vài VPC scenarios thường được tận dụng
Scenario 1 – VPC with a single public subnet
tin tức cụ thể: https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Scenario1.html
Scenario 2 – VPC with public and private subnets (NAT)
tin tức cụ thể: https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Scenario2.html
Scenario 3 – VPC with public and private subnets and AWS Site-to-Site VPN access
tin tức cụ thể: https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Scenario3.html
Scenario 4 – VPC with a private subnet only and AWS Site-to-Site VPN access
tin tức cụ thể: https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Scenario4.html
Tạo VPC
Tạo 2 public subnet ở cả 2 availability zone không giống nhau
Tạo subnet lab-larchitect-public-a tại us-east-1a:
Tạo subnet lab-larchitect-public-b tại us-east-1b:
Tạo custom route table
Gán subnet đến route table vừa tạo:
Tạo Internet Gateway
Attach to VPC:
Gán Internet Gateway đến route table:
Tạo Network ACL cho public subnet
Gán ACL đến 2 subnet:
Tạo Sercurity Group
Tạo EC2 instance và gắn SG vừa tạo vào
Cài nginx và kiểm tra thành phẩm với public ip của instance
https://docs.aws.amazon.com/
https://www.bmc.com/blogs/aws-vpc-virtual-private-cloud/