0
0
Lập trình
Sơn Tùng Lê
Sơn Tùng Lê103931498422911686980

Chính Sách Tường Lửa VPC Google Cloud – Áp Dụng Quy Tắc Trên Nhiều Mạng VPC

Đăng vào 1 tháng trước

• 4 phút đọc

Chính Sách Tường Lửa VPC Google Cloud – Áp Dụng Quy Tắc Trên Nhiều Mạng VPC

Trong hầu hết các trường hợp, chúng ta thường tạo các quy tắc tường lửa trong từng mạng VPC riêng lẻ. Nhưng nếu bạn muốn áp dụng một chính sách tường lửa tập trung cho nhiều VPC thì sao?

Giới thiệu về Chính Sách Tường Lửa VPC

Chính sách tường lửa VPC là một tính năng cho phép bạn tạo một chính sách duy nhất và gán nó cho nhiều VPC, từ đó thực thi các quy tắc nhất quán trên nhiều môi trường khác nhau.

Mục tiêu của bài hướng dẫn

Trong bài hướng dẫn này, chúng ta sẽ:

  1. Khởi chạy các máy ảo (VM) trong hai VPC khác nhau (vpc1-auto và vpc2-custom).
  2. Tạo một chính sách tường lửa cho phép lưu lượng HTTP (cổng 80).
  3. Áp dụng chính sách này cho cả hai VPC.
  4. Xác minh rằng cả hai VM đều có thể phục vụ ứng dụng qua cổng 80.

Bước 1: Chuẩn bị môi trường

  • VM1: Trong vpc1-auto (VPC chế độ tự động).
  • VM2: Trong vpc2-custom (VPC chế độ tùy chỉnh).
  • Chính sách Tường lửa: fw-policy-allow-80-in-vpc1-and-vpc2.
  • Mục tiêu: Sử dụng một chính sách tường lửa duy nhất để cho phép truy cập cổng 80 cho cả hai VM.

Bước 2: Tạo các máy ảo trong vpc1-auto và vpc2-custom

Chúng ta sẽ triển khai máy chủ web Nginx trên cả hai VM bằng cách sử dụng một tập lệnh khởi động.

bash Copy
#!/bin/bash
sudo apt install -y telnet
sudo apt install -y nginx
sudo systemctl enable nginx
sudo chmod -R 755 /var/www/html
HOSTNAME=$(hostname)
sudo echo "<!DOCTYPE html> <html> 
<body style='background-color:rgb(250, 210, 210);'> 
<h1>Chào mừng đến với Latchu@DevOps - WebVM App1 </h1> 
<p><strong>Tên máy chủ VM:</strong> $HOSTNAME</p> 
<p><strong>Địa chỉ IP VM:</strong> $(hostname -I)</p> 
<p><strong>Phiên bản ứng dụng:</strong> V1</p> 
<p>Nền tảng Google Cloud - Các bản demo</p> 
</body></html>" | sudo tee /var/www/html/index.html

Tạo VM:

bash Copy
# Thiết lập dự án 
gcloud config set project gcpdemos

# VM trong vpc1-auto
gcloud compute instances create myvm6-vpc1-auto \
    --zone=us-central1-a \
    --machine-type=e2-micro \
    --network-interface=subnet=vpc1-auto \
    --metadata-from-file=startup-script=nginx-webserver.sh

# VM trong vpc2-custom
gcloud compute instances create myvm6-vpc2-custom \
    --zone=us-central1-a \
    --machine-type=e2-micro \
    --network-interface=subnet=mysubnet1 \
    --metadata-from-file=startup-script=nginx-webserver.sh

Quan sát (Trước khi áp dụng chính sách tường lửa):

  • Truy cập HTTP (cổng 80) → ❌ Bị chặn
  • Bởi vì không có quy tắc tường lửa nào tồn tại trong cả hai VPC.

Bước 3: Tạo Chính sách Tường lửa Mạng

