ตอนนี้ฉันใช้ ip ใน acl และฉันต้องการใช้ชื่อผู้ใช้และรหัสผ่านเพื่อทำสิ่งนี้
ตอนนี้ฉันใช้ ip ใน acl และฉันต้องการใช้ชื่อผู้ใช้และรหัสผ่านเพื่อทำสิ่งนี้
คำตอบ:
นี่คือสิ่งที่ฉันต้องทำเพื่อตั้งค่าการตรวจสอบสิทธิ์พื้นฐานบนUbuntu 14.04 (ไม่พบคำแนะนำจากที่อื่น)
/etc/squid3/squid.conf
แทนที่จะเป็นไฟล์กำหนดค่าเริ่มต้นที่ป่องสุด ๆ
auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid3/passwords
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
# Choose the port you want. Below we set it to default 3128.
http_port 3128
โปรดสังเกตโปรแกรมbasic_ncsa_authแทนncsa_auth แบบเก่า
สำหรับ Squid 2.x คุณต้องแก้ไข/etc/squid/squid.conf
ไฟล์และวาง:
auth_param basic program /usr/lib/squid/digest_pw_auth /etc/squid/passwords
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
sudo htpasswd -c /etc/squid3/passwords username_you_like
และป้อนรหัสผ่านสองครั้งสำหรับชื่อผู้ใช้ที่เลือกจากนั้น
sudo service squid3 restart
sudo htpasswd -c /etc/squid/passwords username_you_like
และป้อนรหัสผ่านสองครั้งสำหรับชื่อผู้ใช้ที่เลือกจากนั้น
sudo service squid restart
สำหรับหลาย ๆ คนที่ถามฉันว่าเครื่องมือ 2 ตัวสร้างรูปแบบไฟล์ที่แตกต่างกัน:
htdigest
จัดเก็บรหัสผ่านเป็นข้อความธรรมดาhtpasswd
จัดเก็บรหัสผ่านแฮช (มีการแฮชอัลกอสต่างๆ)แม้จะมีความแตกต่างนี้ในรูปแบบจะยังคงสามารถที่จะแยกไฟล์รหัสผ่านที่สร้างขึ้นด้วยbasic_ncsa_auth
htdigest
ดังนั้นคุณสามารถใช้:
sudo htdigest -c /etc/squid3/passwords realm_you_like username_you_like
โปรดระวังว่าแนวทางนี้เป็นวิธีการเชิงประจักษ์ไม่มีเอกสารและอาจไม่ได้รับการสนับสนุนจาก Squid ในอนาคต
บน Ubuntu 14.04 htdigest
และhtpasswd
มีอยู่ใน[apache2-utils][1]
แพ็คเกจ
คล้ายกับข้างต้น แต่เส้นทางของไฟล์จะแตกต่างกัน
ติดตั้งปลาหมึก
brew install squid
เริ่มบริการปลาหมึก
brew services start squid
ไฟล์กำหนดค่า Squid ถูกเก็บไว้ที่/usr/local/etc/squid.conf
.
แสดงความคิดเห็นหรือลบบรรทัดต่อไปนี้:
http_access allow localnet
จากนั้นคล้ายกับ linux config (แต่มีเส้นทางที่อัปเดต) เพิ่มสิ่งนี้:
auth_param basic program /usr/local/Cellar/squid/4.8/libexec/basic_ncsa_auth /usr/local/etc/squid_passwords
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
โปรดทราบว่าเส้นทางไปbasic_ncsa_auth
อาจจะแตกต่างกันเพราะมันขึ้นอยู่กับรุ่นที่ติดตั้งเมื่อใช้คุณสามารถตรวจสอบนี้กับbrew
ls /usr/local/Cellar/squid/
โปรดทราบว่าคุณควรเพิ่มข้อความข้างต้นในส่วนต่อไปนี้:
#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#
ตอนนี้สร้างผู้ใช้ด้วยตัวคุณเอง: ข้อมูลรับรองการรับรองความถูกต้องของรหัสผ่านขั้นพื้นฐาน (หมายเหตุ: htpasswd
และhtdigest
ยังมีอยู่ใน MacOS)
htpasswd -c /usr/local/etc/squid_passwords username_you_like
เริ่มบริการปลาหมึกใหม่
brew services restart squid
htpasswd
sudo apt-get install apache2-utils