Tôi có một Chấm dứt SSL đang hoạt động với STunnel trước HAproxy.
Gần đây, vấn đề bổ sung hỗ trợ cho HTTP/2 đã được đưa ra theo cách của tôi.
Điều đó thật dễ dàng với HAProxy, nhưng, như một hạn chế, STunnel phải ở lại.
Lý do STunnel cần ở lại là khoảng 17000 dòng SNI và khả năng quản lý chúng thông qua API đã có sẵn.
Tôi rất có thể thêm một danh sách chứng chỉ cho HAProxy có chứa SNI, một vài greps và echos sẽ đánh dấu.
Tuy nhiên, trong quá trình tìm kiếm của tôi, tôi chưa tìm thấy ai đặt HAProxy trước STunnel trước HAProxy. Đó có phải là cách tiếp cận sai?
Đây là những gì tôi đã bắt đầu làm việc (chưa có SNI nào trong đó - 17000 trong số đó sẽ hơi quá cho một bài đăng):
Giao diện người dùng HAProxy (nơi tôi cần thêm hỗ trợ HTTP/2) với mã hóa đối với STunnel:
nghe phía trước
ràng buộc 192.168.1.100:443 trong suốt
chế độ http
máy chủ stunnel 127.0.0.100:443 ssl không xác minh
đường hầm
[STtunnel]
chứng chỉ = /etc/ssl/certs/cert.pem
mật mã =
ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256
-SHA384:DHE-DSS-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA
256:AES256-GCM-SHA384:AES256-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-
RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:DHE-DSS-AES128-GCM-SHA256:DHE-RSA-AES128-GCM-SHA256:DHE-
RSA-AES128-SHA256:DHE-DSS-AES128-SHA256:AES128-GCM-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA
chấp nhận = 127.0.0.100:443
kết nối = 127.0.0.100:80
chậm trễ = có
tùy chọn = NO_SSLv3
tùy chọn = NO_TLSv1
tùy chọn = NO_TLSv1.1
tùy chọn = NO_TLSv1.3
tùy chọn = CIPHER_SERVER_PREFERENCE
tùy chọn = DONT_INSERT_EMPTY_FRAGMENTS
đàm phán lại = không
giao thức = proxy
cục bộ = 127.0.0.100
TIMEOUTđóng = 0
HAProxy "phụ trợ"
nghe Web
ââââbind 127.0.0.100:80 proxy chấp nhận trong suốt
ââââchế độ http
ââââcân bằng leastconn
ââââacl SSL-443 src 127.0.0.100
ââââtcp-yêu cầu kết nối mong đợi lớp proxy4 nếu STunnel
ââââtùy chọn http-keep-alive
ââââhết thời gian chờ http-request 5 giây
ââââthời gian chờ đường hầm 1h
ââââtùy chọn gửi lại
ââââoption abortonclose
ââââmaxconn 40000
ââââtùy chọn httplog
ââââmáy chủ1 192.168.1.98:80 kiểm tra
ââââmáy chủ server2 192.168.1.99:80 kiểm tra
Tôi cho rằng mã hóa là bắt buộc từ HAProxy đến STunnel và tôi sẽ cần tính đến bất kỳ giao thức nào không khớp giữa các giao thức đó.
Phiên bản STunnel của HAProxy là gì lớp kết nối yêu cầu tcp mong đợi lớp proxy4 nếu STunnel sẽ là?
Bất kỳ trợ giúp nào trong việc nhận hỗ trợ HTTP/2 với STunnel đều được đánh giá rất cao, cũng như nhận được thông báo "Đừng làm vậy, điều đó là sai".
Cảm ơn bạn,