Vì sao trình duyệt có thể ẩn trang chặn HTTPS của Squid
Hiểu vì sao trình duyệt có thể hiển thị lỗi đường hầm của chính nó thay vì HTML tùy chỉnh được trả về cho yêu cầu CONNECT bị từ chối.
Trang chặn tùy chỉnh của proxy xuất hiện với một trang HTTP. Với trang HTTPS, trình duyệt lại hiển thị lỗi đường hầm. Việc thay lại mẫu HTML có thể không thay đổi gì.
Với proxy HTTP tường minh, một lượt truy cập HTTPS thường bắt đầu bằng CONNECT. Trình duyệt yêu cầu proxy mở một đường hầm tới máy chủ và cổng. Nếu Squid từ chối yêu cầu đó, phiên TLS của trang sẽ không bao giờ bắt đầu.
Việc từ chối có thể có mã trạng thái HTTP và nội dung phản hồi. Bạn có thể kiểm tra phản hồi CONNECT thất bại đó bằng curl độc lập với trang lỗi của trình duyệt. Điều đó không đòi hỏi trình duyệt phải trình bày HTML được cung cấp như trang web của đích đến. Trình duyệt có thể bỏ phần nội dung lỗi CONNECT và dùng giao diện lỗi proxy của riêng nó; cách hiển thị chính xác phụ thuộc vào máy khách.
Nếu phản hồi từ chối của Squid đã chứa nội dung deny_info dự định, việc sửa văn bản, bảng định kiểu hoặc quyền của tệp không thay đổi giai đoạn phản hồi mà trình duyệt xử lý. Giữ trạng thái từ chối và nhật ký truy cập để xác định liệu CONNECT có bị từ chối không và vì sao. Một trang trình duyệt chung có thể che giấu chi tiết chính sách trong khi proxy vẫn thực thi đúng quy tắc.
Cung cấp trang chặn bên trong một kết nối HTTPS bị chặn bắt là một kiến trúc khác, liên quan đến việc kết thúc TLS, tin cậy máy khách và xử lý chứng chỉ. Nó không được bật bằng cách sửa deny_info, và một mẫu tùy chỉnh không trao quyền hạn nào để mạo danh trang bị chặn. Chỉ chọn thiết kế đó khi cần; nếu không, hãy dùng báo cáo lỗi sẵn có của máy khách và nhật ký vận hành của proxy.