Bộ cân bằng tải phần cứng có thể định tuyến lưu lượng SSL với SNI không?


9

Chúng tôi đã có một trang trại máy chủ web hiện đang lưu trữ 2 ứng dụng - cả hai ứng dụng đang chạy trên tất cả các máy chủ. Chúng tôi muốn phân chia điều này để chúng tôi có một trang trại máy chủ chuyên dụng cho mỗi ứng dụng (chúng tôi có lý do chính đáng cho việc này).

Chúng tôi hy vọng sẽ có một bộ cân bằng tải duy nhất ở phía trước tất cả các máy chủ, sẽ định tuyến lưu lượng truy cập đến trang trại chính xác dựa trên tên máy chủ, nhưng chúng tôi muốn duy trì SSL cho máy chủ web.

Có vẻ như các bộ định tuyến chúng tôi đang được cung cấp không làm điều này. Tôi đánh giá cao rằng không có SNI thì điều này là không thể, nhưng chúng tôi mong đợi các chỉ số SNI trên hầu hết tất cả lưu lượng truy cập của chúng tôi.

Bây giờ tôi là một lập trình viên, không phải là một anh chàng mạng, nhưng khi có yêu cầu kết nối SSL mới, bộ định tuyến không thể kiểm tra tiêu đề SNI và định tuyến đến trang trại chính xác. Tôi giả sử kết nối SSL đến được xác định bởi {source IP: port source}, vì vậy nó không thể nhớ điều này cho các gói đến tiếp theo (nếu SNI chỉ có trong gói đầu tiên)?

Theo như tôi có thể nói với Haproxy làm điều này, nhưng có vẻ như các bộ cân bằng tải phần cứng thì không. Có bất kỳ lý do cho điều này, hoặc đây là một cái gì đó chúng ta nên thúc đẩy?

(Đối với người bảo vệ cuối cùng sử dụng IE trên XP không bao gồm SNI, chúng tôi muốn gửi lưu lượng truy cập đến trang trại cũ và chúng tôi sẽ quản lý việc ủy ​​quyền đến trang trại mới khi cần thiết).

Câu trả lời:


10

Theo trang web của họ, bộ cân bằng tải F5 có hỗ trợ cho SNI:

https://devcentral.f5.com/articles/ssl-profiles-part-7-server-name-indication

Bạn thậm chí có thể tạo iRules dựa trên SNI.

Tuyên bố từ chối trách nhiệm:

  • Tôi chưa xác minh những gì họ yêu cầu trên trang web của họ
  • Tôi không làm việc cho F5 và tôi đã không sử dụng bất kỳ sản phẩm nào trong hơn 3 năm qua.

Cảm ơn vì đã trả lời. Tôi có thể sai về điều này nhưng tôi nghĩ rằng trang đó đang nói về máy chủ web hơn là định tuyến lưu lượng SSL. Nó nói về việc sử dụng SNI để chọn chứng chỉ chính xác, vì vậy tôi nghĩ rằng nó ở cuối kết nối SSL, thay vì ở giữa.
potomato

1
AFAIK, trang này nói về định tuyến lưu lượng SSL "..., BIG-IP cho phép bạn gán nhiều cấu hình SSL cho máy chủ ảo để hỗ trợ sử dụng tính năng TLS SNI. Tính năng TLS SNI không khả dụng trong BIG- trước đó Các phiên bản IP, vì vậy bạn sẽ muốn nâng cấp nếu bạn không dùng phiên bản v11.1.0 trở lên! Để hỗ trợ tính năng này, máy chủ ảo phải được chỉ định cấu hình SSL mặc định cho dự phòng cũng như một hồ sơ SSL trên mỗi trang web HTTPS. Cấu hình SSL được sử dụng khi tên máy chủ không khớp với yêu cầu của máy khách hoặc khi trình duyệt không hỗ trợ các tiện ích mở rộng SNI. "
bgtvfr

"máy chủ ảo" là cách lưu lượng truy cập http / https của ip lớn đến các máy chủ phụ trợ (= apache, tomcat, websphere ...)
bgtvfr

Hầu hết những người chơi lớn (cisco, big-IP) làm điều này như đã đề cập ở trên. Tôi không chắc tại sao câu trả lời khác được đánh dấu là câu trả lời.
Jim B

@JimB Tôi đánh dấu người khác là câu trả lời vì tôi là một lập trình viên đang cố gắng đàm phán về khả năng phần cứng mạng! Tôi đã xem bài viết thêm và vẫn không thể tìm ra nếu một thiết bị đang chọn chuyển tiếp lưu lượng truy cập đến các máy chủ vật lý khác nhau dựa trên tiện ích mở rộng SNI (khi chúng tôi cần). Điều này có vẻ phù hợp mặc dù: devcentral.f5.com/questions/ từ
potomato

9

bộ định tuyến không thể kiểm tra tiêu đề SNI,

Một bộ định tuyến thường chỉ hoạt động ở lớp 3 OSI, tức là không kiểm tra nội dung của gói mà chỉ IP đích. Để định tuyến dựa trên SNI, việc hiểu về TCP và TLS là cần thiết, cả hai đều phức tạp hơn và tốn kém hơn (liên quan đến hiệu suất) sau đó chỉ cần định tuyến dựa trên địa chỉ IP. Và điều này cũng thường không được gọi là định tuyến nữa.

Haproxy làm điều này .. cân bằng tải phần cứng không.

Bạn đang trộn bộ định tuyến (lớp 3), bộ cân bằng tải phần cứng (lớp 4 và có thể cao hơn) và Haproxy (bộ cân bằng tải phần mềm). Bộ cân bằng tải phần cứng không gì khác hơn là một thiết bị có một số bộ cân bằng tải phần mềm trên đó và cũng có thể tăng tốc phần cứng cho các hành động cụ thể. Không có gì vốn dĩ không thể cân bằng (không định tuyến) dựa trên thông tin SNI trên bộ cân bằng tải phần cứng và giống như một câu trả lời khác cho thấy có những sản phẩm hỗ trợ điều này. Nhưng tất nhiên nó cần phải được thực hiện và nó tiêu tốn hiệu suất - chúng càng nhìn sâu vào lưu lượng truy cập thì nó càng chậm.


Ok về mặt kỹ thuật có thể nhưng không phải là một ý tưởng tốt cho lý do hiệu suất, đó là lý do tại sao nó không được thực hiện. Cảm ơn.
potomato
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.