Hướng dẫn tạo VPN Site to Site (Part 2)
Hế lô các bạn!
Đã lâu lắm rồi mình mới lại có dịp để ngồi viết bài chia sẻ cùng các bạn như thế này. Mình đoán với những bạn đã đọc hay có theo dõi Part 1 của mình thì hẳn đã khá nóng lòng mong chờ Part 2 lắm (hoặc là mình tự huyễn hoặc thế thôi haha)
Trước khi đi vào nội dung của bài viết Part 2, mình xin được nhắc lại các bước cơ bản bài lab bao gồm có 4 bước như sau :
- 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
Cho tới Part 1, mình đã hướng dẫn các bạn cách xây dựng môi trường để có thể bắt đầu cấu hình VPN Site-to-Site. Cụ thể là chúng ta đã cùng nhau hoàn thành xong Bước 1 và Bước 2 của bài lab.
Sau đây là 2 bước cuối cùng của bài lab, các bạn cùng theo dõi với mình nhé!
3. CẤU HÌNH SITE-TO-SITE VPN TẠI MAIN OFFICE
Các bước thực hiện:
- Tạo Virtual Private Gateway hay VPG
- Tạo và cấu hình Customer Gateway
- Tạo và cấu hình Site-to-Site connection
3.1. Tạo Virtual Private Gateway tại Main Office
- Truy cập VPC service
- Chọn Virtual Private Gateway
- Chọn Create VPG
- Name: nhập tên cho Virtual Private Gateway


3.2. Tạo & Cấu hình Customer Gateway tại Main Office
CGW được tạo ra nhằm mục đích ánh xạ địa chỉ Public IP thuộc Remote site (ở đây là Branch office).
Ở bài toán thực tế, doanh nghiệp thường sử dụng một địa chỉ Static Public IP address do ISP cung cấp. Còn trong phạm vì bài lab, ta sử dụng địa chỉ Public IP của EC2 để thay thế
- Name: nhập tên cho Customer Gateway
- Routing: Static
- IP Address: 3.80.47.103 (Địa chỉ Public IP address của EC2)

3.3. Tạo & Cấu hình Site-to-Site connection tại Main Office
Tại bước này, ta thực hiện tạo và mở kết nối giữa Main Office và Branch Office
- Name: nhập tên cho VPN
- Virtual Private Gateway: nhập tên của VPG vừa tạo ở bước trên
- Customer Gateway: Exist
- Routing Options: Static
- IP Prefixes: 10.20.0.0/16 (Dải network của Branch Office)



Tiếp tục thực hiện bật propagate cho Route table của VPC-Main. Các bước thực hiện như sau:
- Truy cập VPC service
- Bấm chọn Main Office Route table: chọn tên Route cho Main office
- Chọn tab Route Propagation
- Chọn Edit Route Propagation
- Check Enable
- Bấm Yes


4. CẤU HÌNH SITE-TO-SITE VPN TẠI BRANCH OFFICE
Thực hiện truy cập EC2 tại BranchOffice thông qua địa chỉ IP public được cấp khi khởi tạo.
- Cài đặt OpenSwan
# sudo su
# yum install openswan -y
- Cấu hình /etc/ipsec.conf
Đảm bảo file cấu hình đã include thư viện như bên dưới
include /etc/ipsec.d/*.conf
- Cấu hình /etc/sysctl.conf
Kiểm tra và bổ sung các thông số cấu hình như bên dưới
net.ipv4.ip_forward = 1
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.send_redirects = 0
- Cấu hình /etc/ipsec.d/aws-vpn.conf
Thực hiện tạo và bổ sung cấu hình
conn Tunnel1
authby=secret
auto=start
left=%defaultroute
leftid=3.80.47.103
right=34.193.46.177
type=tunnel
ikelifetime=8h
keylife=1h
phase2alg=aes128-sha1;modp1024
ike=aes128-sha1;modp1024
keyingtries=%forever
keyexchange=ike
leftsubnet=10.20.0.0/16
rightsubnet=10.10.0.0/16
dpddelay=10
dpdtimeout=30
dpdaction=restart_by_peer
Trong đó lưu ý 4 thông số
leftid: là địa chỉ IP Public phía Customer thường cấp bởi ISP.
right: là địa chỉ IP Public phía AWS VPN Tunnel, được cấp tự động.
leftsubnet: là CIDR dải mạng phía Customer
rightsubnet: là CIDR dải mạng phía AWS VPN
- Cấu hình /etc/ipsec.d/aws-vpn.secrets
Tạo file và cấu hình như bên dưới
<customer_public_ip> <aws_vgw_public_ip>: PSK “<shared secret>”
Ví dụ:
3.80.47.103 34.193.46.177: PSK “q7vh2Fe_7RRYv.8w_2WKMxJlBIt_v2Uh”
Để điển được các thông số này ta phải download và kiểm tra nội dung file Site-to-Site configuration. Cụ thể gồm các bước sau:
- Truy cập VPC service
- Chọn Site-to-site connection
- Chọn Download Configuration
- Chọn OpenSwan hoặc Generic để download



- Restart Network service & IPSEC service
# service network restart
# chkconfig ipsec on
# service ipsec start
# service ipsec status
Ping thành công từ EC2 Branch tới EC2 Main

Ping thành công từ EC2 Main tới EC2 Branch

Chúc mừng các bạn đã đi được tới bước này!!!
Còn với những bạn nào chưa thực hiện thành công, thì cũng đừng nản lòng nhé. Chắc hẳn bạn chỉ thiếu sót một chút ít ở đâu đó mà thôi. Và cũng đừng ngại đem những băn khoăn của mình comment vào dưới bài viết để chúng mình cùng giải đáp thắc mắc nhé!
Cuối cùng, xin được cám ơn tất cả các bạn đã theo dõi!
Thanks and have a good day!