โปรโตคอล PROXY ของ Squid: เชื่อถือผู้ส่งก่อนการตรวจสอบการเข้าถึง HTTP
แยกการตรวจสอบผู้ส่งของโปรโตคอล PROXY ใน Squid ออกจากสิทธิ์ของโดเมนปลายทางและคำขอของไคลเอนต์
ใช้ proxy_protocol_access เพื่อเชื่อถือรีเลย์ที่จัดหาข้อมูลเมตา ไม่ใช่เพื่อเลือกเว็บไซต์ที่อนุญาต ใน Squid 5–7 การตรวจสอบทำงานหนึ่งครั้งหลังตั้งค่า TCP บนตัวรับฟัง require-proxy-header ก่อนที่ส่วนหัวของคำขอ HTTP จะถูกประมวลผล:
acl trusted_relay src 192.0.2.20/32
http_port 3128 require-proxy-header
proxy_protocol_access allow trusted_relay
proxy_protocol_access deny allแทนที่ที่อยู่รีเลย์ในตัวอย่างและจำกัดการเข้าถึงเครือข่ายไปยังตัวรับฟังนี้ ในขั้นนี้ Squid ตรวจสอบคู่ TCP จริงก่อนยอมรับข้อมูลเมตาที่จัดหาให้ หลังยอมรับแล้วจะใช้ที่อยู่ไคลเอนต์ที่อ้างว่าเป็นสำหรับการตรวจสอบ ACL และการบันทึกในภายหลัง การเชื่อถือรีเลย์จากที่อยู่ไคลเอนต์ที่มันอ้างจะกลับลำดับนั้น
เก็บ http_access ไว้สำหรับสิทธิ์ของแหล่งไคลเอนต์และปลายทางในภายหลัง การยอมรับข้อมูลเมตาไม่ได้อนุญาตการเข้าถึงเว็บไซต์ และ ACL ของโดเมนปลายทางไม่สามารถตอบคำถามเรื่องความเชื่อถือผู้ส่งก่อนหน้านี้ได้
ผู้ส่งและผู้รับต้องตกลงเรื่องเวอร์ชันของโปรโตคอล PROXY ที่รองรับ ไคลเอนต์ HTTP ทั่วไปไม่สามารถใช้ตัวรับฟังที่มีคำนำหน้าบังคับนี้เป็นจุดปลายทางพร็อกซีปกติได้ หากต้องใช้ทั้งสองรูปแบบ ให้ใช้จุดปลายทางที่แยกจากกันโดยเจตนาแทนการทำซ้ำที่อยู่รับฟังและพอร์ตเดียวกัน
รีเลย์ที่เชื่อถือได้สามารถมีอิทธิพลต่อการอนุญาตตามที่อยู่ผ่านตัวตนไคลเอนต์ที่จัดหาให้ ให้ความสามารถนั้นแก่ตัวกลางที่ตั้งใจไว้เท่านั้น