Перейти к содержанию
СофтФорум - всё о компьютерах и не только

Помогите с настройкой прокси-сервера


Рекомендуемые сообщения

Имеется комп с установленной WinXP, выполняющий роль шлюз-сервера, к нему подключен модем роутер D-Link 2500. Необходимо раздать интернет на 50 машин.

Нужно чтобы 5-6 компьютеров имели полный доступ к интернет. Остальным заблокировать всё, кроме mail.ru, yandex.ru и т.д. - это чисто учебные машины, и сделать ограничение на загружаемые типы файлов и размер не более одного мегабайта.

Пожалуйста, подскажите примерный конфиг для squid'а.

Ссылка на комментарий
Поделиться на другие сайты

  • Ответов 65
  • Создана
  • Последний ответ

Топ авторов темы

Когда-то возился с подобным решением, но из-за нехватки времени и чесно говоря, желания, забросил.

Попадался мне неплохой мануал для настройки, прямую ссылку я дать по правилам форума не могу, поэтому поищи в поисковиках по словосочетанию Связка SquidNT + Rejik + WrSpy :bye1:

З.Ы, при настройке замечал такую вещь: работа портретированной версии временами отличается от описываемой для никсов, в файлах конфигураций например надо использовать двойные слеши (и по-моему даже обратные...)

но в общем-то тема интересная, неплохо было бы написать что-то вроде мануала по результату, а?

Ссылка на комментарий
Поделиться на другие сайты

Подскажите пожалуйста, как сделать в squid авторизацию по ip и mac?

Изменено пользователем Darth Emil
Ссылка на комментарий
Поделиться на другие сайты

Нашёл тут упоминание про настройку авторизации по IP+MAC, но у меня возник вопрос - а в SquidNT под WinXP этот метод будет работать?

Ссылка на комментарий
Поделиться на другие сайты

по идее - да, ведь настройки в обоих случаях одинаковы.

Кстати, вот еще ссылка на один ресурс по сабжу - http://squid.opennet.ru/

Ссылка на комментарий
Поделиться на другие сайты

Maikll: я там уже был :)

Сомнения меня терзают вот почему: по умолчанию в squid под nix'ы такая фича как авторизация по mac не включена - нужно собирать сквид с специальным параметром. А под виндой как быть? :)

Ссылка на комментарий
Поделиться на другие сайты

Итак, более-менее настроил :) Получилась связка squid+Internet Acces Monitor. Редиректор пока решили не ставить.

Ссылка на комментарий
Поделиться на другие сайты

Можно :)

