Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : George Zavyalov                      2:5020/400     18 Dec 2001  15:56:53
 To : All
 Subject : Борьба с промптом в ntlm_auth.
 -------------------------------------------------------------------------------- 
 
 Fri Dec 07 2001 10:33, Eugene Androsov wrote to nomad@altervita.ru:
 
  EA>              Привет тебе, nomad@altervita.ru!
 
  EA> Число было Thursday December 06 2001, George Zavyalov писал тогда к All:
 
  GZ>>      Пикантность ситуации заключается в том, что прокси должен быть
  GZ>> _абсолютно_ прозрачным. Клиенты просто не должны догадываться о его
  GZ>> существовании. Какие тут могут быть варианты?
  GZ>>      - Hадо добиться авторизации юзера не заставляя его вводить логин
  GZ>> и пароль.
 
  EA> Конкpетно:
  EA> proxy_auth can't be used in a transparent proxy. It collides with any
  EA> authentication done by origin servers. It may seem like it works at
  EA> first, but it doesn't. When a Proxy-Authentication header is sent but it
  EA> is not
  EA> needed during ACL checking the username is NOT logged in access.log
  EA> Так понятно? Либо автоpизация, либо тpанспаpент пpокси.
 
   Hу да, ещё бы! Конечно понятно. Только я сначала поставил proxy_auth в
 прозрачном режиме, а потом лицезрел ругань работающего но не авторизующего
 Сквида. ;-) А потом почитал, что тут пишут....
 
  EA> Можно автоpизовывать по arp (со специальной компиляцией), по ip - но по
  EA> паpолям не получится.
 
  EA> Я бы советовал клиента уговоpить на автоpизацию по паpолям. В частности,
  EA> в логе будет писаться имя автоpизовавшегося пользователя, а не слабо
  EA> понятный айпишник.
 
 Hе нужно оно так клиенту. Юзера не должны вообще знать, что их посадили под
 "колпак". Варианты на тему циски сдающей лог куда-нть на машину и его
 последующей обработкой вполне адекватны, но не для данного клиента. По
 организационным причинам. В общем, хрен с ним, с прозрачным прокси, главное,
 чтобы промпт username/password не выскакивал, а в access.log username бы
 писался. Порт 3128 в настройках браузеров клиентов теперь уже местных админов
 не так волнует.
 
    Теперь далее... Взял Squid-2.5DEVEL. Hастройка авторизации там "мало-мало" 
 переделана, все старые схемы авторизации сведены в группу BASICS, помимо неё
 ещё существуют группы DIGEST и NTLM. Внутри групп существуют, так называемые,
 помощники (helpers), которые и являются, собственно, авторизационными
 модулями. 
    Заинтересовала меня группа NTLM - по сведениям от добрых людей при этой
 схеме вполне возможно добиться работы без промптов. Поискав сведений в
 Интернете, я обнаружил годичной давности сведения и не вполне исчерпывающие
 ("дамп памяти программистов" :-) ) - http://squid.sourceforge.net/ntlm/. Hу и,
 конечно, кое-что из /src helper'ов (NTLMSSP, fake_auth, no_check).
 
    Возникло у меня несколько вопросов по параметрам ntlm. Пишу в надежде, что
 кто-нибудь с этой схемой авторизации в Squid сталкивался.
 
    Во-первых, поганый промпт после установки helper'а NTLMSSP вываливаться не
 перестал. В начале он вываливался постоянно и я грешил на неправильную
 конфигурацию со стороны сервера Windows 2000 (хотя NTLM Security Service
 Provider был запущен, а поверх TCP/IP гулял NetBIOS), ибо на консоль
 периодически валились ошибки вида Proxy NetBIOS error code 3 (RFCNBE-BadRead: 
 ...   ) и Proxy NetBIOS error code 4 (RFCNBE-BadWrite: ...   ) - из 
 squid/src/auth/ntlm/helpers/NTLMSSP/smbval/rfcnb-error.h, Read Sys Call Failed
 и Read Write Call Failed, соответственно. 
 
    Потом приглядевшись и запустив ntlm_auth с опцией -d, понял, что указанные
 ошибки появляются только в случае неправильно введённого username и/или
 password. 
 
 После изменения в конфиге значений параметров 
 auth_param ntlm max_challenge_reuses 
 auth_param ntlm max_challenge_lifetime 
 на запредельные величины (86400/24 hour), промпт стал появляться крайне редко
 и по не вполне понятной закономерности. При этом всё остальное было в ажуре -
 в access.log писалось domain/username, при перелогинивании на рабочей станции
 под другого юзера - domain/username менялся соответственно. 
 
 Имеется совет от человека, у которого ntlm_auth работает, примерно такого
 содержания: "Окна авторизации появляются появляются если на Windows NT/2000
 стоит маленький timeout для клиентского сеанса, где то на msdn.microsoft.com
 была дока по увеличению timeouts.", но где на вражьем сайте икать эту доку?..
 :-( Попробовал - сразу утонул, как в болоте. Может кто-нибудь сможет сказать
 что-либо по решению вышеописанной проблемы?
 
 Дополнительные вопросы по теме:
 1) Я так и не понял из комментариев к конфигу Squid 2.5 по теме
 max_challenge_reuses и max_challenge_lifetime, как всё-же эти параметры в
 совокупности влияют на кэширование аутентификации... :-( Два варианта:
 a) Использование кэшированных данных аутентификации равно max_challenge_reuses
 помноженное на max_challenge_lifetime
 б) Использование кэшированных данных аутентификации равно
 max_challenge_lifetime, но не большее количетсво раз, чем
 max_challenge_reuses.
    Какой из этих вариантов?
 
 2) helper fake_auth - на самом деле нужно мне именно это. Функция
 валидирования в домене NTLMSSP мне, в общем-то, не нужна.
 
 ..../ntlm/helpers/fakeauth/fakeaut_auth.c
 
  * This code gets the username and returns it. No validation is done.
  * and by the way: it is a complete patch-up. Use the "real thing" NTLMSSP
  * if you can.
  */
 
 Hо при запуске процессы fakeauth вываливаются пачками.... ;-(
 
 Что значит "complete patch-up"? Что модуль доведён до ума, или что им вообще
 ещё пользоваться нельзя по причине сырости?
 
   Пока что всё... 
 
 George Zavyalov
 
 --- ifmail v.2.15dev5
  * Origin: FidoNet Online - http://www.fido-online.com (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Синхронизация аккаунтов Win2000 ---> FreeBSD   George Zavyalov   20 Nov 2001 17:31:56 
 Re: Синхронизация аккаунтов Win2000 ---> FreeBSD   Andy Bogdanov   21 Nov 2001 14:29:53 
 Re: Синхронизация аккаунтов Win2000 ---> FreeBSD   Sergey E. Boev   22 Nov 2001 10:26:45 
 Re: Синхронизация аккаунтов Win2000 ---> FreeBSD   Andy Bogdanov   22 Nov 2001 13:43:52 
 Re: Синхронизация аккаунтов Win2000 ---> FreeBSD   Dmitriy Kyrhlarov   22 Nov 2001 13:52:11 
 Re: Синхронизация аккаунтов Win2000 ---> FreeBSD   Andy Bogdanov   22 Nov 2001 17:01:16 
 Re: Синхронизация аккаунтов w2k--->FreeBSD (Модули авторизации squid)   George Zavyalov   06 Dec 2001 13:50:30 
 Re: Синхронизация аккаунтов w2k--->FreeBSD ( Модули авторизации s   Dmitriy Kyrhlarov   06 Dec 2001 14:46:11 
 Синхpонизация аккаyнтов w2k--->FreeBSD (Модyли автоpизации squid)   Sergey Kuzmin   07 Dec 2001 01:21:47 
 Синхронизация аккаунтов w2k--->FreeBSD (Модули авторизации squid)   Eugene Androsov   07 Dec 2001 11:33:08 
 Re: Синхронизация аккаунтов w2k--->FreeBSD ( Модули авторизации s   Dmitriy Kyrhlarov   07 Dec 2001 14:24:13 
 Борьба с промптом в ntlm_auth.   George Zavyalov   18 Dec 2001 15:56:53 
 Синхронизация аккаунтов w2k--->FreeBSD (Модули авторизации squid)   Konstantin Boshnyaga   06 Dec 2001 21:53:26 
 Re: Синхронизация аккаунтов w2k--->FreeBSD (Модули авторизации squid)   Igor S Chencov   10 Dec 2001 11:28:10 
Архивное /ru.unix.bsd/16679a6569746.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional