URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID12
Нить номер: 5686
[ Назад ]

Исходное сообщение
"помогите, други! непонятки с ntlm аутентификацией..."

Отправлено BlackFalcon , 07-Авг-08 19:12 
Имеется интерстремная ситуевина.

1. Установлен и настроен сквид с НТЛМ авторизацией. Юзеры ходят в инет без запроса логина-пароля как к себе домой (с некоторыми ограничениями по группам, с помощью acl естевственно).
2. Некоторым дядям и тетям таки нужна ICQ. Пользуют QIP - там есть NTLM авторизация. Указываю прокси, ставлю галки аутентификаци - всё работает... НО только для пары - тройки юзеров. Остальные получают Proxy authentication failed и следущую запись в /var/log/squid/cache.log

2008/08/07 13:01:13| sslWriteClient: FD 39: write failure: (32) Broken pipe.
2008/08/07 13:01:31| sslWriteClient: FD 34: write failure: (32) Broken pipe.
2008/08/07 13:01:36| sslWriteClient: FD 35: write failure: (32) Broken pipe.
2008/08/07 13:01:37| sslWriteClient: FD 35: write failure: (32) Broken pipe.
2008/08/07 13:01:38| sslWriteClient: FD 77: write failure: (32) Broken pipe.
2008/08/07 13:01:39| sslWriteClient: FD 79: write failure: (32) Broken pipe.
2008/08/07 13:01:40| sslWriteClient: FD 42: write failure: (32) Broken pipe.

вот, пять раз пытался юзверь зайти.

debian 4.0rc2

samba 3

cat /etc/samba/smb.conf
#
#   /usr/local/etc/smb.conf
#

#======================= Global Settings =======================
[global]

# netbios имя домена
workgroup = DOMAIN

# Строка комментария
server string = Autoaliance Proxy Server

# Режим безопасности
security = ads

# Доступ только с нашей сети
hosts allow = 10.0.6.

# Расположение лог файла и его размер
log file = /var/log/samba/samba.log
max log size = 500

# Здесь dns имя или ip контроллера домена,
password server = dc.domain.com

# dns имя Active Directory
realm = domain.com

# Тип хранилища.
passdb backend = tdbsam

# Сетевые настройки.
socket options = TCP_NODELAY

# Самба не является PDC
local master = no
domain master = no
preferred master = no
domain logons = no
os level = 0

# Настройка кириллицы
display charset = utf8
unix charset = utf8
dos charset = cp866

# Использовать шифрованные пароли
encrypt passwords = yes

# Настройки winbind
winbind use default domain = no
winbind uid = 10000-20000
winbind gid = 10000-20000
winbind enum users = yes
winbind enum groups = yes

squid - да не надо. обычные параметры. НЕ работает даже простое acl типа:

acl users proxy_auth REQUIRED

http_access allow users CONNECT
http_access allow users

Повторюсь - в инет юзеры ходят без проблем... И подключается пара-тройка асек. остальные - Proxy authentication error, так что дело не в настройках сквида...

Да, children ntlm 25 стоит.


Содержание

Сообщения в этом обсуждении
"помогите, други! непонятки с ntlm аутентификацией..."
Отправлено Aquarius , 14-Авг-08 16:23 
фрагмент squid.conf c authhelper'ами в судию

"помогите, други! непонятки с ntlm аутентификацией..."
Отправлено BlackFalcon , 30-Сен-08 19:23 
>фрагмент squid.conf c authhelper'ами в судию

#auth_param negotiate program <uncomment and complete this line to activate>
#auth_param negotiate children 5
#auth_param negotiate keep_alive on
auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 10
auth_param ntlm keep_alive on
#auth_param digest program <uncomment and complete this line>
#auth_param digest children 5
#auth_param digest realm Squid proxy-caching web server
#auth_param digest nonce_garbage_interval 5 minutes
#auth_param digest nonce_max_duration 30 minutes
#auth_param digest nonce_max_count 50
auth_param basic program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off


"помогите, други! непонятки с ntlm аутентификацией..."
Отправлено BadWar , 07-Окт-08 16:56 
>[оверквотинг удален]
>#auth_param digest children 5
>#auth_param digest realm Squid proxy-caching web server
>#auth_param digest nonce_garbage_interval 5 minutes
>#auth_param digest nonce_max_duration 30 minutes
>#auth_param digest nonce_max_count 50
>auth_param basic program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
>auth_param basic children 5
>auth_param basic realm Squid proxy-caching web server
>auth_param basic credentialsttl 2 hours
>auth_param basic casesensitive off

Естественно у тебя будут всех ходить в инет, кто находиться в домене. У нтлм увидел, что пользователь в домене и дал ему доступ. Если хочешь дать инет определённым людям, то тебе надо добавить ключ к демону

auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp --require-membership-of=DOMAIN/group

где "/" это winbind separator в smb.conf

к примеру --require-membership-of=Home+internet


"помогите, други! непонятки с ntlm аутентификацией..."
Отправлено BlackFalcon , 13-Окт-08 17:29 
>[оверквотинг удален]
>>#auth_param digest nonce_garbage_interval 5 minutes
>>#auth_param digest nonce_max_duration 30 minutes
>>#auth_param digest nonce_max_count 50
>>auth_param basic program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
>>auth_param basic children 5
>>auth_param basic realm Squid proxy-caching web server
>>auth_param basic credentialsttl 2 hours
>>auth_param basic casesensitive off
>
>Естественно у тебя будут всех ходить в инет, кто находиться в домене.

