یہ طریقہ ماخذ سے محدود Squid 6.13 پراکسی میں NCSA پر مبنی Basic تصدیق شامل کرتا ہے۔ Debian 13 کا مددگار /usr/lib/squid/basic_ncsa_auth ہے؛ اپنے پیکیج کا راستہ اور سروس اکاؤنٹ تصدیق کریں۔

پہلا اکاؤنٹ بنائیں

تقسیم کا htpasswd آلہ استعمال کریں اور پاس ورڈ تعاملی درج کریں:

sudo htpasswd -c /etc/squid/users proxyuser
sudo chown root:proxy /etc/squid/users
sudo chmod 640 /etc/squid/users

ملکیت Debian کے سروس گروپ کو فرض کرتی ہے۔ Squid کو فائل پڑھنی چاہیے، دوسرے صارفین کو نہیں۔ بعد کے اکاؤنٹس کے لیے -c چھوڑ دیں، جو نئی فائل بنا کر موجودہ اندراجات بدل سکتا ہے۔

اسی اجازت قاعدے میں ماخذ اور لاگ ان لازم کریں

یہ موجودہ منزل پورٹ، انتظام، localhost اور link-local حفاظتوں کے بعد رکھیں:

auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/users
auth_param basic realm PrivateProxy

acl proxy_client src 198.51.100.27/32
acl logged_in proxy_auth REQUIRED

http_access allow proxy_client logged_in
http_access deny all

کلائنٹ پتہ اس ماخذ سے بدلیں جو Squid دیکھتا ہے۔ دونوں شرطیں پوری ہوں۔ پہلے کے وسیع کلائنٹ اجازت قواعد ہٹائیں جو لاگ ان قاعدہ بائی پاس کریں، مگر listener اور فائر وال حدود رکھیں۔

نحو جانچیں، دوبارہ لوڈ کریں اور دو درخواستیں ملائیں

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

پارسر کی خرابیاں ٹھیک کریں، پھر ٹیسٹ سے پہلے زیر انتظام Squid سروس دوبارہ لوڈ کریں۔ منظور ماخذ سے اسناد کے بغیر درخواست کو تصدیق کا چیلنج ملنا چاہیے۔ حقیقی پراکسی میزبان نام سے مجاز درخواست کے ساتھ موازنہ کریں:

curl --proxy http://proxy.example:3128 --proxy-basic --proxy-user proxyuser --noproxy '' --connect-timeout 5 --max-time 15 https://example.com/

صرف صارف نام دینے پر curl پاس ورڈ پوچھتا ہے۔ درست درخواست منزل تک پہنچنی چاہیے۔

Basic کلائنٹ اور پراکسی کے تبادلے کو خفیہ نہیں کرتی۔ بعد کی منزل HTTPS ان اسناد کو نہیں بچا سکتی جو پہلے ہی صاف متن پراکسی کو بھیجی جا چکی ہوں؛ مناسب محفوظ راستہ استعمال کریں۔ یہ ہدایات Squid 6.13 کے لیے ہیں؛ Squid 8 کی اپنی ورژن ترتیب دیکھیں۔

متعلقہ مضامین