Cách bảo mật HAProxy của bạn bằng SSL

Cach Bao Mat Haproxy Cua Ban Bang Ssl



Khi bạn thiết lập và chạy trang web của mình, có những điều quan trọng bạn phải thực hiện để đảm bảo tính bảo mật, tính khả dụng và độ tin cậy. Điều đầu tiên là cấu hình bộ cân bằng tải và HAProxy đã được chứng minh là một lựa chọn đáng tin cậy. HAProxy xử lý việc cân bằng tải trong khi hoạt động như một proxy ngược. Ngay cả khi có HAProxy, bạn vẫn phải bảo mật lưu lượng bằng cách mã hóa các giao dịch bằng HTTPS. Bạn có thể nhanh chóng bảo mật máy chủ web của mình bằng mã hóa SSL/TLS. Bằng cách đó, dữ liệu giữa máy chủ của bạn và thiết bị khách được truyền đi một cách an toàn và đạt được tính toàn vẹn của dữ liệu. Đọc tiếp để hiểu cách bảo mật HAProxy của bạn bằng SSL.

Mã hóa SSL hoạt động như thế nào?

Nhờ các tùy chọn như Let's Encrypt, giờ đây bạn có thể nhận được chứng chỉ SSL/TLS miễn phí để mã hóa trang web của mình. Let's Encrypt là cơ quan cấp chứng chỉ mở miễn phí cung cấp chứng chỉ SSL/TLS miễn phí có hiệu lực 90 ngày cho các miền trực tiếp. Với các chứng chỉ này, lưu lượng truy cập web của bạn giữa máy chủ và máy khách sẽ được gửi dưới dạng HTTPS. Bằng cách đó, tin tặc không thể nghe lén lưu lượng truy cập và thao túng tính toàn vẹn của dữ liệu được chia sẻ.







Ngoài việc miễn phí, Let’s Encrypt còn hỗ trợ tự động hóa. Chứng chỉ SSL/TLS mà bạn nhận được sẽ tự động gia hạn sau mỗi 90 ngày. Do đó, bạn có thể có một tập lệnh chạy quá trình gia hạn và cập nhật HAProxy của mình sau mỗi 90 ngày. Hơn nữa, chứng chỉ Let's Encrypt tương thích với tất cả các trình duyệt và hệ điều hành, đảm bảo việc sử dụng chúng một cách liền mạch để bảo mật HAProxy của bạn.



Hướng dẫn từng bước về cách bảo mật HAProxy của bạn bằng SSL

Cho đến nay, chúng ta đã hiểu chứng chỉ SSL/TLS có tác dụng gì và tại sao bạn cần nó cho trang web của mình. Hơn nữa, chúng tôi đã thảo luận về cách bạn có thể có được nó. Bước cuối cùng là chia sẻ các bước bảo mật HAProxy bằng SSL.



Trước khi chúng tôi bắt đầu, hãy đảm bảo rằng bạn có miền hoạt động và hợp lệ được liên kết với máy chủ web mục tiêu mà bạn sử dụng với HAProxy. Khi đã sẵn sàng, hãy tiến hành các bước sau:





Bước 1: Cập nhật kho lưu trữ

Việc cập nhật hệ thống của bạn đảm bảo rằng bạn có được nguồn mới nhất cho các gói mà bạn muốn cài đặt.



$ sudo cập nhật thích hợp


Bước 2: Cài đặt HAProxy

Trong trường hợp này, chúng tôi phải cài đặt HAProxy vì đó là điều chúng tôi muốn bảo mật bằng SSL. Nếu bạn có HAProxy đang chạy trên máy chủ web của mình, hãy bỏ qua bước này. Nếu không, hãy chạy lệnh “install” sau để cài đặt HAProxy nhanh chóng:

$ sudo đúng cách cài đặt haproxy


Sau khi bạn cài đặt nó, hãy thực hiện các cấu hình lý tưởng cho nhu cầu của máy chủ, chẳng hạn như cân bằng tải.

