Squid на Школьном Сервере

Изображение пользователя Школяр.

Автор: Владимир Волков


Squid - штука чрезвычайно полезная. С его помощью можно организовать централизацию выхода в интернет, ограничение выхода для определенных машин, ограничение доступа к определенным сайтам, кэширование с целью облегчения трафика и ускорения открытия страниц.
Если покопаться, то можно сделать еще много интересного и полезного, например, изымать рекламные блоки на лету, ограничивать трафик, ограничивать размер скачиваемых файлов, и... Много еще чего. К выполнению своих основных обязанностей squid на Школьном Сервере готов сразу после установки, и самое главное - не напугать его неожиданным запуском. Прежде чем запускать squid, его стоит подкормить кое-какими настройками. Что надо сделать?

  1. Запустите веб-интерфейс управления Школьным Сервером.
  2. Найдите с левой стороны группу меню Сеть, в ней щелкните на пункте Бранмауэр.
  3. На странице настройки брандмауэра (если вы туда заходите впервые) не установлен ни один флажок. Установите флажок против пункта Прокси-сервер. ВНИМАНИЕ: обязательно установите флажки напротив пунктов Веб-сервер и Центр управления системой, иначе вы больше не попадете на эти замечательные страницы. После установки флажков найдите внизу кнопку Применить, и щелкните на ней.
  4. После того, как мы разрешили компьютерам извне обращаться к нашему прокси-серверу, надо оживить его. В группе меню Серверы щелкните на пункте Прокси-сервер. На экран будет выведено окно настройки прокси-сервера:

  5. В этом окне проделайте два добавления: добавьте разрешенную сеть (это должна быть ваша локальная сеть, из которой будут обращаться к squid, формат записи виден на рисунке), и добавьте запрещенный сайт (любой, потом вы его удалите). После добавления щелкните на кнопке Применить. В результате щелчка на этой кнопке в конфигурационном каталоге squid будет создано два новых файла, чего мы собственно, и добивались.
  6. Чтобы squid увидел свои новые настройки, его надо перезапустить. Для этого в верхней части страницы щелкните по ссылке Запустить, остановить или перезапустить службу..., и в новом окне, выбрав из выпадающего списка справа Перезапустить, щелкните на кнопке (опять же) Применить. Если вы хотите, чтобы squid сам стартовал при перезагрузке системы, установите соответствующий флажок.

    Вот, собственно говоря, и все, настройте клиентский браузер, и проверьте - работает. И даже обидно - у меня было еще столько планов, а слова кончились...

Настройка Squid

Просьба помочь с настройками ограничения скорости доступа для двух групп адресов (два класса информатики). Лично мне данная статья была полезна. Жду продолжения серии статей.

Ограничение скорости

Прокси хорош,

