Статья squid+AD

Вопросы настройки и работы с этой ОС.
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
m0ps
лейтенант
Сообщения: 986
Зарегистрирован: 2008-05-08 20:18:06
Откуда: Chernigov (Ukraine)
Контактная информация:

Re: Статья squid+AD

Непрочитанное сообщение m0ps » 2010-02-16 18:09:48

решил упростить себе работу и прикрутить к сквиду авторизацию из AD.
проксик стоит в dmz. к кд имеет доступ через nat.
в hosts прописал ip контролера домена, дабы не использовать IP в конфигах.
сразу столкнулся с проблемой - не могу получить билет кербероса. решил добавлением в [libdefaults] опции no-addresses = yes (пришлось рисовать конфиг krb5.conf). теперь билет получил.
ввожу самбу в домен:

Код: Выделить всё

[17:06] /home/m0ps #net join -U m0ps
Enter m0ps's password:
Failed to join domain: failed to find DC for domain DOMAIN.LOCAL
ADS join did not work, falling back to RPC...
Unable to find a suitable server for domain DOMAIN
Unable to find a suitable server for domain DOMAIN
никто с таким не сталкивался?

Код: Выделить всё

[17:18] /home/m0ps #net ads lookup
Information for Domain Controller: 10.10.110.103

Response Type: LOGON_SAM_LOGON_RESPONSE_EX
GUID: 94fd37ff-fc91-442d-8396-33b59abaa661
Flags:
        Is a PDC:                                   yes
        Is a GC of the forest:                      yes
        Is an LDAP server:                          yes
        Supports DS:                                yes
        Is running a KDC:                           yes
        Is running time services:                   yes
        Is the closest DC:                          yes
        Is writable:                                yes
        Has a hardware clock:                       yes
        Is a non-domain NC serviced by LDAP server: no
        Is NT6 DC that has some secrets:            no
        Is NT6 DC that has all secrets:             no
Forest:                 domain.local
Domain:                 domain.local
Domain Controller:      DC.domain.local
Pre-Win2k Domain:       DOMAIN
Pre-Win2k Hostname:     DC
Server Site Name :              Default-First-Site
Client Site Name :              Default-First-Site
NT Version: 5
LMNT Token: ffff
LM20 Token: ffff
net ads user выводит список пользователей AD

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
m0ps
лейтенант
Сообщения: 986
Зарегистрирован: 2008-05-08 20:18:06
Откуда: Chernigov (Ukraine)
Контактная информация:

Re: Статья squid+AD

Непрочитанное сообщение m0ps » 2010-02-17 11:32:41

на KD поднял wins сервер, в конфиге самбы его указал.
теперь через net rpc join смог ввести в домен. wbinfo показывает пользователей и группы.

Аватара пользователя
m0ps
лейтенант
Сообщения: 986
Зарегистрирован: 2008-05-08 20:18:06
Откуда: Chernigov (Ukraine)
Контактная информация:

Re: Статья squid+AD

Непрочитанное сообщение m0ps » 2010-02-18 18:07:07

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

это как-то можно исправить?

Аватара пользователя
m0ps
лейтенант
Сообщения: 986
Зарегистрирован: 2008-05-08 20:18:06
Откуда: Chernigov (Ukraine)
Контактная информация:

Re: Статья squid+AD

Непрочитанное сообщение m0ps » 2010-02-18 20:21:10

m0ps писал(а):есть еще 1 вопрос:
если пользователя переношу из одной группы в другую, то если не рестартовать(реконфигурировать) сквид - он не видит изменений в группах, и продолжает пускать по acl от старой группы.
проверяю через wbinfo_group.pl - скрипт видит изменение в группах

это как-то можно исправить?
а, я понял... данные кешируются...
с этим хорошо, но вылез еще один бок:
по прошествии небольшого отрезка времени squid начинает ругаться в лог мол:
Could not lookup name <имя_группы>
Could not convert sid to gid
пробую через wbinfo_group.pl протестить - ответ аналогичный...

версия сквида -3
самба - 3.4

Akela
рядовой
Сообщения: 33
Зарегистрирован: 2009-04-23 10:27:30
Откуда: Украина, Запорожье

Re: Статья squid+AD

Непрочитанное сообщение Akela » 2010-02-19 10:52:34