Bước 3: Cài đặt Certbot

Tất cả các chứng chỉ SSL miễn phí do Let's Encrypt cấp đều được cung cấp thông qua Certbot. Bạn không cần cài đặt Certbot nếu chứng chỉ của bạn được mua ở nơi khác. Chúng tôi đang chạy Ubuntu 22.04 cho trường hợp này và gói Certbot có sẵn từ kho lưu trữ mặc định. Để cài đặt nó, hãy chạy lệnh sau:

$ sudo đúng cách cài đặt certbot


Bước 4: Lấy chứng chỉ SSL

Sau khi cài đặt Certbot, bạn có thể lấy chứng chỉ SSL từ Let's Encrypt. Sử dụng cú pháp sau và đảm bảo rằng bạn thay thế “exampledomain.com” bằng miền hợp lệ mà bạn muốn bảo mật.

$ sudo chỉ có chứng chỉ certbot --độc lập -d ví dụ tên miền.com -d www.exampledomain.com


Khi bạn chạy lệnh, một loạt lời nhắc sẽ xuất hiện. Đi qua từng lời nhắc và trả lời chúng với các chi tiết chính xác. Ví dụ: bạn phải cung cấp email được liên kết với tên miền. Sau khi bạn trả lời lời nhắc và miền của bạn được xác minh, chứng chỉ SSL sẽ được lấy và lưu trên máy chủ của bạn.

Bước 5: Tạo một tệp PEM duy nhất

Để sử dụng chứng chỉ SSL được tạo với HAProxy của bạn, hãy lưu chứng chỉ và khóa riêng tương ứng vào một tệp PEM. Do đó, chúng ta phải ghép tệp chứng chỉ chuỗi đầy đủ vào tệp khóa riêng bằng lệnh sau:

$ sudo con mèo / vân vân / Letsencrypt / sống / ví dụ tên miền.com / fullchain.pem / vân vân / Letsencrypt / sống / ví dụ tên miền.com / privkey.pem | sudo phát bóng / vân vân / haproxy / chứng chỉ / ví dụdomain.com.pem


Đảm bảo rằng bạn thay thế tên miền bất cứ khi nào cần thiết.


Bước 6: Cấu hình HAProxy

Khi bạn có một tệp PEM duy nhất, bạn phải định cấu hình HAProxy để tham chiếu tệp nhằm bảo mật tệp. Trong tệp HAProxy, bao gồm cổng mà bạn muốn liên kết với HTTPS và thêm đường dẫn đến tệp PEM bằng từ khóa SSL.

Mở tệp bằng trình soạn thảo văn bản.

$ sudo nano / vân vân / haproxy / haproxy.cfg

Tiếp theo, chỉnh sửa cấu hình để có giao diện người dùng tương tự như giao diện người dùng sau, hiển thị cổng nào cần bảo mật và nơi lấy nguồn tệp PEM.


Cuối cùng, lưu và thoát tệp cấu hình. Bạn có thể khởi động lại HAProxy và lưu lượng truy cập của bạn được bảo mật khi truyền từ máy khách đến máy chủ. Tất cả lưu lượng HTTP sẽ được chuyển hướng đến HTTPS nhờ sơ đồ chuyển hướng mà chúng tôi đã đưa vào tệp cấu hình.


Đó là cách bảo mật HAProxy của bạn bằng SSL.

Phần kết luận

Chứng chỉ SSL/TLS là một cách thuận tiện để bảo mật lưu lượng truy cập của bạn khi sử dụng HAProxy làm bộ cân bằng tải. Bạn có thể nhận chứng chỉ SSL miễn phí từ Let's Encrypt bằng công cụ Certbot và định cấu hình HAProxy của bạn để sử dụng nó khi chuyển hướng lưu lượng truy cập. Chúng tôi đã trình bày các bước chi tiết cần làm theo và cung cấp ví dụ để tham khảo khi định cấu hình tương tự trên máy chủ web của bạn.