Hướng dẫn tạo VPN Site to Site (Part 1)
Xin chào các bạn!
Hôm nay để thay đổi không khí một chút, thay cho những bài lý thuyết khô khan, mình thực hiện bài viết này giúp các bạn còn đang bỡ ngỡ với AWS có thể thực hành và áp dụng những gì đã học để có thể thiết lập một kết nối Site to Site VPN trong AWS. Trong thực tế, giải pháp này khá được ưa chuộng do ưu điểm giá thành rẻ, đồng thời rất dễ cấu hình do AWS cung cấp hướng dẫn cho từng loại thiết bị phía đầu Customer. Việc Cust bận tâm duy nhất đó là chuẩn bị đường internet để từ đó tạo đường hầm an toàn bí mật (sử dụng ipsec) kết nối tới AWS thông qua AWS VPN tunnel.
Dưới đây là mô hình tổng quan của bài lab

Ở phạm vi bài lab ngày hôm nay, giả lập rằng chúng ta có Main office và Branch office nằm trong 2 VPC thuộc 2 subnet ở 2 AZ khác nhau nhằm tạo sự khác biệt về mặt network. Trên mỗi VPC thực hiện tạo 2 EC2 cho phép SSH từ bên ngoài, nhưng không có khả năng kết nối và ping lẫn nhau sử dụng địa chỉ Private IP của mỗi EC2. Việc ta cần làm là cấu hình VPN để các địa chỉ Private IP có thể ping được lẫn nhau sử dụng VPN Site-to-Site.

Bài lab chỉ tập trung vào việc cấu hình hand-on mà rất ít giải thích nhằm tránh bị loãng bài viết hưỡng dẫn, do vậy có thể sẽ có một số bạn cảm thấy khó hiểu và không nắm rõ được ý nghĩa ở một số bước làm. Tuy nhiên các kiến thức trong bài lab sử dụng các bạn đều có thể tìm thấy ở link đây, bao gồm rất nhiều bài viết đơn giản và dễ hiểu, dành cả cho những bạn không biết một chút nào về AWS
https://awsstudygroup.wordpress.com/aws-co-ban/
Về bài hướng dẫn thực hành, mình chia làm 4 phần, đó là:
- Cấu hình Network
- Khởi tạo EC2
- Cấu hình Site-to-Site tại Main Office
- Cấu hình Site-to-Site tại Branch Office & Test
Trong phần đầu tiên của bài lab, mình sẽ hướng dẫn các bạn cách cấu hình network khởi tạo môi trường và tạo các EC2 trên từng môi trường trước khi thực hiện cấu hình Site-to-Site ở phần 2 của bài lab này.
Nào chúng ta cùng bắt đầu nhé!
1. Cấu hình Network
- Tạo 2 VPC khác nhau
VPC-MainOffice-TA with CIDR block 10.10.0.0/16
VPC-BranchOffice-TA with CIDR block 10.20.0.0/16


- Trên mỗi VPC, tạo các Public subnet tương ứng nằm trên các AZ khác nhau
Pubsub-MainOffice-TA with CIDR block 10.10.1.0/24
Pubsub-BranchOffice-TA with CIDR block 10.20.1.0/24


Thực hiện Enable Auto-Assign public IP cho Subnet

- Trên mỗi VPC, thực hiện tạo các IGW tương ứng
IGW-MainOffice-TA attached to VPC-MainOffice-TA
IGW-BranchOffice-TA attached to VPC-BranchOffice-TA

- Chỉnh sửa lại Default Route Table cho từng VPC, trỏ tất cả traffice của Public subnet đi qua IGW
Names: RT-MainOffice-TA; Routes: Local,0.0.0.0/0à IGW-MainOffice-TA
Names: RT-BranchOffice-TA; Routes: Local,0.0.0.0/0à IGW-BranchOffice-TA


2. Khởi tạo EC2
Trên mỗi VPC, thực hiện tạo một EC2 nằm trong Public subnet, cho phép truy cập SSH từ bên ngoài để thực hiện cấu hình VPN.
Tại thời điểm ban đầu, 2 địa chỉ Private IP của các EC2 sẽ không thể ping được nhau.
- Tạo Security Group cho EC2 tại Main Office
Mục đích: cấp quyền cho phép kết nối từ dải mạng của Branch Office đi tới Main Office
Security group: SG-MainOffice-TA
Type: SSH; Source: My IP or Everywhere
Type: All TCP; Source: Custom, 10.20.0.0/16
Type: All UDP; Source: Custom, 10.20.0.0/16
Type: All ICMP – IPv4; Source: Custom, 10.20.0.0/16


- Tạo Security Group cho EC2 tại Branch Office
Mục đích: cấp quyền cho phép kết nối ngược lại từ dải mạng của Main Office đi tới Branch Office
Security group: SG-BranchOffice-TA
Type: SSH; Source: My IP or Everywhere
Type: All TCP; Source: Custom, 10.10.0.0/16
Type: All UDP; Source: Custom, 10.10.0.0/16
Type: All ICMP – IPv4; Source: Custom, 10.10.0.0/16


- Tạo EC2 nằm trong Main Office network
Thực hiện tạo với cấu hình như bên dưới
AMI: Amazon Linux 2
Instance type: t2.medium
Network: VPC-MainOffice-TA
Subnet: Pubsub-MainOffice-TA
Auto-assign Public IP: Enable
Tags: Key: Name; Value: EC2-MainOffice-TA
Security group: SG-MainOffice-TA
Key pair: Create a new key pair: EC2-MainOffice-KP


Kết quả:

- Tạo EC2 nằm trong Branch Office network
Thực hiện tạo với cấu hình như bên dưới
AMI: Amazon Linux 2
Instance type: t2.medium
Network: VPC-BranchOffice-TA
Subnet: Pubsub-BranchOffice-TA
Auto-assign Public IP: Enable
Tags: Key: Name; Value: EC2-BranchOffice-TA
Security group: SG-BranchOffice-TA
Key pair: Create a new key pair: EC2-BranchOffice-KP


Sau khi EC2 đã được tạo ra, thực hiện Disable checking Source/Destionation

Tạm thời mình xin kết thúc phần thứ nhất của bài hướng dẫn cấu hình VPN Site-to-Site trên AWS tại đây.
Mọi thắc mắc hoặc có điều gì cẩn giải thích các bạn comment bên dưới nhé. Mình sẽ cố gắng giải đáp. Cám ơn các bạn đã đọc tới đây. Xin chào! ^^