Hướng Dẫn Cấu Hình Load Balancer HTTPS Tự Ký Trên GCP
Giới Thiệu
Trong bài viết này, chúng ta sẽ tìm hiểu cách cấu hình Global Application Load Balancer với HTTPS bằng chứng chỉ tự ký trên Google Cloud Platform (GCP). Việc sử dụng Load Balancer giúp phân phối lưu lượng truy cập và tăng cường khả năng sẵn sàng cho ứng dụng của bạn. Để thực hiện, bạn cần chuẩn bị một số bước trước khi bắt đầu.
Các Bước Chuẩn Bị
- Bước 1: Tạo Instance Templates và Managed Instance Groups. Bạn có thể tham khảo hướng dẫn tại đây.
- Bước 2: Tạo Self-Signed SSL Certificates.
Bước 1: Tạo Chứng Chỉ SSL Tự Ký
Tạo và Thay Đổi Thư Mục
Đầu tiên, bạn cần tạo một thư mục để lưu trữ chứng chỉ:
bash
mkdir SSL-SelfSigned-Certs
cd SSL-SelfSigned-Certs
Tạo Khóa và Chứng Chỉ
Chạy các lệnh sau để tạo khóa và chứng chỉ cho ứng dụng:
bash
# Tạo khóa cho ứng dụng app1:
openssl genrsa -out app1.key 2048
# Tạo yêu cầu ký chứng chỉ cho app1:
openssl req -new -key app1.key -out app1.csr -subj "/CN=app1.latchudevops.com"
# Tạo chứng chỉ cho app1:
openssl x509 -req -days 7300 -in app1.csr -signkey app1.key -out app1.crt
Bước 2: Tạo Load Balancer HTTPS
Cấu Hình Frontend
- Truy cập Network Services -> Load Balancing -> CREATE LOAD BALANCER.
- Chọn Application Load Balancer (HTTP/S) và nhấn START CONFIGURATION.
- Chọn Internet facing hoặc internal only tùy theo yêu cầu.
- Chọn Global external Application Load Balancer.
- Đặt tên cho Load Balancer:
global-lb-external-https-selfsignedssl.
Cấu Hình IP và Port
- Nhấn vào ADD FRONTEND IP AND PORT.
- Nhập thông tin như sau:
- Tên:
frontend-https-selfsignedssl - Mô tả:
frontend-https-selfsignedssl - Giao thức:
HTTPS - Phiên bản IP:
IPv4 - Địa chỉ IP:
global-lb-ip2(tạo IP tĩnh mới) - Port:
443.
- Tên:
Tải Lên Chứng Chỉ Tự Ký
- Nhấn vào CREATE A NEW CERTIFICATE.
- Điền thông tin:
- Tên:
app1-ssl-self-signed - Mô tả:
app1-ssl-self-signed - Nhấn CREATE.
- Tên:
- Bật HTTP to HTTPS Redirect và nhấn DONE.
Cấu Hình Backend
- Nhấn vào CREATE A BACKEND SERVICE.
- Điền thông tin:
- Tên:
mybackend-svc1 - Mô tả:
mybackend-svc1 - Loại Backend: Instance Group
- Giao thức: HTTP
- Port:
webserver80(tự động điền khi chọn backend làmig1-lbdemo). - Thời gian chờ:
30giây.
- Tên:
- Thêm các instance groups:
bash
Instance Group: mig1-us-central1 Port Numbers: 80- Nhấn DONE và tiếp tục với
mig1-us-east1.
- Nhấn DONE và tiếp tục với
- Tắt Cloud CDN và thiết lập Health Check là
http-health-check. - Nhấn vào CREATE.
Quy Tắc Định Tuyến
- Chọn chế độ định tuyến đơn giản: Simple host and path rule.
- Để tất cả các thiết lập khác mặc định và nhấn CREATE.
Bước 3: Xác Nhận Load Balancer
Truy cập lại vào Network Services -> Load Balancing để xem Load Balancer vừa tạo. Kiểm tra các tab:
- LOAD BALANCERS
- BACKENDS
- FRONTENDS
Bước 4: Kiểm Tra Chứng Chỉ SSL
Đi đến Security -> Certificate Manager và nhấn vào CLASSIC CERTIFICATES để xác nhận chứng chỉ app1-ssl-self-signed đã được tạo thành công.
Bước 5: Truy Cập Ứng Dụng Qua Load Balancer
Lưu ý quan trọng: Chờ từ 3 đến 5 phút để Load Balancer hoạt động hoàn toàn.
- Truy cập ứng dụng qua HTTP:
bash
http://LB-IP
Lưu ý: Ứng dụng sẽ tự động chuyển hướng đến URL HTTPS.
- Truy cập ứng dụng qua HTTPS:
bash
https://LB-IP
Bước 6: Xóa Load Balancer
Cuối cùng, bạn có thể xóa Load Balancer đã tạo trong quá trình demo, nhưng đừng xóa các dịch vụ backend.
Kết Luận
Việc cấu hình Load Balancer HTTPS với chứng chỉ tự ký trên GCP không chỉ giúp bạn nâng cao khả năng bảo mật cho ứng dụng mà còn tăng cường khả năng chịu tải. Hãy thử nghiệm và áp dụng kiến thức này vào dự án của bạn!
Nếu bạn thấy bài viết này hữu ích, hãy nhấn like ❤️ và theo dõi để nhận thêm nhiều bài viết thú vị khác!
— Latchu | Kỹ Sư DevOps & Cloud
☁️ AWS | GCP | ☸️ Kubernetes | 🔐 Bảo mật | ⚡ Tự động hóa
📌 Chia sẻ hướng dẫn thực tiễn, các phương pháp tốt nhất & giải pháp đám mây thực tế.