Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: squid  (Прочитано 1589 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн ulan44

  • Автор темы
  • Участник
  • *
  • Сообщений: 166
    • Просмотр профиля
squid
« : 17 Октября 2009, 07:52:41 »
Добрый день
такая проблема установлен прокси сервер Squid Cache: Version 2.6.STABLE18
так вот авторизация через ncsa_auth соответственно логин и пароль хранятся в файле в этом файлике есть пару пользователей которым
нужен доступ только на некоторые сайты а всем остальным доступ к ко всему инету...
как можно реализовать ? если можно то с примером
заранее благодарен  ;)

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28496
    • Просмотр профиля
Re: squid
« Ответ #1 : 17 Октября 2009, 08:11:50 »
А можно то же самое по-русски? Я пока читал - два раза голову сломал.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн Sam Stone

  • Старожил
  • *
  • Сообщений: 1131
    • Просмотр профиля
Re: squid
« Ответ #2 : 17 Октября 2009, 08:45:08 »
А ты хоть поиском пользовался? на тему "ограничение доступа к сайтам squid" в гугле много.
Вкраце так: создаешь файл, в него в каждую строчку прописываешь по одному сайту, в конфиге создаешь acl с каким-нибудь именем (block_sites к примеру) и собсна файлом (/path/to/file). После прописываешь http_access имя пользователя название acl. Главное поставить в нужное место, т.к. проверка правил идет сверху вниз до первого совпадения.
Синтаксис есть в дефолтном конфиге сквида, очень много путевых примеров выдается по запросу "настройка squid".
Поэтому иди читай и разбирайся, ибо в линуксе не всегда катит вариант просто скопировать настройки. Надо это делать с пониманием. Как напишешь и если не будет работать либо будет, но не так, приходи спрашивай, с радостью подскажем.
Jellyfish 6.5.0-45-generic
2690v4 64Gb

Оффлайн ulan44

  • Автор темы
  • Участник
  • *
  • Сообщений: 166
    • Просмотр профиля
Re: squid
« Ответ #3 : 17 Октября 2009, 10:26:26 »
Скажу тогда проще...
в общем пользователь Vasya должен заходить только на один сайт http://xxx.ru все остальное ему запрещено.

Оффлайн Sam Stone

  • Старожил
  • *
  • Сообщений: 1131
    • Просмотр профиля
Re: squid
« Ответ #4 : 17 Октября 2009, 10:57:24 »
Jellyfish 6.5.0-45-generic
2690v4 64Gb

Оффлайн ulan44

  • Автор темы
  • Участник
  • *
  • Сообщений: 166
    • Просмотр профиля
Re: squid
« Ответ #5 : 17 Октября 2009, 11:06:32 »
не нето там написанно по ip адресам а у меня стоит dhcp и пользователи авторизуются по логин и паролю

Оффлайн Sam Stone

  • Старожил
  • *
  • Сообщений: 1131
    • Просмотр профиля
Re: squid
« Ответ #6 : 17 Октября 2009, 11:39:24 »
для этого в правиле указывается proxy_auth вместо src и путь к файлу с логинами или список логинов
Jellyfish 6.5.0-45-generic
2690v4 64Gb

Оффлайн ulan44

  • Автор темы
  • Участник
  • *
  • Сообщений: 166
    • Просмотр профиля
Re: squid
« Ответ #7 : 17 Октября 2009, 18:28:40 »
блин то ли я дурак то ли лыжи не едут  :-[ чет не получается сделать никак

Оффлайн MooSE

  • Старожил
  • *
  • Сообщений: 1181
    • Просмотр профиля
Re: squid
« Ответ #8 : 19 Октября 2009, 02:29:13 »
блин то ли я дурак то ли лыжи не едут  :-[ чет не получается сделать никак

Разнеси юзеров по разным файлам, и для каждого файла создай свою ACL, для каждой ACL свои списки доступа. Не вижу проблемы как таковой. Хотя понимаю что иногда тупо бывает ступор. Самого иногда так клинит.

Оффлайн ulan44

  • Автор темы
  • Участник
  • *
  • Сообщений: 166
    • Просмотр профиля
Re: squid
« Ответ #9 : 19 Октября 2009, 09:38:01 »
У меня уже в обще голова опухла думать
нифига блин не получаеться  :idiot2:
http_port 3128
visible_hostname xxxx.ru

cache_effective_user proxy
cache_effective_group root

access_log /var/log/squid/access.log

acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 563
acl Safe_ports port 80          #http
acl Safe_ports port 21          #ftp
acl Safe_ports port 443 563     #https, snews
acl Safe_ports port 70          #gopher
acl Safe_ports port 210         #wais
acl Safe_ports port 1025-65535  #unregistered ports
acl Safe_ports port 280         #http-mgmt
acl Safe_ports port 488         #gss-http
acl Safe_ports port 591         #filemaker
acl Safe_ports port 777         #multiting http
acl CONNECT method CONNECT

acl multimedia urlpath_regex -i \.mp3$ \.mpeg$ \.avi$ \.mov$ \.exe$ \.rar$ \.flv$ \.swf$
http_access deny multimedia

acl yuck dstdomain .hot.ee .zaycev.net .zvukoff.ru .tempfile.ru .gold-mp3.ru .mp3chudo.ru .mp3mega.net .mp3comru.net .a-mp3.com .musicxxl.com.ru
http_access deny yuck

auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic realm Mega proxy-cachig CMOK
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off

acl CMOK proxy_auth REQUIRED

[b]auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd_ok
acl user proxy_auth REQUIRED
acl nav_liveupdate url_regex -i ^http://mail.ru[/b]

acl banusers proxy_auth_regex -i "/etc/squid/traf_limit/users/test.txt"
acl banusers proxy_auth_regex -i "/etc/squid/traf_limit/users/user_50.txt"
acl banusers proxy_auth_regex -i "/etc/squid/traf_limit/users/user_100.txt"
acl banusers proxy_auth_regex -i "/etc/squid/traf_limit/users/user_230.txt"
deny_info ERR_QUOTA all

[b]http_access allow user nav_liveupdate
http_access deny user[/b]

http_access deny banusers all
http_access allow CMOK
http_access deny all

http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_reply_access allow all
icp_access allow all

coredump_dir /var/spool/squid

Оффлайн Sam Stone

  • Старожил
  • *
  • Сообщений: 1131
    • Просмотр профиля
Re: squid
« Ответ #10 : 19 Октября 2009, 10:29:33 »
auth_param basic program прописывается только один раз. Параметром указывается файл с логинами и шифрованными паролями, где есть все юзеры.
Потом делаются acl группа1 proxy_auth /файл/с/юзерами_группы1 и тд, где /файл/с/юзерами_группы1 - файл с одними логинами
После пишутся права доступа:
http_access allow group1
http_access allow group2
http_access deny all
в правила добавить группы урлов, куда можно идти.
http_access allow group1 urls1
Условия в http_access сцепляются по И, в acl - по или.
Все, что указано после http_access deny all в инет не попадет
Jellyfish 6.5.0-45-generic
2690v4 64Gb

 

Страница сгенерирована за 0.032 секунд. Запросов: 24.