การตั้งค่านี้สำหรับ Squid 6.13 รวมแพ็กเกจของ Debian 13 ยืนยันรุ่นที่ติดตั้งด้วย squid -v เอกสารคำสั่ง Squid ระบุว่า http_access ไม่มีในรุ่น 8

เลือกที่อยู่ก่อน

ตัวรับฟังต้องมีที่อยู่ที่กำหนดให้เซิร์ฟเวอร์ กฎไคลเอนต์ต้องใช้ที่อยู่ต้นทางที่ Squid มองเห็น ซึ่งอาจเป็นที่อยู่ขาออกสาธารณะของเครือข่าย NAT ไม่ใช่ที่อยู่ส่วนตัวของแล็ปท็อป

แทนที่อยู่ตัวอย่างในเอกสารด้านล่าง ข้อจำกัดไคลเอนต์เป็นที่อยู่เดียว แสดงด้วย /32

http_port 192.0.2.10:3128
acl proxy_client src 198.51.100.27/32
acl Safe_ports port 80 443
acl SSL_ports port 443
acl CONNECT method CONNECT

http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny manager
http_access deny to_localhost
http_access deny to_linklocal
http_access allow proxy_client
http_access deny all

แทนตัวรับฟัง นิยาม ACL และกฎเข้าถึงที่เกี่ยวข้องในค่ากำหนดแพ็กเกจ โดยคงค่าบันทึกและระบบไฟล์ไว้ การเพิ่มกฎเหล่านี้ใต้กฎอนุญาตไคลเอนต์เดิมอาจข้ามข้อจำกัด นิยาม ACL แบบรายการซ้ำอาจเพิ่มค่าได้ด้วย

คำขอผ่านกฎอย่างไร

กฎปฏิเสธเริ่มต้นปฏิเสธพอร์ตปลายทางที่ไม่ต้องการ คำขอจัดการ และปลายทางภายในหรือ link-local ไคลเอนต์ที่รู้จักได้รับอนุญาตหลังตรวจเหล่านี้ คำขออื่นทั้งหมดถึงกฎปฏิเสธสุดท้าย การป้องกันปลายทางยังจำเป็น เพราะรายการอนุญาตต้นทางอย่างเดียวไม่จำกัดปลายทาง

จำกัดไฟร์วอลล์ของโฮสต์หรือเครือข่ายให้ต้นทางที่ตั้งใจ ก่อนเปิดตัวรับฟัง การผูกที่อยู่เลือกจุดที่ Squid รับการเชื่อมต่อ ส่วนกฎเข้าถึงกำหนดคำขอที่อนุญาต

sudo squid -k parse -f /etc/squid/squid.conf

แก้ข้อผิดพลาดแยกวิเคราะห์ก่อนโหลดบริการที่จัดการใหม่ ทดสอบจากไคลเอนต์ที่อนุญาตและต้นทางที่สองภายใต้การควบคุมซึ่งควรถูกปฏิเสธ ยืนยันว่าเป้าหมายได้รับเฉพาะคำขอที่มีสิทธิ์ การเชื่อมต่อ TCP อย่างเดียวไม่ยืนยันสิทธิ์ส่งต่อ

บทความที่เกี่ยวข้อง