У меня он через небольшой промежуток времени кеш сам обновлял. Ну а если срочно нужно было то пускал команду squid - reconfig или через SAMS перезапускал

Аватара пользователя
m0ps
лейтенант
Сообщения: 986
Зарегистрирован: 2008-05-08 20:18:06
Откуда: Chernigov (Ukraine)
Контактная информация:

Re: Статья squid+AD

Непрочитанное сообщение m0ps » 2010-02-19 11:15:39

а на какой период кешируются данные - 5, 10, 100 минут?

Аватара пользователя
m0ps
лейтенант
Сообщения: 986
Зарегистрирован: 2008-05-08 20:18:06
Откуда: Chernigov (Ukraine)
Контактная информация:

Re: Статья squid+AD

Непрочитанное сообщение m0ps » 2010-02-19 17:01:44

и еще есть вопрос:
не работает windowsupdate через прокси настроенный по статье...
что бы получить список доступных обновлений нужно ждать ~20 минут, а нажав на загрузку она вообще не происходит...
в логе:

Код: Выделить всё

1266587516.448      0 172.16.1.135 TCP_DENIED/407 409 HEAD http://download.windowsupdate.com/msdownload/update/software/secu/2010/01/windowsxp-kb978037-x86-express-rus_f74ec08c2567224531efa5eec2ac2e3efb600efb.cab - NONE/- text/html
1266587516.460      0 172.16.1.135 TCP_DENIED/407 639 HEAD http://download.windowsupdate.com/msdownload/update/software/secu/2010/01/windowsxp-kb978037-x86-express-rus_f74ec08c2567224531efa5eec2ac2e3efb600efb.cab - NONE/- text/html
1266587637.691      0 172.16.1.135 TCP_DENIED/407 409 HEAD http://download.windowsupdate.com/msdownload/update/software/secu/2010/01/windowsxp-kb977165-x86-rus_eaa5f69ef6c93b34b25251ab4fffbfdf14177a64.exe - NONE/- text/html
1266587637.707      0 172.16.1.135 TCP_DENIED/407 639 HEAD http://download.windowsupdate.com/msdownload/update/software/secu/2010/01/windowsxp-kb977165-x86-rus_eaa5f69ef6c93b34b25251ab4fffbfdf14177a64.exe - NONE/- text/html
пробую скачать файлы через download master - качает без проблем

UPDATE
нашел причину: все дело в ntlm авторизации. если комп ходит без авторизации через прокси - проблемы нет

неужто никто через windows update не обновляется, или это только мне так повезло?

click80
проходил мимо
Сообщения: 4
Зарегистрирован: 2010-03-17 14:18:03

Re: Статья squid+AD

Непрочитанное сообщение click80 » 2010-03-17 14:33:43

всем привет
сразу же скажу что ОС у меня не BSD, а Linux(Slackware13)
почитал конфиги в данном топике.
настраивал сквид сам. появилась проблема.
в инет пропускает всех хотя указано название группы

Код: Выделить всё

auth_param ntlm program /usr/bin/ntlm_auth \
    --helper-protocol=squid-2.5-ntlmssp \
    --require-membership-of=S-1-5-21-2112778685-1447859232-1343371117-3669
auth_param ntlm children 10
#
auth_param basic program /usr/bin/ntlm_auth \
    --helper-protocol=squid-2.5-ntlmssp \
    --require-membership-of=S-1-5-21-2112778685-1447859232-1343371117-3669
auth_param basic children 10
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
пробовал указывать как SID, так и название самой группы

Код: Выделить всё

DOMAIN+Access_Internet
Вчем может быть проблема?
у себя в ОС не смог найти wbinfo_group.pl. его где брать? или это фича только для ОС основанных на BSD
может конечно прочитал не внимательно :smile:. ткните носом если так))

========================================================
ЗЫ: почитал остальные ветки форума :-D . У мну такое чуство что меня забанят, тк я с Linux'ом залез в ветку BSD.
ЗЗЫ: Хотя эти ОС'ы почти ровесники. даже стартовые скрипты одинаковые используют(сам не знаюю с БСД дел не имел, но если верить Википедии............ :-D ). правда на этом сходства наверное заканчиваются.

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35465
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Статья squid+AD

Непрочитанное сообщение Alex Keda » 2010-03-17 23:41:20

в дистрибутиве сквида
Убей их всех! Бог потом рассортирует...

