Điểm:1

HAProxy không hoạt động với SNI và ACL

lá cờ gb

Tôi đang cố gắng để haproxy sử dụng acls với SNI và nó không hợp tác. Nó trình bày đúng chứng chỉ nên SNI phải hoạt động. Tuy nhiên, tôi không thể lấy nó để chọn phụ trợ dựa trên tên máy chủ trong SNI.

Mà tôi kiểm tra cấu hình, tôi nhận được như sau

[CẢNH BÁO] (21486): Proxy 'fe-dr-totalflood.com': Các lần tìm nạp mẫu L6 bị bỏ qua trên proxy HTTP (được khai báo tại ./haproxy.cfg.tmp:176).
[CẢNH BÁO] (21486): Proxy 'fe-dr-totalflood.com': Các lần tìm nạp mẫu L6 bị bỏ qua trên proxy HTTP (được khai báo tại ./haproxy.cfg.tmp:177).
Cảnh báo đã được tìm thấy.
Tệp cấu hình hợp lệ

Tôi không biết ý nghĩa của các thông báo lỗi và tôi đã ghi chú bên cạnh các dòng tương ứng trong đoạn mã sau.

giao diện người dùng fe-dr-totalflood.com
  chế độ http
  ràng buộc 172.22.8.229:80
  liên kết 172.22.8.229:443 ssl crt dr-www.totalflood.com.crt crt dr-xml.totalflood.com.crt

  ## chuyển hướng http->https
  sơ đồ chuyển hướng yêu cầu http trừ khi { ssl_fc }

  ## danh sách kiểm soát truy cập
  acl https ssl_fc
  acl letsencrypt-acl path_beg /.well-known/acme-challenge/
  acl www-acl req_ssl_sni dr-www.totalflood.com
  acl xml-acl req_ssl_sni dr-xml.totalflood.com

  # nếu Let's Encrypt, bỏ qua phần còn lại và chuyển sang phần phụ trợ
  use_backend be-letsencrypt nếu letsencrypt-acl

  use_backend be-dr-www.totalflood.com nếu www-acl <------ 176
  use_backend be-dr-xml.totalflood.com nếu xml-acl <------ 177

  default_backend be-no- such-site

#---------------------------------------------
phụ trợ be-dr-www.totalflood.com
  chế độ http
  thăng bằng vòng tròn
  cookie SERVERID chèn tối đa nocache gián tiếp 30m

  ## đặt tên máy chủ trong tiêu đề
  acl h_host_exists req.hdr(Host) -m đã tìm thấy
  http-request del-header Host nếu h_host_exists
  http-request set-header Máy chủ lưu trữ www.totalflood.com

  kiểm tra máy chủ mặc định maxconn 100

  máy chủ scadmzp2wb01 scadmzp2wb01.lereta.net:80 cookie scadmzp2wb01

#---------------------------------------------
phụ trợ be-dr-xml.totalflood.com
  chế độ http
  thăng bằng vòng tròn
  cookie SERVERID chèn tối đa nocache gián tiếp 30m

  ## đặt tên máy chủ trong tiêu đề
  acl h_host_exists req.hdr(Host) -m đã tìm thấy
  http-request del-header Host nếu h_host_exists
  http-request set-header Máy chủ lưu trữ xml.totalflood.com

  kiểm tra máy chủ mặc định maxconn 100

  máy chủ scadmzxml01 scadmzxml01.lereta.net:80 cookie scadmzxml01

#---------------------------------------------
phụ trợ be-letsencrypt
  máy chủ cục bộ 127.0.0.1:8888

#---------------------------------------------
backend be-no-như-site
  máy chủ cục bộ 127.0.0.1:8888

Khi tôi cố gắng truy cập một trong hai trang web, tôi luôn nhấn vào phụ trợ mặc định bất kể điều gì. Tôi đã kiểm tra điều này bằng cách thay đổi chương trình phụ trợ mặc định sang những nơi khác. Nếu tôi nối thêm vào một trong hai url đường dẫn /.well-known/acme-challenge, haproxy dường như đưa tôi đến đúng địa chỉ.

Điều tôi không thể hiểu là tại sao acls dựa trên thông tin SNI không hoạt động.

Tôi đang sử dụng phiên bản 2.4.2 của haproxy OracleLinux 8.

$ haproxy -v
HAProxy phiên bản 2.4.2-553dee3 2021/07/07 - https://haproxy.org/
Tình trạng: nhánh hỗ trợ dài hạn - sẽ ngừng nhận fix khoảng Q2 2026.
Các lỗi đã biết: http://www.haproxy.org/bugs/bugs-2.4.2.html
Chạy trên: Linux 5.4.17-2136.304.4.1.el8uek.x86_64 #2 SMP Thứ ba ngày 8 tháng 2 11:54:24 PST 2022 x86_64
Điểm:1
lá cờ gu

Trích dẫn từ các tài liệu:

Tìm nạp mẫu từ nội dung bộ đệm hơi khác so với trước đó tìm nạp mẫu ở trên vì dữ liệu được lấy mẫu là tạm thời. Những dữ liệu này có thể chỉ được sử dụng khi chúng có sẵn và sẽ bị mất khi chúng được chuyển tiếp. Vì lý do này, các mẫu lấy từ nội dung bộ đệm trong một yêu cầu không thể được sử dụng trong một phản ứng chẳng hạn. Ngay cả khi dữ liệu đang được tìm nạp, chúng có thể thay đổi.

Đó là lý do tại sao bạn nhận được cảnh báo về việc bỏ qua ACL lớp 6.

Thay vì sử dụng req_ssl_sni, bạn đã sử dụng tốt hơn ssl_fc_sni ở Lớp 5, sẽ cung cấp cho bạn thông tin tương tự nhưng đáng tin cậy hơn.

scarville avatar
lá cờ gb
Điều đó đã làm việc. Cảm ơn bạn.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.