Возникла задачка пускать в инет только определенную группу пользователей из 2000-го вин-домена в Native mode. Путем чтения док вроде бы обозначился путь решения через helpers/external_acl/winbind_group (wb_group). Прикрутил как описано:
кусок squid.conf: external_acl_type NT_group %LOGIN /usr/local/squid/libexec/wb_group
acl AU external NT_group test12
http_access allow AU
И не работает :(
Если запускаем wb_group с консоли, вводя DOMAIN\\username Group то на все отвечает err. Группу test12 через wbinfo -g видно. Пользователя аутентифицирует нормально. Где рыть - непонятно :(Сейчас поднята аутентификация через winbind - все работает нормально. Может у кого есть какие мысли как пускать только пользователей, входящих в определенную группу или в чем все таки может быть проблем с wb_group
Все... Сам разобрался.
Для тех кто интересуется можно почитать поподробее тут: http://www.connectionreset.it/documenti/squidntdomainauth.txtИ дополнительно основные камешки подводные:
- на самбе 2.2.7 не работает (моя ошибка). На squid-cache пишут (про версию 2.2.6), что если подменить заголовочные файлы в сорцах сквида, (подробнее в FAQ на squid-cache) файлами от самбы, то все заработает. На 2.2.7 не прокатило даже так.
- в smb.conf должно стоять winbind use default domain = no
>Все... Сам разобрался.
>Для тех кто интересуется можно почитать поподробее тут: http://www.connectionreset.it/documenti/squidntdomainauth.txt
>
>И дополнительно основные камешки подводные:
>- на самбе 2.2.7 не работает (моя ошибка). На squid-cache пишут (про
>версию 2.2.6), что если подменить заголовочные файлы в сорцах сквида, (подробнее
>в FAQ на squid-cache) файлами от самбы, то все заработает. На
>2.2.7 не прокатило даже так.
>- в smb.conf должно стоять winbind use default domain = noУ меня точно такая же ситуация, один в один! Только заместо W2K стоит NT4.
Почитал предложенную ссылку, поменял в smb.conf строчку не пашет....
самба стоит 2.2.6 (из пакаджей FreeBSD 4.7)Может кто выложит РЕАЛЬНО_РАБОТАЮЩУЮ_КОНФУ_СКВИДА (имеется ввиду external_acl и так далее сам акл и описание http_access)
вобщем запарился я конкретно, если кто знает надеюсь на вашу помощь:
начну с начала.
Ситуация аналогична вышеописанной автором поста:
http://www.opennet.me/openforum//vsluhforumID12/227.html
Самба настроена, авторизация через домен Windows работает, как дело доходит до авторизации через wb_group затык. в access.log пишет TCP_DENIED:NONE и соответственно не работает!
при установке и настройке СКВИДА ориентировался на статью:
http://www.artmagic.ru/labs/sqlandwin.shtml
Самба установлена из портов freebsd 4.7 (2.2.6p2) в smb.conf прописал:
winbind use default domain = noрегистрируюсь в НТ домене без проблем wbinfo говорит что все хорошо
в СКВИДЕ squid.conf прописаны следующие строки:
external_acl_type wb_group %LOGIN /usr/local/squid/libexec/wb_group
acl INTERNET_YES external wb_group INTERNET_YES
http_access allow INTERNET_YES
http_access deny allв домене НТ создана глобальная группа INTERNET_YES и на всякий случай wb_group.
Вот кусок (ACC_INET_GW группа в домене W2K):auth_param ntlm program /usr/local/squid/libexec/wb_ntlmauth
auth_param ntlm children 5
auth_param ntlm max_challenge_reuses 0
auth_param ntlm max_challenge_lifetime 2 minutesexternal_acl_type wb_group %LOGIN /usr/local/squid/libexec/wb_group
acl AU external wb_group ACC_INET_GWhttp_access allow AU
http_access deny all
>Вот кусок (ACC_INET_GW группа в домене W2K):
>
>auth_param ntlm program /usr/local/squid/libexec/wb_ntlmauth
>auth_param ntlm children 5
>auth_param ntlm max_challenge_reuses 0
>auth_param ntlm max_challenge_lifetime 2 minutes
>
>external_acl_type wb_group %LOGIN /usr/local/squid/libexec/wb_group
>acl AU external wb_group ACC_INET_GW
>
>http_access allow AU
>http_access deny allНЕ РАБОТАЕТ!
На клиентском компе пишется нет доступа, ну вобщем все тоже самое что было.
А какая самба стоит и какой сквид крутиться?
А winbind то запущен? Работу его проверял?
Попробуй запусти руками wb_group -d и повводи логины в ввиде DOMAINNAME\\User GroupName и посмотри что отвечает. Если не ERR или OK то с твой версий самбы не дружит либо чего то не запустил. Обрати внимание, что для версии 2.2.6 надо заменить некоторые файлы и пересобрать wb_*. (сам я не делал, поставил самбу 2.2.5)PS: У меня samba 2.2.5 (используется только для аутентификации юзеров сквидом, соответственно запускаем только winbindd), Squid 2.5stable1, linux kernel 2.4.19;
>А winbind то запущен? Работу его проверял?имеется ввиду /usr/local/sbin/winbindd ? (У меня FreeBSD 4.7, а Сквид точно такой же)
запущен и нормально функционирует, по крайней мере wbinfo -p и wbinfo -t говорят что все окей.
>Попробуй запусти руками wb_group -d и повводи логины в ввиде DOMAINNAME\\User GroupName
>и посмотри что отвечает. Если не ERR или OK то с
>твой версий самбы не дружит либо чего то не запустил.выскакивает как раз ERR:
ZSPTUS\\denis ACC_INET_GW
/wb_group[1460](wb_check_group.c:285): Got 'ZSPTUS\\denis ACC_INET_GW' from Squid (length: 8192).
ERR
>Обрати
>внимание, что для версии 2.2.6 надо заменить некоторые файлы и пересобрать
>wb_*. (сам я не делал, поставил самбу 2.2.5)
>Вот этого я как раз наверно не умею делать!!! Может хоть инструкция где какая то есть?
>PS: У меня samba 2.2.5 (используется только для аутентификации юзеров сквидом, соответственно
>запускаем только winbindd), Squid 2.5stable1, linux kernel 2.4.19;Я вот только не пойму в чем моя проблема:
1. Плохая Самба, нужна другая версия
2. Плохой (неправильно собраный или отконфигуренный) Сквид
3. Эта версия самбы и эта версия сквида не совместимы в вопросе авторизации по групам Windows
В группу то входишь указанную? :)
Если да и ERR то поставь 2.2.5 самбу, если мучаться не охота и ее отличия от 2.2.6 не принципиальны.
>В группу то входишь указанную? :)
>Если да и ERR то поставь 2.2.5 самбу, если мучаться не охота
>и ее отличия от 2.2.6 не принципиальны.
надо winbindd_nss.h взять из исходников самбы и заменить такой же файл в исходниках хелпера
Блин...чего то не работает!
уже поставил Самбу 2.2.5
все работает... и в домен вхожу и юзера авторизирую!
После Самбы заработал даже wb_group чего раньше не было!
Правда он авторизирует не по Domen\\user group а просто по user group.
В сквиде все прописываю... и ничего...Доступ запрещен!!!
Какой-нибудь здравой мысле очень обрадуюсь!!!
Все!!! Настроил сам!
всем кому интересно поясняю основные вещи:
squid 2.5stable1
samba 2.2.5
--------smb.conf-----------
[global]workgroup = klinok
server string = Klinok Samba Server
hosts allow = 10.60.0. 127.
#winbind separator = \ Обратите внимание на этот вот параметр!!!
(Зарэмте его к чертовой матери! у меня именно из за него и был косяк!
я взял я его все из той же русскоязычной статье по настройке Доменной Авторизации в Squid.)
winbind use default domain = no
winbind uid = 10000-20000
winbind gid = 10000-20000
winbind enum users = yes
winbind enum groups = yes
template homedir = /home/winnt/%D/%U
template shell = /bin/bash
max log size = 50
security = domain
password server = lab (в файле lmhosts прописано: 10.60.3.78 lab)
encrypt passwords = yes
---------------squid.conf-------------------------
#------------------------- auth_param ---------------------------auth_param ntlm program /usr/klinok/squid/libexec/wb_ntlmauth
auth_param ntlm children 5
auth_param ntlm max_challenge_reuses 0
auth_param ntlm max_challenge_lifetime 2 minutes
auth_param basic program /usr/klinok/squid/libexec/wb_auth
auth_param basic children 5
auth_param basic realm linux.railways.kz authenticator
auth_param basic credentialsttl 2 hours
external_acl_type NT_group %LOGIN /usr/klinok/squid/libexec/wb_group
acl AU external NT_group inet (группа inet в моем домене)
acl PASSWORD proxy_auth REQUIRED
http_access allow PASSWORD AUВот собственно и все!!!
Если кого инетресует доп. информация...или полность файлы конфигов...
пишите, поделюсь не пожадничаю!
У меня samba-2.2.5. В связи с выходом squid-2.5.STABLE2 пересобирал своего сквида...
В ${squid_src_root}/include/samba/README.txt русским по белому написано:
-------
These files are copies of Samba internal headers from Samba-2.2.7a
required by the winbind helpers to Squid.
If you compile the winbind helpers with other versions of Samba you may
need to copy the relevant headers from the Samba version you are using
here, or use the --with-samba-source=... configure option to tell Squid
where the Samba sources can be found.
------
Берем исходники _любимой_ (своей) самбы, распаковываем, идем в ${squid_src_root}, там (кроме прочего нужного) говорим:
./configure ... --with-samba-source=${samba_src_root} ...
make allУ меня после работает _лежа, с колена и стОя_ : и winbind separator = \═, и winbind use default domain=yes.
Все верно! но с выходом stable 2 я сразу настроил Самбу 2.2.7
так как теперь все поддерживается. (а раньше не работало точно! с версией 2.2.7 и так парился и так...)
>У меня после работает _лежа, с колена и стОя_ : и winbind
>separator = \═, и winbind use default domain=yes.
А насчет separator я немного ошибся, в статье по настройке доменной авторизации он был равен = + (что явно не катило для авторизации wb_group.
(\ косую пробовал ставить уже я, после прочтения access.log где он явно писал TCP_denied Domain\user) так или иначе после РЕМ все стало ок.насчет winbind use default domain=yes. для меня тогда вообще не понятно! когда делаешь yes! он видит юзверей не Domain\user а просто user.
wbinfo -u
и Wb_group c этим парится! По крайней мере так было у меня!Но так понимаю теперь эта тема решена и закрыта!
кто-нибудь может подсказать какой логин и пароль надо вводить в данном случае:
Теперь можно проверить а понимает ли SQUID-овский авторизатор
winbind. Для этого нужно запустить:
/usr/local/squid/libexec/wb_auth -d
И ввести вручную имя пароль (через пробел).
Если все работает корректно, то программа выдаст
/wb_auth[91945](wb_basic_auth.c:129): Got 'dmn XXXXX' from squid
(length: 10).
/wb_auth[91945](wb_basic_auth.c:55): winbindd result: 0
/wb_auth[91945](wb_basic_auth.c:58): sending 'OK' to squid????
Ну, как какой - того, кого авторизуем...
Если winbind use default domain=yes, то user pass, если нет, то:
<domain><winbind separator>user password (например, при
winbind separator=+ и
winbind use default domain=yes:
mydomain+user (пробел)mypassword)
и все же что то здесь не так:) FreeBSD 4.8 Squid 2.5 STABLE 2 Samba 2.2.8 (собрана из портов).
Собирал SQUID со следующими ключами:
./configure --enable-delay-pools --enable-auth="ntlm,basic" --enab
le-basic-auth-helpers="winbind" --enable-ntlm-auth-helpers="winbind" --enable-e
xternal-acl-helpers="winbind_group" --with-samba-sources=/usr/install/samba/sou
rce
Самба в домене НТ регистрируется, wbinfo -p -t говорит что все отлично.
После установки Squid'a захожу в /usr/local/squid/libexec/wb_auth -d, через пробел ввожу имя и пароль squid меня посылает следующим образом:
bash-2.05b# bash-2.05b# ./wb_auth -d
/wb_auth[7928](wb_basic_auth.c:168): basic winbindd auth helper build Apr 8 200
3, 16:54:46 starting up...
dm 11
/wb_auth[7928](wb_basic_auth.c:129): Got 'dm 11' from squid (length: 5).
/wb_auth[7928](wb_basic_auth.c:55): winbindd result: 1
/wb_auth[7928](wb_basic_auth.c:60): sending 'ERR' to squid
ERR
Я уже впал в отчаяние, если уже на этом этапе не работает тогда как я понимаю и конфиг сквида нечего смотреть. Братья Админы помогите!
wbinfo -a user%password как отрабатывает?
Должно быть:
plaintext password authentication succeeded
challenge/response password authentication succeeded
Если второй строчки нет - samba собрана без --with-winbind-auth-challenge.
winbindd -d 5 - в логи писАть будет, что не так;
squid -k debug
и смотреть... Не поллучится - кинь логи и конфиги по почте.
Если кому то еще интересен сабж для самбы 2.2.7а и сквида 2.5STABLE.
Проблема решилась правкой исходника wb_group. Кому интересно - пишите.
>Если кому то еще интересен сабж для самбы 2.2.7а и сквида 2.5STABLE.
>
>Проблема решилась правкой исходника wb_group. Кому интересно - пишите.
Давайте уж добьем эту проблему раз и навсегда.
какие файлики и что менять в студию, пожалуйста.
ЗЫ: У меня теперь другой вопросик, SARG при обработке файла access.log выдает ошибку, ошибка связана с тем, что в логе написана авторизация ДОМЕН/логин и САРГ её не понимает что ли? Обрабатываю этим же саргом акцес.лог другого сквида где нет такой авторизации - все отлично! Никто не сталкивался с такой проблемкой?
У меня sarg-1.2.1, работает нормально (да и с предыдущими проблем не было).
Ошибка какая?
А emulate_httpd_log off?
>У меня sarg-1.2.1, работает нормально (да и с предыдущими проблем не
>было).
>Ошибка какая?
>А emulate_httpd_log off?
http://www.opennet.me/openforum/vsluhforumID12/737.html ...Описание моей проблемы.emulate_httpd_log off В конфиге САРГА?
>emulate_httpd_log off В конфиге САРГА?
Нет, в squid.conf
>Описание моей проблемы.
Не сталкивался, у меня таки sarg-1.2.1.
Но, судя по всему, файл отчета не создается(No such file or directory)... И, соответственно, не может быть отсортирован. Нужно проверять конфиг, права etc.
>>emulate_httpd_log off В конфиге САРГА?
>Нет, в squid.conf
>>Описание моей проблемы.
>Не сталкивался, у меня таки sarg-1.2.1.
>Но, судя по всему, файл отчета не создается(No such file or directory)...
>И, соответственно, не может быть отсортирован. Нужно проверять конфиг, права etc.
>
Михаил поправь меня если я ошибаюсь:
Если прогнать через этот САРГ с этим конфигом файлик access.log созданный Squid 2.4 STABLE1 сарг замечательно создает отчет... следовательно конфиг САРГА рабочий, output директория куда складываються файлы отчетов имеет "нужные" права.
Отличия этих двух СКВИДОВ (номера версий опустим) на одном стоит авторизация по Виндовозным группам, второй "пустой" никаких внешних авторизаций, "пользуйся нехочу":) следовательно проблема в информации которая дописывается в файл лога "благодаря" авторизации ntlm, может САРГ её просто непонимает (невоспринимает)поковыряюсь ещё конечно с правами и директориями...
В то же время буду смотреть на возможность установки sarg-1.2.1Буду рад любым идеям по решению моей проблемы.
Использую sarg относительно давно, за это время squid вырос до 2.5.STABLE2, acl-й куча, из них 6-7 - именно ntlm по группам из домена WinNT (через wb_group), еще 3 - поименные, по пользователям того же домена (wb_ntlmauth). Разницы в работе sarg почти нет - вместо ip-адресов или имен хостов в отчете рисует <domain>_<user>, в exclude_codes пришлось дописывать TCP_DENIED/407.
Может, все-таки обновить версию :-) ?
Так кто все таки настроил 2.2.7 и wb_group?????wb_auth - работает
wb_group - ни в какуюЧего тока не пробовал. Обьясните. Благодарен за любую помощь.
Есть вопросик. Кто пробовал через wbinfo проверять пользователей из домена windows2000 c русскими именами? С англицкими все путем проверял.
Что надо изменить в конфиге, чтобы SQUID пускал в Инет пользователей
определенной группы _НЕ_ЧЛЕНОВ_ДОМЕНА_. У меня стоит WinProxy на W2000 Server и часть пользователей в домене,а часть-нет. В Инет ходят те, кто входит в группу "Internet Users". Почитал то, что здесь обсуждалось, сделал - с членами домена все прекрасно работает. А как быть с не членами? Что сделать чтобы SQUID не запрашивал аут. из IE?
Помогите,пожалуйста !
Так ведь можно одновременно использовать разные способы аутентификации - кто запрещал?
auth_param ntlm , auth_param basic, auth_param digest ... - настраиваем стандартные программы для аутентификации;
external_acl_type ... - определяем внешние программы (тут и можно поределить, что проверять у 'не членов');
acl password proxy_auth REQUIRED - выдаем запрос;
acl .... - в разных сочетаниях скрещиваем полученное.
Настроил все как было выше сказано (samba 2.2.8+squid 2.5)
Wb_auth и Wb_group работают как нада.ВОПРОС к уважаемым админам:
Почему пользователей из МОЗИЛЛА ОПЕРА и КОнКЕРОР пускает (когда в окошке паассворд укажешь):cache.log:
(wb_auth)[5132](wb_basic_auth.c:129): Got 'kopylov 1605' from squid (length: 12).
(wb_auth)[5132](wb_basic_auth.c:55): winbindd result: 1
(wb_auth)[5132](wb_basic_auth.c:58): sending 'OK' to squidа в Интернет Эксплорере выдается ококшко для пассворда(хотя пользователь в домене зарегистрирован) и даже если вводишь пароль то не пускает?
cache.log:
(wb_ntlmauth)[5127](wb_ntlm_auth.c:292): Got 'YR' from squid.
(wb_ntlmauth)[5127](wb_ntlm_auth.c:72): sending 'TT TlRMTVNTUAACAAAABgAGACgAAACCgkEAFwxUTW92w08AAAAAAAAAAEdBTEFYWQ==' to squid
(wb_ntlmauth)[5127](wb_ntlm_auth.c:292): Got 'KK TlRMTVNTUAADAAAAGAAYAFQAAAAYABgAbAAAAAYABgBAAAAABwAHAEYAAAAHAAcATQAAAAAAAACEAAAABoIAAEdBTEFYWUtPUFlMT1ZLT1BZTE9Woi9JybYMCAWSbPKdcQ5sylRLvaNjnJeB9qSWUJIMtMejpguA5Ml4+MvF2lsdUUnp' from squid.
(wb_ntlmauth)[5127](wb_ntlm_auth.c:239): Checking user 'GALAXY\KOPYLOV' lmhash len =24, have_nthash=0, nthash len=24
(wb_ntlmauth)[5127](wb_ntlm_auth.c:246): winbindd result: 0
(wb_ntlmauth)[5127](wb_ntlm_auth.c:60): sending 'NA GALAXY\KOPYLOV auth failure because: Authentication Failure ()' to squidAny suggestions ? 8-)
спасибо что не пожалели времени..
У меня немного другая ситуация: аутентификация через wb_group работает
замечательно (кому надо - могу поделиться конфигами), если бы не одна
всё портящая деталь! А именно - squid упорно отказывается распознавать
ситуацию, когда пользователя домена добавляют или удаляют из группы
ProxyUsers, которой можно ходить в Инет. Хотя через wb_group эти
изменения замечательно видны! Думал, squid слишком долго помнит ответы
контроллера домена, убрал их в минимум - никаких изменений! В общем,
приходится его перегружать... :-(((У меня стоит FreeBSD-4.8 RELEASE, samba-2.2.8a, squid-2.5_4
smb.conf:
; winbind separator = +
winbind use default domain = yes
winbind cache time = 10squid.conf:
auth_param ntlm program /usr/local/libexec/wb_ntlmauth
auth_param ntlm children 20
auth_param ntlm max_challenge_reuses 0
auth_param ntlm max_challenge_lifetime 1 minutes
auth_param basic program /usr/local/libexec/wb_auth
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 1 minutesКто может подсказать - как заставить squid видеть изменения в доменной
группе? Заранее благодарен за помощь!
>У меня немного другая ситуация: аутентификация через wb_group работает
>замечательно (кому надо - могу поделиться конфигами), если бы не одна
>всё портящая деталь! А именно - squid упорно отказывается распознавать
>ситуацию, когда пользователя домена добавляют или удаляют из группы
>ProxyUsers, которой можно ходить в Инет. Хотя через wb_group эти
>изменения замечательно видны! Думал, squid слишком долго помнит ответы
>контроллера домена, убрал их в минимум - никаких изменений! В общем,
>приходится его перегружать... :-(((
>
>У меня стоит FreeBSD-4.8 RELEASE, samba-2.2.8a, squid-2.5_4
>
>smb.conf:
>; winbind separator = +
> winbind use default domain = yes-у меня winbind use default domain = no
> winbind cache time = 10
-этого нет вообще
>
>squid.conf:
>auth_param ntlm program /usr/local/libexec/wb_ntlmauth
>auth_param ntlm children 20
>auth_param ntlm max_challenge_reuses 0
>auth_param ntlm max_challenge_lifetime 1 minutes
>auth_param basic program /usr/local/libexec/wb_auth
>auth_param basic children 5
>auth_param basic realm Squid proxy-caching web server
>auth_param basic credentialsttl 1 minutes
>
>Кто может подсказать - как заставить squid видеть изменения в доменной
>группе? Заранее благодарен за помощь!
У меня таже самба и все работает,
после того как юзера вношу в группу достаточно только в эксплорере обновить страничку:)
У меня с такими настройками
external_acl_type NT_global_group ttl=120 %LOGIN /usr/lib/squid/wb_group
через 2 минуты после добавления пользователя в группу он получает все права (ключевое слово - ttl 120 секунд).
>У меня с такими настройками
>external_acl_type NT_global_group ttl=120 %LOGIN /usr/lib/squid/wb_group
>через 2 минуты после добавления пользователя в группу он получает все права
>(ключевое слово - ttl 120 секунд).Во! Именно то, что мне надо было! Теперь всё работает... ;-)
Спасибо!!!