click80
проходил мимо
Сообщения: 4
Зарегистрирован: 2010-03-17 14:18:03

Re: Статья squid+AD

Непрочитанное сообщение click80 » 2010-03-18 7:32:48

lissyara писал(а):в дистрибутиве сквида
что имеешь ввиду?

Аватара пользователя
m0ps
лейтенант
Сообщения: 986
Зарегистрирован: 2008-05-08 20:18:06
Откуда: Chernigov (Ukraine)
Контактная информация:

Re: Статья squid+AD

Непрочитанное сообщение m0ps » 2010-03-18 9:49:15

click80 писал(а):
lissyara писал(а):в дистрибутиве сквида
что имеешь ввиду?
наверное то, что пакет, из которого ты устанавливал сквид не содержит скрипта wbinfo_group.pl

click80
проходил мимо
Сообщения: 4
Зарегистрирован: 2010-03-17 14:18:03

Re: Статья squid+AD

Непрочитанное сообщение click80 » 2010-03-18 12:07:22

m0ps писал(а):
click80 писал(а):
lissyara писал(а):в дистрибутиве сквида
что имеешь ввиду?
наверное то, что пакет, из которого ты устанавливал сквид не содержит скрипта wbinfo_group.pl
тогда вопрос как его прикрутить чтобы он работал?

kama
проходил мимо
Сообщения: 8
Зарегистрирован: 2007-08-17 14:49:06

Re: Статья squid+AD

Непрочитанное сообщение kama » 2010-05-07 9:12:29

Как я пофиксил проблему использования групп AD с пробелами:
1. В ACL пишу группу заменяя пробелы на _,т.е. Full_Internet_Access
2. Добавил одну строчку в wbinfo_group.pl:

Код: Выделить всё


# 
# Main loop
#
while (<STDIN>) {
        chop;
        &debug ("Got $_ from squid");
        ($user, @groups) = split(/\s+/);
        $user =~ s/%([0-9a-fA-F][0-9a-fA-F])/pack("c",hex($1))/eg;
        # test for each group squid send in it's request
        foreach $group (@groups) {
                $group =~ s/%([0-9a-fA-F][0-9a-fA-F])/pack("c",hex($1))/eg;
                $group =~ s/_/ /g;
                $ans = &check($user, $group);
                last if $ans eq "OK";
        }
        &debug ("Sending $ans to squid");
        print "$ans\n";
}


Добавил эту строку $group =~ s/_/ /g;

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35465
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Статья squid+AD

Непрочитанное сообщение Alex Keda » 2010-05-09 13:50:19

а если в AD группа с подчёкриванием будет?
Убей их всех! Бог потом рассортирует...

wk
проходил мимо
Сообщения: 1
Зарегистрирован: 2010-08-01 0:30:42

Re: Статья squid+AD

Непрочитанное сообщение wk » 2010-08-01 0:38:17

вопрос. можно ли использовать fakeauth в basic аутентификации?
проблема такая: есть програмы которые не поддерживают ntlm. использую basic, но тут возникают сложности - русские пароли не работают. думаю, что fakeauth это поправит.
или может быть проблема не в свквиде, а в самбе? очень не хочется запрещать русские пароли.
кстати - все поднято на rhel. лишь некоторые моменты заимствовал из статьи.

veles
проходил мимо

Re: Статья squid+AD

Непрочитанное сообщение veles » 2011-03-23 10:05:47

Статья понравилась, написана толково!!! Теперь вопрос - у меня получаться, что если есть юзер в домене то его авторизация происходит в сквиде по любому и БЕЗ АВТОРИЗАЦИИ ЕГО В ДОМЕНЕ, это значит то что юзеру не обязательно регистрироваться в домена ему просто достаточно числиться в нём ... А это очень плохо !!! Короче может кто знает как сделать так что юзер без авторизации не сможет пользоваться интернетом ?

Аватара пользователя
St@yt
ефрейтор
Сообщения: 60
Зарегистрирован: 2010-01-09 2:27:39

Re: Статья squid+AD

Непрочитанное сообщение St@yt » 2011-06-29 19:28:53

привет.... поднял эту связку на основе статьи.... работает....
тут в постах несколько раз всплывает вопрос что сквид не реагирует на переводы юзеров домена из одной группы в другую.... я сам над этим попарился..... :cz2:
да, обьяснение этого вопроса конечно стоило бы добавить в статью....
я решал его след образом:
оперативность реагирования зависит от времени хранения кеша как в SAMBA, так и в Sqwuid....

