Ru-Board.club
← Вернуться в раздел «В помощь системному администратору»

» SQUID (только под *nix)

Автор: MadMas
Дата сообщения: 26.10.2013 13:21
Всем привет!

Многоуважаемые гуру, помогите пожалуйста разобраться с одной проблемой.

Сквид настраивал по этому примеру:
http://macrodmin.blogspot.com/2012/07/squid-active-directory.html

После настройки 2 проблемы.
1 - Сквид не пускает в инет группу Internet_Low, на стороне клиента постоянно выходит окошко авторизации

2 - Мне нужно чтобы группа Internet_Medium имела доступ к некоторым сайтам только в определенное время: 12:00-14:00 18:00-00:00 00:00-09:00. Список сайтов занесен в файл time_list. Не совсем понимаю как это сделать.

Конфиг сквида:

Код:
auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 30

auth_param basic program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-basic
auth_param basic children 5

http_port 192.168.10.3:8080

dns_nameservers 0.0.0.0 0.0.0.0

append_domain .kdb.local

acl white_list url_regex -i "/etc/squid/white_list"
acl black_list url_regex -i "/etc/squid/black_list"
acl time_list url_regex -i "/etc/squid/time_list"

acl videotube dstdomain .rutube.ru
acl GET method GET
acl videotube_url urlpath_regex -i /player.swf
http_access deny GET videotube videotube_url

# TAG: external_acl_type
external_acl_type nt_group ttl=60 %LOGIN /usr/lib/squid/wbinfo_group.pl

acl Full external nt_group Internet_Full
acl Medium external nt_group Internet_Medium
acl Low external nt_group Internet_Low

acl all src 0.0.0.0/0.0.0.0

acl morning time MTWHF 09:00-12:00
acl evening time MTWHF 14:00-18:00

acl nt_group proxy_auth REQUIRED

redirect_program /etc/squid/redirector

http_access allow Full

acl block_extensions url_regex -i "/etc/squid/block_extensions"
http_access deny block_extensions

delay_pools 1
delay_class 1 2
delay_parameters 1 1500000/2000000 15000/2000000
delay_access 1 allow Low
delay_access 1 allow Medium
delay_access 1 deny all

http_access allow Low white_list
http_access deny Low
http_access deny Medium black_list

access_log /var/log/squid/access.log
logfile_rotate 100
Автор: Alukardd
Дата сообщения: 26.10.2013 18:05
MadMas
Я понимаю, что вы взяли пример из статьи, но IMHO, так оно работать не должно.
Строка acl nt_group proxy_auth REQUIRED вовсе не призывает ни кого аутентифицироваться, она лишь создаёт ACL с именем nt_group, что в добавок может запутать Вас (и нас заодно).
Типичный пример реализации это:
acl authorized proxy_auth REQUIRED
...
http_access deny !authorized


Цитата:
постоянно выходит окошко авторизации
А клиент какой?
Цитата:
только в определенное время
у кальмара есть ACL time
Цитата:
    acl aclname time [day-abbrevs] [h1:m1-h2:m2]
     # [fast]
     # day-abbrevs:
     #    S - Sunday
     #    M - Monday
     #    T - Tuesday
     #    W - Wednesday
     #    H - Thursday
     #    F - Friday
     #    A - Saturday
     # h1:m1 must be less than h2:m2
Автор: MadMas
Дата сообщения: 27.10.2013 11:18
Alukardd
Я ничего не могу сказать, т.к. я не спец по сквиду, может быть вы и правы, но по крайней мере при настройке по выше указанному примеру у меня нормально работали 2 группы пользователей, проблема была только с одной (Internet_Low). После внесения указанных вами двух строк, группа Internet_Low стала работать, но не обращая внимание на запреты, т.е. открываются все сайты, а не только те, что указаны в файле white_list. Но и это еще не все. Теперь в интернет могут выходить все пользователи домена, не зависимо от того состоят ли они в какой-либо группе Internet_* или нет. А это совсем никуда не годится.


Цитата:
А клиент какой?

Клиенты виндовые. Что мозилла, что експлопер требуют авторизацию.


Цитата:
у кальмара есть ACL time

