Haproxy SSL là gì? Các bước cài đặt Haproxy SSL

1. Haproxy SSL là gì?

HAProxy SSL là một tính năng của HAProxy, một dịch vụ cân bằng tải (load balancer) mã nguồn mở được sử dụng để phân phối tải giữa nhiều máy chủ để đảm bảo khả năng mở rộng và tin cậy cho các ứng dụng web.

HAProxy SSL thường đề cập đến khả năng của HAProxy trong việc xử lý giao thức SSL/TLS. Cụ thể, HAProxy SSL có thể bao gồm các chức năng sau:

  • Termination SSL/TLS: HAProxy có thể chấm dứt kết nối SSL/TLS từ người dùng và giải mã SSL trước khi chuyển hướng yêu cầu đến các máy chủ ứng dụng. Điều này giúp giảm gánh nặng xử lý SSL trên các máy chủ ứng dụng và cung cấp hiệu suất tốt hơn.
  • Passthrough SSL: HAProxy cũng có khả năng chuyển tiếp kết nối SSL/TLS trực tiếp đến máy chủ ứng dụng mà không giải mã nó. Điều này thường được sử dụng khi bạn muốn các máy chủ ứng dụng tự xử lý SSL/TLS.
  • Offloading SSL: HAProxy có thể giúp giảm gánh nặng xử lý SSL trên máy chủ bằng cách thực hiện các chức năng như giải mã SSL và xác thực chứng chỉ SSL trước khi chuyển giao yêu cầu đến máy chủ.

2. Các bước cài đặt Haproxy SSL?

 

* Tạo tệp chứng chỉ SSL có định dạng PEM:

Để tạo file .pem, hãy di chuyển vào thư mục chứa file chứng chỉ của bạn, ví dụ ~/Downloads , sau đó chạy lệnh cat:

$ cat example.com.key STAR_example_com/STAR_example_com.crt STAR_example_com/STAR_example_com.ca-bundle > example.com.pem
* Định cấu hình chứng chỉ SSL PEM trong HAProxy:

Tiếp theo, tải .pemchứng chỉ vừa tạo lên máy chủ HAProxy bằng lệnh scp như được hiển thị (thay thế sysadmin và 192.168.10.24 bằng tên người dùng và địa chỉ IP của emote server tương ứng):

$ scp example.com.pem sysadmin@192.168.10.24 :/home/sysadmin/

Sau đó tạo một thư mục nơi .pem file chứng chỉ sẽ được lưu trữ bằng lệnh mkdir và sao chép file vào đó:

$ sudo mkdir -p /etc/ssl/example.com/ 
$ sudo cp example.com.pem /etc/ssl/example.com/

Tiếp theo, mở tệp cấu hình HAProxy của bạn và định cấu hình chứng chỉ trong phần trình nghe giao diện người dùng, sử dụng tham số ssl và crt: cái trước cho phép chấm dứt SSL và cái sau chỉ định vị trí của tệp chứng chỉ.

frontend http_frontend
      mode http
      bind *:80
      bind *:443 ssl crt  /etc/ssl/example.com/example.com.pem alpn h2,http/1.1
     redirect scheme https code 301 if !{ ssl_fc }
      default_backend http_servers
* Định cấu hình HAProxy để chuyển hướng HTTP sang HTTPS

Để đảm bảo rằng trang web của bạn chỉ có thể truy cập được qua HTTPS , bạn cần kích hoạt HAProxy để chuyển hướng tất cả lưu lượng HTTP sang HTTPS trong trường hợp người dùng cố gắng truy cập nó qua HTTP (cổng 80).

Thêm dòng sau vào cấu hình trên:

redirect scheme https code 301 if !{ ssl_fc }
OR
http-request redirect scheme https unless { ssl_fc }

Lưu tập tin cấu hình và đóng nó.

Sau đó kiểm tra xem cú pháp của nó có đúng không bằng lệnh sau:

$ sudo haproxy -f /etc/haproxy/haproxy.cfg -c

Nếu tệp cấu hình hợp lệ, hãy tiếp tục và tải lại dịch vụ haproxy để nhận các thay đổi gần đây trong cấu hình bằng lệnh systemctl :

$ sudo systemctl reload haproxy
0/5 (0 Reviews)

Leave a Comment