Код: Выделить всё

smb.conf
winbind cache time = 5 (к примеру)
на 0 у меня winbind просто вис....
в squid.conf важны 2 параметра:
ttl=n (Time-To-Live, время жизни) в секундах для хранения результатов отработки внешнего ACL.(По умолчанию установлено в 3600 т.е. 1 час).
negative_ttl=n TTL в секундах для хранения отрицательных результатов отработки внешнего ACL. (По умолчанию, установлено значение такое же как ttl)

Код: Выделить всё

squid.conf
external_acl_type nt_group ttl=5 negative_ttl=5 %LOGIN  /usr/local/libexec/squid/wbinfo_group.pl
естественно такие заначения приемлемы на этапе тестов, при большой загрузке этого делать не соит....
но обновления кеша можно добиться и ничего не перегружая.... просто после изменения в группах AD необходимо в ручную авторизовать юзера:

Код: Выделить всё

# wbinfo --authenticate=domain+user%user_pass
у меня так работает....

и в догонку...
veles писал(а):у меня получаться, что если есть юзер в домене то его авторизация происходит в сквиде по любому и БЕЗ АВТОРИЗАЦИИ ЕГО В ДОМЕНЕ, это значит то что юзеру не обязательно регистрироваться в домена ему просто достаточно числиться в нём ... А это очень плохо !!! Короче может кто знает как сделать так что юзер без авторизации не сможет пользоваться интернетом ?
как вариант..... помоему можно через политики или скриптом, чтобы при заходе в систему юзер помещался в нужную руппу.... ну и время кеширования соответственное сделать....
столько дел!!!... неуспеваю на все забить...

e1teck
проходил мимо
Сообщения: 1
Зарегистрирован: 2011-07-07 18:17:14

Re: Статья squid+AD

Непрочитанное сообщение e1teck » 2011-07-07 18:26:00

Всем привет! Товарищи подскажите пожалуйста решение в ситуации. Имеем сквид+ад. Все работает по пользователям. Имеется авторизация через ад и basic. Но при обработке аксес лога сквида саргом появляются ип адреса в отчете, хотя пользователь в таком отчете уже присутствует. Еще момент при вложениях в письмо на мэйлру запрашивает имя пользователя и пароль. При соединении с любимой радиостанцией опять же логин и пароль подскажите пожалуйста что тут можно сделать как пролечить?! Заранее благодарен!

Аватара пользователя
vadim64
майор
Сообщения: 2101
Зарегистрирован: 2009-09-17 15:15:26
Откуда: Засратовец

Re: Статья squid+AD

Непрочитанное сообщение vadim64 » 2011-11-27 20:38:26

вроде не в том разделе тема
Люди не делятся на национальности, партии, фракции и религии. Люди делятся на умных и дураков, а вот дураки делятся на национальности, партии, фракции и религии.

reanimat0r
проходил мимо
Сообщения: 3
Зарегистрирован: 2012-03-13 19:40:13

Re: Статья squid+AD

Непрочитанное сообщение reanimat0r » 2012-03-13 19:56:44

здравствуйте
FreeBSD8.0
squid squid-3.1.19 HTTP Caching Proxy
samba36-3.6.3
все делал по статье и такая проблема
есть пользователи temp1 и temp2 они оба входят в группу inet_users
команда echo temp1 inet_users | /usr/local/libexec/squid/wbinfo.pl дает ОК
echo temp2 inet_users | /usr/local/libexec/squid/wbinfo.pl дает ERR
причем вчера все нормально работало а сегодня уже только одного пользователя из этой группы видит
сквид и самбу перегружал не пойму в чем загвоздка
да еще и с пользователем admin тоже входит в группу inet_users но также выдает ERR
помогите плиз

reanimat0r
проходил мимо
Сообщения: 3
Зарегистрирован: 2012-03-13 19:40:13

Re: Статья squid+AD

Непрочитанное сообщение reanimat0r » 2012-03-13 20:09:42

предыдущем посте немножко ошибся /usr/local/libexec/squid/wbinfo_group.pl запускаю

reanimat0r
проходил мимо
Сообщения: 3
Зарегистрирован: 2012-03-13 19:40:13

Re: Статья squid+AD