Это я знаю, если вы обратите внимание на конфиг я их уже описал, но как правильно их применить, чтобы добиться того чего я хочу я не понимаю.
Автор: Alukardd
Дата сообщения: 27.10.2013 14:02
MadMas
Цитата:
Теперь в интернет могут выходить все пользователи домена,
а где в конце правил доступа http_access deny all?
Цитата:
группа Internet_Low стала работать, но не обращая внимание на запреты
это как это? У вас явно прописано http_access allow Low white_list http_access deny Low , если ни какое из вышестоящих разрешающих правил не сработало, то эти 2 их не пустят дальше white_list'а.

Цитата:
я их уже описал
действительно не заметил. Тогда просто добавляйте выши ACL morning как 3-е условие к директиве http_access, например http_access allow Low white_list morning, на сколько я помню кальмар не поддерживает условий типа OR, а такое перечисление acl'ей дает условие AND, так что придётся дублировать строки меняя лишь время, т.о. следующая строка будет http_access allow Low white_list evening и т.д., если промежутков больше.

p.s. На самом деле, я ещё совсем не уверен, что такое получение групп работает (правда Вам виднее, т.к. система у вас, а не у меня) external_acl_type nt_group ttl=60 %LOGIN /usr/lib/squid/wbinfo_group.pl .
У меня было прописано так: external_acl_type ldap_users %LOGIN /usr/lib/squid3/squid_ldap_group -R -b "dc=company,dc=ru" -f "(&(sAMAccountName=%v)(memberOf=cn=%a,ou=groups,ou=myOU,dc=company,dc=ru))" -D squidreader@company.ru -W /etc/squid3/adpw.txt 192.168.0.1
Автор: MadMas
Дата сообщения: 28.10.2013 12:07
Alukardd

Методом проб и ошибок, а так же методом тыка заставил таки работать группу Low.
Просто убрал http_access deny Low после http_access allow Low white_list. А также в конце дописал http_access deny all (вернее оно у меня там было, только было закоментировано), спасибо за наводку.
Осталось разобраться с временными ограничениями.


Цитата:
p.s. На самом деле, я ещё совсем не уверен, что такое получение групп работает

В том то и дело, что работает, чем мне и понравился этот пример настройки, то что не надо точно указывать местоположение групп в иерархии домена (примерно так я тоже пробовал, но не получалось). А просто закидываешь пользователя в нужную группу а сквид сам понимает кому чего ограничить (при наличии соответствующих правил конечно же).

P.S. Со временем тоже разобрался, все так как вы и сказали добавляем условия друг за другом, у меня получилось так:
(может кому пригодится)

Код:
acl time_list url_regex -i "/etc/squid/time_list"
acl morning time MTWHF 09:00-12:00
acl evening time MTWHF 14:00-18:00
...
http_access deny Medium black_list
http_access deny Medium time_list morning
http_access deny Medium time_list evening
http_access allow Medium
...
http_access deny all
Автор: kot488
Дата сообщения: 29.10.2013 16:08

Цитата:
Указал вот так http_port 192.168.5.1:8080 transparent и вроде работает


