Преди време тук бях описал
инсталцията на squid. Днес след новата инсталация реших да направя и нещо, за което там не съм писал. Понеже редовно ми се налага да ползвам проксито от различни адреси варианта с добавяне на дадени IP-та не е много удобен. Проблема си решавам като направя възможно ползването на проксито с потребител и парола без IP-то да е разрешено в squid.conf. Накратко това става по следния начин (подробното описание по-долу):
Инсталира се
ncsa_auth
.
Понеже на мен ми писна, имам си една стара инсталация и от нея само копирам въпросния файл (
ncsa_auth
).
В
squid.conf
се добавят следните редове:
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 12 hours
auth_param basic casesensitive off
Във същия файл в acl секцията се добавят двата реда:
acl ncsa_users proxy_auth REQUIRED
http_access allow ncsa_users
Създава се файла, в който се описват потребителите и паролите:
touch /etc/squid/passwd
Добавят се потребители:
htpasswd -b /etc/squid/passwd USER PASS
Сега малко подробности:
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd - казва кой метод да използва чрез кой файл и в кой да търси потребителите и паролите. В моя случай папката е
/etc/squid/
защото инсталирах squid от SlackBuilds. Ако се инсталира от сорс обикновено папката е
/usr/local/squid/
auth_param basic children 5 - колко да е максималния брой на потребителите с парола в един момент
auth_param basic realm Squid proxy-caching web server - това ще го изпише над полетата за потребител и парола, когато потребителя се опита да използва проксито.
auth_param basic credentialsttl 12 hours - колко време да трае една сесия (през колко време да пита за парола)
auth_param basic casesensitive on - дали да е чувствителен към малки и главни букви за потребителя и паролата.
http_access allow ncsa_users - с allow се разрешава на потребителите с пароли да ползват проксито.