Có thể chuyển hướng kết nối https trước khi SSL được kiểm tra bằng haproxy không?


11

Tôi có hai miền, myexample.commy-example.com. Tôi muốn tất cả lưu lượng truy cập cho một trong hai tên miền truy cập https://www.my-example.com , nơi tôi có chứng chỉ SSL. Tôi không có chứng chỉ SSL cho tên miền myexample.com.

Tôi có http://myexample.com , http://www.myexample.com , http://my-example.comhttp://www.my-example.com đều chuyển hướng đến https: // www. my-example.com không có vấn đề gì, tuy nhiên khi tôi thiết lập chuyển hướng cho https://myexample.com hoặc https://www.myexample.com , nó sẽ kiểm tra chứng chỉ SSL của họ trước khi chuyển hướng và vì vậy tôi luôn nhận được chứng chỉ lỗi.

Có cách nào để thực hiện chuyển hướng mà không cần kiểm tra SSL cho tên miền không phải SSL mà tôi đang chuyển hướng không?

Phần có liên quan của tập tin cấu hình của tôi:

frontend www-https
   bind xxx.xxx.xxx.xxx:443 ssl crt /etc/ssl/private/www.my-example.com.pem
   reqadd X-Forwarded-Proto:\ https
   redirect prefix https://www.my-example.com code 301 if { hdr(host) -i myexample.com }
   redirect prefix https://www.my-example.com code 301 if { hdr(host) -i www.myexample.com }
   default_backend www-backend

16
Hãy tưởng tượng trong một khoảnh khắc sẽ tệ đến mức nào khi MITMed https://www.paypal.com/có thể chuyển hướng đến https://www.not-paypal.com/một lúc và bạn sẽ có câu trả lời của mình. SSL certs là miễn phí những ngày này - có được một cho miền khác của bạn.
ceejayoz

Giống như @ceejayoz đã đề cập, chỉ cần nhận chứng chỉ miễn phí cho tên miền khác.
Moshe Katz

Bây giờ tôi đã làm điều đó, tôi chỉ tự hỏi liệu nó có cần thiết không hoặc liệu có cách nào để cấu hình nó giống như tôi đã làm cho không ssl trước khi tôi cố gắng tìm ra cách để có nhiều hơn một chứng chỉ trong cấu hình haproxy (tôi m xa một chuyên gia!).
Ben Holness

@BenHolness Bạn có thể nhận chứng chỉ đa miền (Let Encrypt hỗ trợ đầy đủ điều này), nếu bạn muốn.
ceejayoz

Câu trả lời:


20

Chuyển hướng được thực hiện ở cấp HTTP, tức là sau khi kết nối SSL được thiết lập. Vì thiết lập kết nối SSL bao gồm xác nhận chứng chỉ, không thể bỏ qua kiểm tra chứng chỉ cho các chuyển hướng.

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.