Прокси хорош, но не удобен для быстрого управления пользователями, нет визуального средства наблюдения за пользователями. Я поступил так. Установил HandyCache (http://handycache.ru) под Wine, запретил ему кешировать, в качестве родительского прокси указал squid. Таким образом управляю пользователями в HandyCache. Удобно! Может быть с точки зрения линуксоида это неправильно, но мне удобнее пользоваться графическими средствами управления.

Изображение пользователя den2007.

Управление SQUID

Есть неплохая консольная программа Squidview показывает текущие соединения.
Далее.
Для управления настраиваем NTLM-авторизацию пользователей squid через winbindd. (Настройка на многих сайтах описана,поскольку одна из наиболее используемых авторизаций, но могу если понадобится выложить настройку.)
Управление простое. команда gpasswd -a user inet включает доступ пользователю User и команда gpasswd -d user inet отключает доступ
Если так уж критично отключать/включать из графического интерфейса можно воспользоваться например самописным скриптом Perl + Zenity(для Gnome).

Изображение пользователя Школяр.

А зачем?

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

Потребность

Потребность нужна. Дело в том, что когда дети работают в Интернете, уследить за каждым сложно, да и стоять за спинами тоже не выход. Контроль использую для пресечения деятельности не связанной с темой урока(просмотр нежелательных сайтов, скачивание файлов, чат и т.д.). Фильтр интернета не может защитить на 100%, поэтому здесь есть возможность быстро внести в черный список нежелательный ресурс. В школьном сервере такая возможность тоже есть, но в HandyCache это сделать можно одним щелчком мыши. Хотелось бы что-то подобное видеть и в Линуксе.

Изображение пользователя Школяр.

Ага, тогда понятно

То есть не пользователей отключать, а ресурсы нежелательные на лету отслеживать и банить. Это да, это штука нужная, полагаю.

Пользователей

Пользователей тоже можно отключать оперативно и выборочно. Пример, у ученика есть задание для выполнения, не требующее обращения в интернет. А он параллельно еще и в чате или в другом месте. Я беру и отключаю его компьютер от интернет, без лишних слов, когда надо снова пускаю. Каждый компьютер имеет свою учетную запись с паролем, которая привязана к конкретному IP компьютера, так что другой учетной записью он воспользоваться не сможет. И все это в графическом режиме.

Необходимость есть, я в поиске

.....На данном этапе Учитель просто ходит и выдергивает кабель с хаба который идет к серверу что не есть хорошо и правильно.
!!! Графический интерфейс управления Squid очень бы помог
-Есть другие решения UserGate WinGate WinProxy TrafficInstector но они платные а нарушать не хотелось бы.
- Возможно есть другое решение?
- А может уже есть у кого разработка для Squid под Windows?
/////Задача стоит так -
-Прокси прозрачный, авторизация AD, ip, МАС, управление в виде Web ( можно и оболочку конечно) группами, отдельным пользователем (один ученик уже выполнил задание и может переходит к следующему или в виде поощрения), наличие расписание (ну что бы уборщицы не лазили) в общем полный спектр, а самое главное что бы Учитель делал это одним двумя интуитивно понятными движениями мышки.
Буду рад любой помощи. Спасибо. Я в поиске .....

Изображение пользователя den2007.

Решение есть

один из вариантов, не претендует на оригинальность.

Поднять простой домен на Samba с Winbind для класса.
Необязательно с профилями пользователей.
Авторизация Squid через самбовский хелпер.
Создать отдельные группы для Интернет, если пользователь входит в группу
то Интернет есть, если нет то нет.
В принципе все управляется одной командой, кроме добавления,
удаления пользователей из домена.
Далее нужны простые скрипты, которые добавляют пользователя в группу, или удаляют из нее, по требованию или по расписанию.
Если важен графический интерфейс, можно и на CGI написать, или c ZENITY, KDIALOG попробовать написать.

Хотя можно и готовые системы управления SQUID посмотреть, например SAMS и т.п.

не решение :( а выход из положения, поиск .....

1. отдельную машину или что еше хуже виртуалку разворачивать не есть гуд (опят же искать хороший бесплатный софт)
2. опять писать :( любая писанина отлаживаеться и доводится продолжительное время
3. SAMS под free и nix клоны (может я не точно выразился маздайная сеть и сервер маздай)
4 А вот под windows можно написать? нет инузиазиста? - ну веб сервер развернуть не трудно фрии и SquidNT фри а вот управавлять как :(
Спасибо. Поиск .....

Изображение пользователя den2007.

Возможно

>>>>>1. отдельную машину или что еше хуже виртуалку разворачивать не есть гуд (опят же искать хороший бесплатный софт)

насчет отдельной машины не скажу, но виртуалка есть бесплатная подходящая для такого рода работы - VirtualBox, очень легко конфигурируется, нормально работает. У меня стоит на ней Mandriva со Squid и Dansguardian, площадка для опытов, и откатиться назад можно моментально.

>>>>>2. опять писать :( любая писанина отлаживаеться и доводится продолжительное время.

Согласен время займет много.

>>>>>>3.SAMS под free и nix клоны (может я не точно выразился маздайная сеть и сервер маздай)

а может стоит подумать о сервере на Linux или BSD.
один раз настрой, потом только логи проверяй периодически.

>>>>>>4 А вот под Windows можно написать? нет инузиазиста? - ну веб сервер развернуть не трудно фрии и SquidNT фри а вот управавлять как :(

Версия Squid под Windows у меня работала где-то полгода, но она с урезанной функциональностью, потом я добился отдельного компьютера для шлюза на Linux, поскольку стал ребром вопрос фильтрации.

А зачем писать под Windows, есть нормальные прокси.
Вообще посоветовал бы Вам посмотреть программу FREEPROXY.
ОФ.сайт http://www.handcraftedsoftware.org
Загрузка в разделе Downloads.
Графический интерфейс и пр. В общем советую посмотреть.

Я не очень понимаю так называемых гуру, которые сразу отсылают к Google или man, (такие наверно и гуру), хотя и признаю, что бывают абсолютно простые вопросы, но Ваш не из таких, под Windows действительно трудно найти хороший бесплатный прокси.