Đi tới Network SecurityCloud NGFWFirewall PoliciesCREATE FIREWALL POLICY.

  • Tên chính sách: fw-policy-allow-80-in-vpc1-and-vpc2
  • Mô tả: Cho phép cổng 80 trong vpc1-auto và vpc2-custom.
  • Phạm vi triển khai: Toàn cầu.

Thêm quy tắc:

  • Độ ưu tiên: 100
  • Mô tả: Quy tắc cho phép HTTP cho vpc1-auto và vpc2-custom.
  • Hướng: Ingress.
  • Hành động khi khớp: Cho phép.
  • Loại mục tiêu: Tất cả các máy ảo trong mạng.
  • Nguồn: IPv4 → 0.0.0.0/0.
  • Giao thức/Cổng: TCP: 80.

Liên kết chính sách với các VPC:

  • Nhấp vào ASSOCIATE → chọn vpc1-auto và vpc2-custom.

Bước 4: Xác minh Truy cập Ứng dụng

bash Copy
# Liệt kê các máy ảo
gcloud compute instances list

# Kiểm tra cả hai VM
telnet VM1_EXTERNAL_IP 80
telnet VM2_EXTERNAL_IP 80
curl VM1_EXTERNAL_IP
curl VM2_EXTERNAL_IP

Quan sát (Sau khi áp dụng chính sách tường lửa):

  • Truy cập HTTP (cổng 80) → ✅ Được phép.
  • Cả hai VM trong các VPC khác nhau đều có thể truy cập với một chính sách tường lửa duy nhất.

Bước 5: Dọn dẹp

bash Copy
# Xóa các máy ảo
gcloud compute instances delete myvm6-vpc1-auto --zone=us-central1-a 
gcloud compute instances delete myvm6-vpc2-custom --zone=us-central1-a 

# Xóa chính sách tường lửa
# Lưu ý: Phải xóa liên kết trước khi xóa chính sách.

Phân Tích Thực Tế

Hãy tưởng tượng điều này giống như một nhóm IT của công ty áp dụng một chính sách bảo mật trung tâm cho nhiều chi nhánh văn phòng.

Thay vì tạo quy tắc tại mỗi chi nhánh (VPC), họ tạo một chính sách toàn cầu và gán nó ở mọi nơi.


Tóm tắt

  • Các quy tắc tường lửa VPC bị giới hạn trong một VPC duy nhất.
  • Chính sách tường lửa mạng cho phép bạn tạo các quy tắc trung tâm, có thể tái sử dụng.
  • Bạn có thể thực thi các kiểm soát truy cập vào và ra nhất quán trên nhiều VPC.

Các Thực Hành Tốt Nhất

  • Luôn kiểm tra hiệu suất của chính sách tường lửa sau khi triển khai.
  • Đảm bảo rằng các quy tắc không xung đột với nhau.

Các Cạm Bẫy Thường Gặp

  • Không có quy tắc nào gây ra sự cố truy cập.
  • Quên xóa liên kết giữa chính sách và các VPC trước khi xóa chính sách có thể dẫn đến lỗi.

Mẹo Hiệu Suất

  • Theo dõi lưu lượng truy cập để tối ưu hóa các quy tắc tường lửa.
  • Sử dụng công cụ giám sát để phát hiện sớm các vấn đề.

Giải Quyết Vấn Đề

  • Nếu không thể truy cập ứng dụng, hãy kiểm tra lại quy tắc tường lửa và đảm bảo rằng chúng được áp dụng đúng cách.

Câu Hỏi Thường Gặp (FAQ)

1. Chính sách tường lửa VPC có thể áp dụng cho bao nhiêu VPC?
Có thể áp dụng cho nhiều VPC cùng một lúc.

2. Làm thế nào để kiểm tra các quy tắc tường lửa của tôi?
Sử dụng lệnh gcloud compute firewall-rules list để liệt kê các quy tắc hiện tại.

3. Tôi có thể gán nhiều chính sách cho một VPC không?
Không, mỗi VPC chỉ có thể gán một chính sách tường lửa tại một thời điểm.

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào