Cấu hình thoạt nhìn có vẻ hợp lý:

acl team_a myportname 3128 src 198.51.100.0/24

Nhưng một định nghĩa ACL chỉ có một loại. Ở đây myportname là loại; thêm từ src không bắt đầu phép thử thứ hai. Các từ còn lại thuộc danh sách giá trị của loại đầu tiên. Dòng đó không diễn đạt “listener này và mạng máy khách này”.

Đặt tên cho từng điều kiện

Dùng một tên cho socket lắng nghe và một ACL nguồn riêng. Đoạn trích này dùng địa chỉ tài liệu, cần thay bằng địa chỉ phù hợp với việc triển khai:

http_port 192.0.2.10:3128 name=team_a_port
acl team_a_port myportname team_a_port
acl team_a_clients src 198.51.100.0/24

http_access allow team_a_port team_a_clients
http_access deny all

Đặt quy tắc cho phép sau các biện pháp bảo vệ hiện có cho cổng đích không an toàn, mục tiêu CONNECT bị hạn chế và quyền truy cập quản trị. Đoạn trích minh họa điều kiện máy khách/listener; nó không thay thế các biện pháp bảo vệ đó.

Các điều kiện trên một dòng http_access được kết hợp bằng AND. Hai dòng cho phép riêng sẽ chấp nhận từng điều kiện một cách độc lập, điều này sẽ thay đổi chính sách đáng kể. Nhiều giá trị trong một ACL thường tạo ra các lựa chọn thay thế cho phép thử duy nhất đó.

Chọn đường ra riêng

Một listener khớp cũng có thể được tcp_outgoing_address dùng để chọn địa chỉ nguồn cục bộ. Đó là lựa chọn định tuyến, không phải quyền dùng proxy. Một quy tắc địa chỉ ra không thể làm yêu cầu bị từ chối đi qua http_access.

Nếu cấu hình nhiều địa chỉ ngừng hoạt động sau khi nâng cấp, hãy tách bằng chứng: lỗi phân tích cú pháp chỉ vào cú pháp cấu hình; từ chối truy cập chỉ vào việc khớp quy tắc; yêu cầu được cho phép với đường ra sai chỉ vào việc chọn đường ra hoặc NAT về sau. Thay đổi cả ba cùng lúc khiến một lỗi ACL nhỏ khó tìm hơn nhiều.

Bài viết liên quan