Как да настроим SQUID да оторизира и ограничава Windows потребителите?
(Малко упътване)

Написана от superflay:
Благодарнoсти на www.dhstudio.eu , Мартин Петров


   Във фирмата в която работя ми се наложи да пусна прокси сървър под линукс според проучванията най-добър и най-използван е SQUID. За да огранича потребителите трябваше да се сблъскам със SQUID.
   Във фирмата в която работя има доста потребители които използват интернет и често се заразяват със вируси, използват ненужни програми за комуникация теглят тонове MP3-ки, програми, игри и др. За това реших да ги огранича по следния начин:

1.Системата на която работя е Fedora Core 4 и 5 с инсталиран и работещ SQUID
2.За оторизация към прокси сървъра използвам BASIC auth.
3.За да огранича юзърите ги разделям на групи по следния начин:
Администратори
Blackstar
Mirkosoft
High privilege

PowerUsers
Radev
Radusheff
Elena
Ralica
Medium privilege


Users
Minka
Dobrinka
Sneja
Miteva
Low privilege



И сега започваме .
1.Трябва да настроим SQUID да работи с BASIC auth за целта трябва да проверим каде ни се намира програмата
[blackstar@localhost ~]# find / -name ncsa_auth
/usr/lib/squid/ncsa_auth
[blackstar@localhost ~]#

след като сме намерили местонахождението на ncsa_auth трябва да си генерираме файл с паролите на юзърите
htpasswd -cmdps passfile andon

съвет : преди да създадете passfile разгледайте опциите на htppasswd с командата htpasswd –help

Тази команда създава файл съдържащ паролите и имената. Когато вече е създаден passfile-a той се намира в текущата директория в която е изпълнена командата htpasswd -cmdps passfile andon, този файл аз го преместих в директорията на ncsa_auth ( /usr/lib/squid ). При добавяне на друг юсер не използвайте опцията "-с"!
пример: htpasswd -mdps /usr/lip/squid/passfile lora
Сега трябва да укажем пътя до тези две програми в squid.conf. В конфигурационния файл намираме реда auth_param basic program и срещу него добавяме пътя и на двата файла.
Пример:
auth_param basic program /usr/lib/squid/ncsa_auth /usr/lib/squid/passfile
след това рестартираме squid
squid -k reconfigure
или /etc/init.d/squid restart

ТОВА Е ЗА оторизацията

3. Време е да се захващаме с ограничаването на юзърите:
след като сме готови с оторизацията идва ред на ACLs
(access control list). Тук се посочва кои имат достъп и нивото на достъп до интернет. За по-подробна информация обарнете се към
http://www.squid-cache.org/Doc/FAQ/ http://www.squid-cache.org/.
Както разбрахте аз разделям юзърите на няколко групи ( admins, powerusers and users) за това ги разделям по следния начин:


#otorizirame users s pass
acl Users proxy_auth minka dobrinka sneja miteva

#otorizirame PowerUsers s pass
acl PowerUsers proxy_auth radev radusheff elena ralica

#otorizirane na admins and boss
acl admins proxy_auth blackstar mirkosoft sekretarka rangelov vasilev glshcetovoditel

#zabraneni saitove
acl bad_url dstdom_regex -i porn nude naked xxx xxl fuck lesb erotic chat irc games games.dir.bg fun.dir.bg........................................

# zabranqwane na download-a
acl bad_download urlpath_regex -i .mp3 .wav .flac .torrent .mpeg .mpg ..............
.rar .zip .exe

#tozi acl e za powerusers
acl bad_download2 urlpath_regex -i .mpg mpeg .avi .exe .msi
chrez tozi acl powerusers shte mogat da swalqt .rar .mp3 i dr.

След като сме готови с ACLs трябва да ги забраним или разрешим това става от редовете http_access. За моя пример даден до сега редовете ще са :
# :)))
http_access allow localhost
#redyt razreshawa dostypa na administratorskata grupa
http_access allow admins
#redyt zabranqwa posochenite saitove
http_access deny bad_url
#tozi red zabranqwa samo na powerusers da teglqt ukazanite saitove
http_access deny PowerUsers bad_download2
#razreshavane dostypa na grupata PowerUsers
http_access allow PowerUsers
#zabranqvane na download-a
http_access deny bad_download
#razreshavane dostypa na grupata Users
http_access allow Users
#zabranqvane na vsichko ostanalo
http_access deny all
writed by superflay

    Това е от мен, оставям на вас да се справите с проблемите и да разгледате Delay_pools. Този материал е писан за много кратко и в работно време. Извинявам се предварително за допуснатите грешки ако има такива.