Có cách nào để lưu trữ các yêu cầu HTTPS trong máy chủ proxy không?


12

Chúng tôi đang sử dụng máy chủ proxy Squid trong môi trường của chúng tôi và chúng tôi muốn lưu trữ các yêu cầu HTTPS.

Có cách nào để cấu hình Squid hoặc nói chung một máy chủ proxy để lưu trữ các yêu cầu HTTPS không?


Điều này có lẽ thuộc về security.se
Tom O'Connor

1
Nói rõ hơn, bạn đang sử dụng con mực trước một loạt các máy chủ của riêng bạn, hay bạn đang sử dụng nó giữa các máy trạm và Internet?
Zoredache

Chỉ cần làm rõ. Bạn muốn lưu trữ yêu cầu hoặc phản hồi?
Gqqnbig

Câu trả lời:


12

Có một cách để làm điều đó, nhưng về cơ bản là chống lại các lý do sử dụng HTTPS.

Đây là cách bạn làm điều đó.

  1. Tạo Chứng chỉ SSL tự ký cho trang web bạn muốn chặn và lưu trữ các yêu cầu từ đó.
  2. Cài đặt và chạy stunnel trên máy chủ proxy của bạn, nói với nó rằng chứng chỉ mà nó sẽ xuất hiện là chứng chỉ được tạo trong giai đoạn 1.
  3. Có stunnel chuyển tiếp các yêu cầu được giải mã để mực.
  4. Bạn có thể cần phải có stunnel ở phía bên kia, hoặc openssl_client để mã hóa lại yêu cầu đến máy chủ ngược dòng.

Hãy cẩn thận:

  1. Người dùng của bạn sẽ ghét bạn. Mỗi yêu cầu SSL đến trang web đó sẽ xuất hiện một cửa sổ chứng chỉ không hợp lệ.
  2. Bạn đang phơi mình trước những vụ kiện tiềm năng để làm những việc nghịch ngợm. (IANAL)
  3. Bạn sẽ chỉ có thể có được một chứng chỉ tự ký hoạt động cho việc này, bởi vì cách web tin cậy PKI cho Chứng chỉ SSL được cho là hoạt động. Không nói gì về các CA gốc bị xâm nhập.

Tôi sẽ không cung cấp cho bạn chi tiết chính xác về cách thực hiện việc này, vì a) Tôi nghĩ rằng điều đó hơi phi đạo đức và b) Tốt hơn là bạn nên học cách làm nó.

Tôi đề nghị bạn nghiên cứu cách hoạt động của stunnel và man-in-the-middle.


Bạn có thể yêu cầu Trustwave zdnet.com/, bán cho bạn một chứng chỉ gốc để bạn có thể triển khai giải pháp này mà không làm phiền người dùng của bạn: P
Rory

2
Trên thực tế, nếu bạn đang ở trên một miền, việc tạo CA của riêng bạn sẽ dễ dàng hơn nhiều và triển khai các chứng chỉ công khai cho nó với Chính sách nhóm.
Tom O'Connor

1
Tin tưởng vào SSC + MITM rất hữu ích cho việc gỡ lỗi giao thức, lưu vào bộ đệm, kiểm tra gói sâu và kiểm duyệt / ghi nhật ký. : / Khác với những lý do đó, không tốt lắm.

6

Chỉ cần giải thích lý do tại sao điều này không thể được thực hiện mà không có MITM - một proxy chỉ nhìn thấy tên DNS của máy chủ mà bạn muốn kết nối khi sử dụng HTTPS được mã hóa. Nó không thấy URL, cũng không có bất kỳ tiêu đề phản hồi nào. Nó không thể xác định tài nguyên cá nhân nào bạn đang truy cập trên một trang web, liệu nó có thể được lưu trong bộ nhớ cache hay không, cũng như thời gian sửa đổi của nó. Tất cả những gì nó có thể thấy là ai đó muốn một cái gì đó từ một máy chủ từ xa bằng HTTPS.

Điều này có nghĩa là bộ nhớ đệm không thể hoạt động vì proxy không biết những đối tượng được lưu trong bộ nhớ cache nào sẽ cung cấp cho bạn hoặc làm thế nào để có được chúng ở vị trí đầu tiên.


5

Không, không có: chúng được mã hóa ... Một cách giải quyết sẽ giống như một triển khai trung gian , nhưng điều đó sẽ đánh bại tất cả các lý do đằng sau https .


1
Không có cách giải quyết để đạt được điều này hoặc buộc máy chủ proxy giải mã và bộ đệm?
Supratik

Một cách giải quyết sẽ phần nào thay đổi man-in-middleviệc triển khai, nhưng điều đó sẽ đánh bại tất cả các lý do đằng sau https
yrk

5
Tôi không đồng ý rằng nó sẽ đánh bại tất cả các lý do đằng sau https. Nếu bạn làm điều này ở nhà và bạn sở hữu proxy, dữ liệu của bạn sẽ vẫn sử dụng https giữa proxy của bạn và các trang web.
brunoqc

@brunoqc đó là công việc của VPN.
yrk

1
Nếu vì lý do nào đó, tải trọng https là quan trọng vì một số lý do hoặc gỡ lỗi một phiên https, MITM là siêu hữu ích. Trên thực tế, đây là cách Charles làm việc.

1

Trình quản lý lưu lượng ZTM của Zeus (Now Riverbed) có thể làm điều này vì nó có thể dịch lưu lượng truy cập http và https theo cả hai cách và lưu trữ nội dung không được mã hóa - nó hoạt động, chúng tôi sử dụng nó, nhưng nó đắt đến mức đáng sợ - như giá của một chiếc Porsche trên mỗi máy chủ.


5
Nhưng nó vẫn yêu cầu bạn cài đặt chứng chỉ gốc mới trên máy khách, phải không? Và bạn vẫn phải tin tưởng proxy, phải không?
phihag
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.