Непрочитанное сообщение reanimat0r » 2012-03-28 18:07:32

разобрался уже сам
спасибо

Аватара пользователя
TheDeadOne
рядовой
Сообщения: 11
Зарегистрирован: 2011-11-10 5:25:50
Откуда: Иркутск
Контактная информация:

Re: Статья squid+AD

Непрочитанное сообщение TheDeadOne » 2012-05-18 9:56:08

CrashBoom писал(а):Товарищи попал в ситуацию, имееться у меня сервант с samba-3.0.28 и squid-2.6.17 всё это дело под FreeBSD 8.0-CURRENT. По статье всё настроил и появилась у меня непонятная мне проблемка по ntlm_auth --helper-protocol=squid-2.5-basic авторизация проходит а вот по ntlm_auth --helper-protocol=squid-2.5-ntlmssp нет. Подскажите куда мне копнуть чё почитать.
Аналогичная ситуация. ntlmssp не работает, basic работает.

Debian 6.0.3
Squid 3.1.19
Samba 3.6.5

Сервер в домене. Тикеты kerberos получает, wbinfo всё показывает. Клиент тоже в домене. Исправно работает со стоящим рядом сквидом 2.6 на фряхе. Проверял с клиента и IE, и FF, и Chrome.

В access.log

Код: Выделить всё

1337322196.918      8 192.168.1.100 TCP_DENIED/407 4292 GET http://www.yandex.ru/ - NONE/- text/html
Один гриф, за свою жизнь, может съесть три поколения львов.

Аватара пользователя
TheDeadOne
рядовой
Сообщения: 11
Зарегистрирован: 2011-11-10 5:25:50
Откуда: Иркутск
Контактная информация:

Re: Статья squid+AD

Непрочитанное сообщение TheDeadOne » 2012-05-18 9:56:36

wary писал(а):Не отрабатывается команда id на пользователя домена. Делал все как в статье:

Код: Выделить всё

squid$ id akeda
uid=10000(akeda) gid=10000(domain users) groups=10000(domain users)
Вот что вылазиет:

Код: Выделить всё

inetgate# id medvedev
id: medvedev: no such user
Предыдущие тесты по статье - отрабатываются без проблем (билет керберос получил, машина внеслась в домен, вижу группы/пользователей домена)

Подскажите что делать ?????
Аналогичная ситуация. Оно вообще надо? У меня на этом же серваке успешно автаризуют доменных пользователей OTRS и OpenFire.

Код: Выделить всё

# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.

passwd:         files winbind compat
group:          files winbind compat
shadow:         files winbind compat

hosts:          files dns
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis
Один гриф, за свою жизнь, может съесть три поколения львов.

Аватара пользователя
TheDeadOne
рядовой
Сообщения: 11
Зарегистрирован: 2011-11-10 5:25:50
Откуда: Иркутск
Контактная информация:

Re: Статья squid+AD

Непрочитанное сообщение TheDeadOne » 2012-05-21 6:14:44

TheDeadOne писал(а):
CrashBoom писал(а):Товарищи попал в ситуацию, имееться у меня сервант с samba-3.0.28 и squid-2.6.17 всё это дело под FreeBSD 8.0-CURRENT. По статье всё настроил и появилась у меня непонятная мне проблемка по ntlm_auth --helper-protocol=squid-2.5-basic авторизация проходит а вот по ntlm_auth --helper-protocol=squid-2.5-ntlmssp нет. Подскажите куда мне копнуть чё почитать.
Аналогичная ситуация. ntlmssp не работает, basic работает.

Debian 6.0.3
Squid 3.1.19
Samba 3.6.5

Сервер в домене. Тикеты kerberos получает, wbinfo всё показывает. Клиент тоже в домене. Исправно работает со стоящим рядом сквидом 2.6 на фряхе. Проверял с клиента и IE, и FF, и Chrome.

В access.log

Код: Выделить всё

1337322196.918      8 192.168.1.100 TCP_DENIED/407 4292 GET http://www.yandex.ru/ - NONE/- text/html
Помогла замена в /etc/init.d/winbind строки
chgrp winbindd_priv $PIDDIR/winbindd_privileged/ || return 1
на
chgrp proxy $PIDDIR/winbindd_privileged/ || return 1

Обезьяний метод, но работает.
Один гриф, за свою жизнь, может съесть три поколения львов.