Но не ходят ведь ))))

>У нтлм увидел, что пользователь в домене и дал ему доступ.
>Если хочешь дать инет определённым людям, то тебе надо добавить ключ
>к демону

А я НЕХОЧУ )))

>
>auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp --require-membership-of=DOMAIN/group

Ага, что значит "с использованием авторизации по группе". Без указания этого ключа группа юзера будет тупо игнорироваться....

>
>где "/" это winbind separator в smb.conf
>
>к примеру --require-membership-of=Home+internet

Да бросьте вы глупости говорить. Вопрос бы для начала внимательно прочитали... Вопрос совсем в другом - почему ICQ клиент не авторизуется, вернее авторизуется "через раз".

А Вы мне сейчас описываете как использовать хелпер для авторизации юзеров по определённым доменным группам. Это я давно знаю. А мне не надо, понимаете? У меня каждый пользователь авторизуется. ACL при этом такой: acl user proxy_auth DOMAIN\User. И вообще всё завязано через sams - там все юзеры ведутся. При этом создаётся файл, содержащий юзеров, которым разрешено ходить - (и куда ходить) на общий acl такого вида:

acl _sams_48d21626b8c7e proxy_auth "/etc/squid/48d21626b8c7e.sams"
acl _sams_48d21626b8c7e_time time MTWHFAS 00:00-23:59
acl _sams_48d281057cbf5 proxy_auth "/etc/squid/48d281057cbf5.sams"
acl _sams_48d281057cbf5_time time MTWHFAS 00:00-23:59
acl _sams_48d2149f494f8 proxy_auth "/etc/squid/48d2149f494f8.sams"
acl _sams_48d2149f494f8_time time MTWHFAS 00:00-23:59
acl _sams_48d216bf6913d proxy_auth "/etc/squid/48d216bf6913d.sams"
acl _sams_48d216bf6913d_time time MTWHFAS 00:00-23:59
acl _sams_48f33d476dd93 proxy_auth "/etc/squid/48f33d476dd93.sams"
acl _sams_48f33d476dd93_time time MTWHFAS 00:00-23:59
acl _sams_48d3e37e563e3 url_regex "/etc/squid/48d3e37e563e3.sams"
http_access allow _sams_48d21626b8c7e  !_sams_48d3e37e563e3 _sams_48d21626b8c7e_time
http_access allow _sams_48d281057cbf5  !_sams_48d3e37e563e3 _sams_48d281057cbf5_time
http_access allow _sams_48d2149f494f8  !_sams_48d3e37e563e3 _sams_48d2149f494f8_time
http_access allow _sams_48d216bf6913d  _sams_48d216bf6913d_time
http_access deny _sams_48f33d476dd93  _sams_48f33d476dd93_time
delay_access 1 allow _sams_48d2149f494f8
delay_access 2 allow _sams_48d21626b8c7e
delay_access 3 allow _sams_48d216bf6913d
delay_access 4 allow _sams_48d281057cbf5
delay_access 5 allow _sams_48f33d476dd93


Вот. А файлы содержат юзеров в виде DOMAIN\User, и списки куда им можно-нельзя, со всеми ограничениями...


"помогите, други! непонятки с ntlm аутентификацией..."
Отправлено BlackFalcon , 03-Ноя-08 15:53 
Проблема решена.

Машины загнаны в резервацию по DHCP. Тобиш имеют постоянный IP.

Затем слеплено стандартное ACL для допуска в аську машин с определённым IP.

В настройках QIP указыавем проксю/порт, плюсом ставим ntlm аутентификацию ( а инасе почему-то не работает) )))

По всей видимости, надо было явно указать протокол авторизации в конфиге сквида:

acl ICQ_proto HTTPS

Но не уверен... Работает - и ладно )))


"помогите, други! непонятки с ntlm аутентификацией..."
Отправлено v1ad , 26-Ноя-08 16:17 
Видимо у меня аналогичная проблема. У меня squid связан с AD через winbind. Иногда возникает ситуация когда определенный номер icq, отказывается подключаться с определенного IP-адреса локальной сети из под определенного доменного пользователя. Причем из под этого пользователя на этом ip не подключается ни какой icq номер. Из под др. пользователя на этом ip подключаются любые другие icq номера. А этот определенный icq из под этого пользователя можно подключить с другого ip. Ситуация ненадолго исправляется перезагрузкой контроллера домена и ПК со squid-ом.
Может у кого есть мысли, где можно порыться?



"помогите, други! непонятки с ntlm аутентификацией..."
Отправлено BlackFalcon , 24-Фев-09 14:37 
>Видимо у меня аналогичная проблема. У меня squid связан с AD через
>winbind. Иногда возникает ситуация когда определенный номер icq, отказывается подключаться с
>определенного IP-адреса локальной сети из под определенного доменного пользователя. Причем из
>под этого пользователя на этом ip не подключается ни какой icq
>номер. Из под др. пользователя на этом ip подключаются любые другие
>icq номера. А этот определенный icq из под этого пользователя можно
>подключить с другого ip. Ситуация ненадолго исправляется перезагрузкой контроллера домена и
>ПК со squid-ом.
>Может у кого есть мысли, где можно порыться?

а что говорит на это cache.log сквида? Может рыть стоит в вышеописанном мной направлении (icq_proto HTTPS?), поскольку у меня всё работает на "ура" уже несколько месяцев...