http_port  192.168.0.1 80hierarchy_stoplist cgi-bin #visible_hostname "inet"acl QUERY urlpath_regex cgi-bin \?no_cache deny QUERYhosts_file c:\WINDOWS\system32\drivers\etc\hostscache_mem 32 MB cache_swap_high 95cache_swap_low 90maximum_object_size 8192 KB minimum_object_size 0 KBmaximum_object_size_in_memory 8 KB ipcache_size 1024 ftp_user squid@ error_directory c:/squid/share/errors/Russian-1251refresh_pattern ^ftp:		1440	20%	10080refresh_pattern ^gopher:	1440	0%	1440refresh_pattern .		0	20%	4320acl all src 0.0.0.0/0.0.0.0acl localhost src 127.0.0.1/255.255.255.255acl manager proto cache_objectacl to_localhost dst 127.0.0.0/8acl SSL_ports port 443 563	  # https, snewsacl SSL_ports port 873		  # rsyncacl Safe_ports port 80		  # httpacl Safe_ports port 21		  # ftpacl Safe_ports port 443 563	  # https, snewsacl Safe_ports port 70		  # gopheracl Safe_ports port 210		  # waisacl Safe_ports port 1025 -65535	# unregistered portsacl Safe_ports port 280		  # http-mgmtacl Safe_ports port 488		  # gss-httpacl Safe_ports port 591		  # filemakeracl Safe_ports port 777		  # multiling httpacl Safe_ports port 631		  # cupsacl Safe_ports port 873		  # rsyncacl Safe_ports port 901		  # SWATacl Safe_ports port 110		  # POP3acl Safe_ports port 25		  # SMTPacl Safe_ports port 2593	  # Proxifireacl purge method PURGEacl CONNECT method CONNECThttp_access allow manager localhosthttp_access deny manager# Only allow purge requests from localhosthttp_access allow purge localhosthttp_access deny purge# Deny requests to unknown portshttp_access deny !Safe_ports# Deny CONNECT to other than SSL ports#http_access deny CONNECT !SSL_ports	#нужно чтобы Proxifire работал# ------------============		   описание сети		  ================------------#		   ================		  Кафедры и прочее	   =====================acl all_local src 192.168.0.0/24#		   -------------			   Аудитории				  ---------------------#		   =============										  =====================  acl local_107 src "C:\squid\etc\cabinets\107.txt"acl local_201 src "C:\squid\etc\cabinets\201.txt"acl local_203 src "C:\squid\etc\cabinets\203.txt"acl local_206 src "C:\squid\etc\cabinets\206.txt"acl local_207 src "C:\squid\etc\cabinets\207.txt"acl local_210 src "C:\squid\etc\cabinets\210.txt"acl local_302 src "C:\squid\etc\cabinets\302.txt"acl local_303 src "C:\squid\etc\cabinets\303.txt"acl local_burn src "C:\squid\etc\cabinets\burn.txt"acl local_lab src "C:\squid\etc\cabinets\lab.txt"acl local_libra src "C:\squid\etc\cabinets\libra.txt"acl local_singles src "C:\squid\etc\cabinets\singles.txt"acl level1 src "C:\squid\etc\level1.txt"#описание правил#запрет сайтов по словосочетанию в ссылкеacl porn url_regex "c:\squid\etc\porno.txt"#запрет доменовacl Deny_domain dstdom_regex "c:\squid\etc\deny_domain.txt"#Файлы. Фильтр по словосочетанию в ссылке.acl files urlpath_regex -i "c:\squid\etc\felis_urlpath.txt"# Файлы. Фильтр по заголовку Content-Lengthacl mime_files rep_mime_type "c:\squid\etc\felis_mime.txt"# Мультимедиа. Фильтр по словосочетанию в ссылке.acl media urlpath_regex -i "c:\squid\etc\media_content.txt"acl mime_media rep_mime_type "c:\squid\etc\media_mime.txt"# запретить баннерыacl banners urlpath_regex -i "c:\squid\etc\baner1.txt"#acl multimedia urlpath_regex -i "c:\squid\etc\multimedia.txt"#acl url_level2 url_regex -i "C:\squid\etc\cabinets\deny_url.txt"#acl eko_kz dstdom_regex -i eko.edu.kz test3.ruacl all_dom dstdom_regex -i .* #Разрешения. Блок 1#http_access deny !eko_kz http_access deny banners#http_access allow all_localhttp_access allow level1http_access deny porn http_access deny deny_domain http_access deny media#deny_info ERR_DENY_DOMAIN deny_domain#Разрешения. Блок 1 конец#Разрешения. Блок 2#http_access deny url_level2#http_access allow http_access allow local_107http_access allow local_201http_access allow local_203http_access allow local_206http_access allow local_207http_access allow local_210http_access allow local_302http_access allow local_303http_access allow local_burnhttp_access allow local_labhttp_access allow local_librahttp_access allow local_singles#Разрешения. Блок 2 конец#Разрешения. Блок 3 http_access deny all_dom http_access allow all_local#Разрешения. Блок 3 конец#Запретить всем остальнымhttp_access deny all#Под каким юзером будет работать сквидcache_effective_user proxycache_effective_group proxyvisible_hostname www.eko.edu.kzcoredump_dir /var/spool/squid

За основу был взят конфиг у знакомого из универа. Все кабинеты вынесены в текстовые файлы. У группы level1 неограниченный доступ. У всех остальных порезан, ибо это машины студентов :)

Плюс поднят локальный веб-сервер, для редиректора, но пока с ним ещё не разобрались

Изменено пользователем Darth Emil
Ссылка на комментарий
Поделиться на другие сайты

С авторизацией mac+ip не выходит :) Не думаю что кто-нибудь из студентов будет менять ip. А если будет - применим дисциплинарные меры :)

Ссылка на комментарий
Поделиться на другие сайты

Может глупость скажу, не пинайте, но что если на машине со сквидом внести статические записи в arp-кэш, чтобы жестко сопоставить ip и МАК адреса в сети?