не прокатило, сегодня залез в статистику, куча левых людей полезло в интернет, так как знают пароль от wifi(((

может есть еще какие то варианты?
Автор: vlary
Дата сообщения: 29.10.2013 18:24
kot488
Цитата:
куча левых людей полезло в интернет, так как знают пароль от wifi(((
Так тебе шашечки или ехать? Если нужны удобства для народа, делай сквид прозрачным.
Если нужно ограничить - тогда прокси с авторизацией.

Автор: kot488
Дата сообщения: 30.10.2013 15:54

Цитата:
Так тебе шашечки или ехать? Если нужны удобства для народа, делай сквид прозрачным.
Если нужно ограничить - тогда прокси с авторизацией.


нужно и то и то((((

руководство приходит иногда с своей техникой и им не обьяснишь что когда на роботе то нужно ставить отметки о проксе, да и на телефоне этого тоже не сделаешь, но у нужно ограничение узнов и всего прочего
Автор: q111111
Дата сообщения: 14.11.2013 14:04
""
Автор: vlary
Дата сообщения: 14.11.2013 14:21
q111111
Цитата:
когдa иду на сайты с https, тo нa сквиде виднo на кaкие стрaнички нa этoм сaйте я зaхoдила?
Вопрос неоднозначный. SQUID3 можно настроить таким образом, что он будет расшифровывать HTTPS соединения. Посему все зависит от того, насколько компетентен ваш админ и была ли ему поставлена такая задача
Цитата:
что вooбще виднo нa сквиде в тaкoм случaе?
В общем случае (см. пункт 1) что-то типа такого:
Код: 1384431538.596 60681 10.1.2.45 TCP_MISS/200 467
CONNECT www.facebook.com:443 - HIER_DIRECT/173.252.110.27 -
Автор: q111111
Дата сообщения: 14.11.2013 14:57
""
Автор: vlary
Дата сообщения: 14.11.2013 15:20
q111111
Цитата:
у меня в браузере будет заметно что это уже не https?
Это по-прежнему будет https. Просто что все запросы, сделанные клиентами будут выполнятся от имени сервера.
Автор: q111111
Дата сообщения: 14.11.2013 16:17
""
Автор: drsmoll
Дата сообщения: 14.11.2013 16:21
походу q111111 очкует, что на работе запалят как он(она) бездельничает и по контактикам или безглазикам прогуливается. Ай-ай-яй.......
ЗЫ: Будет видно, если сертификат самоподписной, или посмотреть свойства сертификата в браузере.
Автор: vlary
Дата сообщения: 14.11.2013 16:26
q111111
Цитата:
я как-то (не спрашивая админа) могу узнать как настроен сквид?
Вы не в тот раздел обратились. Натягивать нос админам и прочему плохому учат в Андеграунде. В частности, там есть тема
Обход межсетевых экранов и фильтрующих прокси-серверов
А здесь все-таки профессиональная солидарность.
Автор: q111111
Дата сообщения: 14.11.2013 16:49
""
Автор: ipmanyak
Дата сообщения: 14.11.2013 20:00
q111111Админ будет знать всё. По сбору статистики будет знать на какие сайты ходили. По логам сквида, если захочет узнать, все страницы вашего vk. Ходите на развлекалово дома, а не на работе.
Админ , если поставит цель, будет читать вашу корпоративную почту, читать вашу переписку в аське. Просматривать все файлы на вашем компе и др. Теперь вам полегчало?

Автор: Alukardd
Дата сообщения: 14.11.2013 20:10
ipmanyak
Это да))) Другое дело что админам в большинстве своём это нафиг не надо.

q111111 & Co.
Ну а беспалевная расшифровка SSL соединений весьма легко обнаруживается, если только у админа нету доступа к сертификату/ключу реальных УЦ. Самый распространённый способ — установить всем через ГП свой корневой сертификат и по средством оного общаться с клиентом, вот только проблемы будут если клиент обратиться на ресурс с чего-то чему пофиг на подсунутые админом сертификаты (для простого примера, можно взять FX, у которого свой список корневых УЦ), тогда сазу "Не доверенное соединение" и всё такое...
Автор: drsmoll
Дата сообщения: 15.11.2013 07:50
ipmanyak, абсолютно верно и даже больше, на все воля админа, если ему не лень
Автор: q111111
Дата сообщения: 15.11.2013 10:32
""
Автор: ipmanyak
Дата сообщения: 15.11.2013 11:34
q111111 Почитайте про HTTPS - http://ru.wikipedia.org/wiki/HTTPS
Чтобы шифровался весь трафик в HTTPS, нужно использовать сертификат с ключами public и private. , сертификаты для каждого пользователя нужно генерить, затем загружать в браузеры каждому юзеру. Рядовым пользователям это будет очень сложно. так что в вашем vk.com ничего имхо не шифруется. Если бы это было так реализовано, тогда да, в логах бы не было видно куда вы ходили, максимум, что было бы видно, типа такого

Код: TCP_MISS/200 72241 CONNECT www.flightops.sita.aero:443 - HIER_DIRECT/62.189.118.182 -
Автор: Alukardd
Дата сообщения: 14.12.2013 22:03
Приветствую.

Я тут задумал шлюз проапргрейдить, накатил на новое железо Debian Jessie.
Squid Cache: Version 3.3.8
Samba Version 4.0.13-Debian

Собственно что сломалось при попытке переехать — ntlm авторизация...

Что имею:
cache_effective_user proxy
auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 10
auth_param basic program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-basic
auth_param basic children 5
acl authorized proxy_auth REQUIRED
http_access deny !authorized


# wbinfo -t
checking the trust secret for domain DOMAIN via RPC calls succeeded

# wbinfo -a Alukardd
Enter Alukardd's password:
plaintext password authentication succeeded
Enter Alukardd's password:
challenge/response password authentication succeeded


# id proxy
uid=13(proxy) gid=13(proxy) groups=13(proxy),110(winbindd_priv)


# ls -la /var/run/samba/winbindd_privileged
total 0
drwxr-x--- 2 root winbindd_priv 40 Dec 14 23:48 .
drwxr-xr-x 7 root root 460 Dec 14 23:57 ..



В лог squid пишет следующую ошибку:
kid1| ERROR: NTLM Authentication validating user. Error returned 'BH NT_STATUS_UNSUCCESSFUL NT_STATUS_UNSUCCESSFUL'


basic аутентификация работает нормально, но только если закомментировать ntlmssp.

Меня смущает что каталог winbindd_privileged пустой и в нём нету сокета pipe (хотя я не знаю как там в данном случае процессы между собой общаются), у меня есть ещё один каталог — просто winbindd и в нём есть означенный сокет.
Автор: Alukardd
Дата сообщения: 15.12.2013 20:16
Пока оставил только basic аутентификацию. Причём IE11 на Windows Server 2012 R2 умудряется пройти её автоматически, но это скорее его личные заслуги.

Очень надеюсь, что у кого-то есть светлые мысли по этому поводу... Что не так с helper-protocol=squid-2.5-ntlmssp???

Добавлено:
Вот эта ЖОПА!!!

Косяк ряшён, хотя схема работает ещё ошибками, но аутентификация начала проходить! Пишу что нашёл...

В общем всё просто запустил я по наитию своей пятой точки команду # locate winbindd_privileged и увдиле, что долгожданный сокет находится по пути /var/lib/samba/winbindd_privileged/pipe, он-то сисемой и используется, а вот права автоматически выдаются по прежнему на /var/run/samba/winbindd_privileged постараюсь написать мейнтейнеру пакета Samba в Debian... Так что проблема решилась chgrp winbindd_priv /var/lib/samba/winbindd_privileged

В общем пока этот этап я прошёл, думаю дальше всё срастётся... Всем спасибо за присутствие, с вами был Alukardd
Автор: gsomunk
Дата сообщения: 27.12.2013 10:51
Добрый день! Никак не могу пройти авторизацию в squid, когда он выдает диалоговое окно в браузере. Установлены:squid-3.1.20,samba-3.3.6,samba-client,samba-common.
nsswitch.conf

Код: passwd: compat winbind
group: compat winbind
shadow: files
Автор: Angel_19
Дата сообщения: 11.01.2014 19:46
Ресурс http://squid.opennet.ru/ недоступен...
Может зеркало где есть или кто-то знает что с ним?
Автор: Alukardd
Дата сообщения: 11.01.2014 20:45
gsomunk
Проверить от какого пользователя работает squid, в случае необходимости самому определить его в конфиге кальмара. Дать этому юзеру право общаться с winbindd, для этого его надо добавит в группу winbindd_priv или как-то так (смотрите в своей системе).


Angel_19
А что там такого особенного было? Что Вам он так нужен... Ну в шапке могут быть устаревшие ссылки и что?.. Если ресурс и вправду мёртв надо ссылку будет удалить.
Автор: insyo
Дата сообщения: 14.01.2014 14:16
Выпущенный Sams 2.0 кто-нибудь уже сумел заставить работать в Ubuntu?
Лезит ересь Invalid query: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Автор: vlary
Дата сообщения: 14.01.2014 22:40
insyo
Цитата:
Лезит ересь Invalid query: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock
Ну так убедись, что MySQL работает и ткой сокет существует.
А если его нет или он в другом месте, поправь конфиг на нужный сокет
либо на соединение по IP.
Автор: k3NGuru
Дата сообщения: 24.01.2014 04:02
Коллеги приветствую.

Кто-нибудь пробовал прикрутить Sams2 к Squid 3.3 на Фряхе? Есть ли смысл заморачиваться с Sams 2 или поставить Sams 1 версии и не парить мозг?
Автор: insyo
Дата сообщения: 25.01.2014 12:43
в
Цитата:
Ну так убедись, что MySQL работает и ткой сокет существует.
А если его нет или он в другом месте, поправь конфиг на нужный сокет
либо на соединение по IP.

Там проблема была в том, что как раз mysql-server не был установлен
В итоге SAMS поднял, но реконфигурирование не работало.

"Команда на реконфигурирование Squid не получена демоном
проверьте, запущен ли samsdaemon".

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687

Предыдущая тема: Неполадки в работе DHCP сервера


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.