Ссылка на комментарий
Поделиться на другие сайты

студент_86: такая вещь как arp работает только под linux и solaris, и то только если собрать с параметром. Под виндой не работает. По крайней мере насколько мне известно.

Ссылка на комментарий
Поделиться на другие сайты

с какой это стати ARP под windows перестала работать? :rolleyes: :bye1:

Darth Emil: конфиг посмотрел, неплохо получилось. Какие-то специфические проблемы пришлось решать при настройке? Или все свелось к написанию конфигурации?

Ссылка на комментарий
Поделиться на другие сайты

Maikll: да нет вообще-то. Пришлось читать кучу FAQ'ов и других руководств. Единственное что очень огорчило - все руководства и FAQ'и ориентированы на версии под linux, да и к тому же устаревшие :rolleyes: Вот поэтому и получилось что я думал что ARP не заработает.

Ещё нужно было сделать так, чтобы при попытке зайти на заблокированный ресурс пользователю выдавалось предупреждение, а потом бы редиректило на сайт нашего колледжа :bye1: Большая часть редиректоров работает под линуксом, а те которые под винду - требуют наличие веб-сервера и perl'а.

Пришлось схитрить: воткнуть в файл ERR_ACCESS_DENIED строчку редиректа с 5секундной задержкой.

Завтра попробую с mac'ами пошаманить :)

Ссылка на комментарий
Поделиться на другие сайты

С манами действительно проблемы, это да... :rolleyes:

В качестве редиректора будет Режик? или что-то другое нашел?

Ссылка на комментарий
Поделиться на другие сайты

Maikll: он самый :rolleyes: Но, как уже говорил выше - скорее всего его ставить не буду.

Ссылка на комментарий
Поделиться на другие сайты

  • 3 недели спустя...

Так как скорость низкая, я запретил доступ к скачиванию файлов.

Но всё-таки нужно открыть доступ для скачивания архивов, но не более 512 кбайт.

Вернуть доступ к архивам я могу, а вот как сделать ограничение?

Т.е. чтобы скачалось 512 кбайт архива, а потом скорость падала до хотя бы 800 байт/сек. Это делается через delay_pools, но вот вопрос - что, как именно куда это вписать в моём конфиге? Помогите поскорее, пожалуйста :(

Изменено пользователем Darth Emil
Ссылка на комментарий
Поделиться на другие сайты

Т.е. чтобы скачалось 512 кбайт архива, а потом скорость падала до хотя бы 800 байт/сек.

c таким не встречался. А почему именно скорость, может сразу резать соединение по достижении определенного размера?

добавляем в конфиг параметр

reply_body_max_size 512 KB

начиная с версии 2.4 написано есть возможность задать acl в настройке т.е например разрешить какой-то группе качать без запрета а остальным запретить

reply_body_max_size 0 allow level1

reply_body_max_size 512 KB

взято отсюда - http://oldwww.riss-telecom.ru/doc/squid24s1/tuning.htm

Ссылка на комментарий
Поделиться на другие сайты

Maikll: вариант, но через delay_pools лучше - а вдруг реально нужный документ?

А куда имеено туда воткнуть это?

Ссылка на комментарий
Поделиться на другие сайты

полагаю, можно сразу после перечисления аудиторий

...

acl level1 src "C:\squid\etc\level1.txt"

delay_pools лучше - а вдруг реально нужный документ?

...

скорость падала до хотя бы 800 байт/сек.

:( с такой скоростью?

надо покопать настройки в манах, возможно твой вариант и реализуем.

Ссылка на комментарий
Поделиться на другие сайты

Darth Emil: Логично будет сразу после прописания всех групп пользователей (перед всеми остальными запрещающими правилами в твоем примере ) Или ты не об этом?

Ссылка на комментарий
Поделиться на другие сайты

Maikll: я про delay_pools - вроде бы должен работать, код есть - завтра с работы выложу ибо на память не помню, а вот куда именно его воткнуть?! :(

Ссылка на комментарий
Поделиться на другие сайты

Итак, оказалось что у меня squid был без поддержки delay_pools. Скачал с поддержкой, поставил. Судя по недовольным воплям "А почему у меня инет так медленно работает?" - delay_pools работает :D

Ссылка на комментарий
Поделиться на другие сайты

Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу



×
×
  • Создать...