[squid-users] Re: NTLMSSP as part of negotiate question

From: Markus Moeller <huaraz_at_moeller.plus.com>
Date: Mon, 19 May 2008 20:26:06 +0100

"Amos Jeffries" <squid3_at_treenet.co.nz> wrote in message
news:48317751.5040004_at_treenet.co.nz...
> Markus Moeller wrote:
>> I am trying to use negotiate with Kerberos and fallback to ntlm. When I
>> capture the client traffic to squid I get:
>>
>> Proxy-Authorization: Negotiate
>> TlRMTVNTUAABAAAAB4IIogAAAAAAAAAAAAAAAAAAAAAFASgKAAAADw==\r\n
>> NTLMSSP
>> NTLMSSP identifier: NTLMSSP
>> NTLM Message Type: NTLMSSP_NEGOTIATE (0x00000001)
>> Flags: 0xa2088207
>> 1... .... .... .... .... .... .... .... = Negotiate 56:
>> Set
>> .0.. .... .... .... .... .... .... .... = Negotiate Key
>> Exchange: Not set
>> ..1. .... .... .... .... .... .... .... = Negotiate 128:
>> Set
>> ...0 .... .... .... .... .... .... .... = Negotiate
>> 0x10000000: Not set
>> .... 0... .... .... .... .... .... .... = Negotiate
>> 0x08000000: Not set
>> .... .0.. .... .... .... .... .... .... = Negotiate
>> 0x04000000: Not set
>> .... ..1. .... .... .... .... .... .... = Negotiate
>> 0x02000000: Set
>> .... ...0 .... .... .... .... .... .... = Negotiate
>> 0x01000000: Not set
>> .... .... 0... .... .... .... .... .... = Negotiate Target
>> Info: Not set
>> .... .... .0.. .... .... .... .... .... = Negotiate
>> 0x00400000: Not set
>> .... .... ..0. .... .... .... .... .... = Negotiate
>> 0x00200000: Not set
>> .... .... ...0 .... .... .... .... .... = Negotiate
>> 0x00100000: Not set
>> .... .... .... 1... .... .... .... .... = Negotiate NTLM2
>> key: Set
>> .... .... .... .0.. .... .... .... .... = Negotiate
>> Challenge Non NT Session Key: Not set
>> .... .... .... ..0. .... .... .... .... = Negotiate
>> Challenge Accept Response: Not set
>> .... .... .... ...0 .... .... .... .... = Negotiate
>> Challenge Init Response: Not set
>> .... .... .... .... 1... .... .... .... = Negotiate Always
>> Sign: Set
>> .... .... .... .... .0.. .... .... .... = Negotiate This
>> is Local Call: Not set
>> .... .... .... .... ..0. .... .... .... = Negotiate
>> Workstation Supplied: Not set
>> .... .... .... .... ...0 .... .... .... = Negotiate Domain
>> Supplied: Not set
>> .... .... .... .... .... 0... .... .... = Negotiate
>> 0x00000800: Not set
>> .... .... .... .... .... .0.. .... .... = Negotiate
>> 0x00000400: Not set
>> .... .... .... .... .... ..1. .... .... = Negotiate NTLM
>> key: Set
>> .... .... .... .... .... ...0 .... .... = Negotiate
>> Netware: Not set
>> .... .... .... .... .... .... 0... .... = Negotiate Lan
>> Manager Key: Not set
>> .... .... .... .... .... .... .0.. .... = Negotiate
>> Datagram Style: Not set
>> .... .... .... .... .... .... ..0. .... = Negotiate Seal:
>> Not set
>> .... .... .... .... .... .... ...0 .... = Negotiate Sign:
>> Not set
>> .... .... .... .... .... .... .... 0... = Request
>> 0x00000008: Not set
>> .... .... .... .... .... .... .... .1.. = Request Target:
>> Set
>> .... .... .... .... .... .... .... ..1. = Negotiate OEM:
>> Set
>> .... .... .... .... .... .... .... ...1 = Negotiate
>> UNICODE: Set
>> Calling workstation domain: NULL
>> Calling workstation name: NULL
>> \r\n
>>
>> But when I use ntlm I get:
>>
>> Proxy-Authorization: NTLM
>> TlRMTVNTUAABAAAAB7IIogkACQAtAAAABQAFACgAAAAFASgKAAAAD1dJTlhQV0lOMjAwM1Iy\r\n
>> NTLMSSP
>> NTLMSSP identifier: NTLMSSP
>> NTLM Message Type: NTLMSSP_NEGOTIATE (0x00000001)
>> Flags: 0xa208b207
>> 1... .... .... .... .... .... .... .... = Negotiate 56:
>> Set
>> .0.. .... .... .... .... .... .... .... = Negotiate Key
>> Exchange: Not set
>> ..1. .... .... .... .... .... .... .... = Negotiate 128:
>> Set
>> ...0 .... .... .... .... .... .... .... = Negotiate
>> 0x10000000: Not set
>> .... 0... .... .... .... .... .... .... = Negotiate
>> 0x08000000: Not set
>> .... .0.. .... .... .... .... .... .... = Negotiate
>> 0x04000000: Not set
>> .... ..1. .... .... .... .... .... .... = Negotiate
>> 0x02000000: Set
>> .... ...0 .... .... .... .... .... .... = Negotiate
>> 0x01000000: Not set
>> .... .... 0... .... .... .... .... .... = Negotiate Target
>> Info: Not set
>> .... .... .0.. .... .... .... .... .... = Negotiate
>> 0x00400000: Not set
>> .... .... ..0. .... .... .... .... .... = Negotiate
>> 0x00200000: Not set
>> .... .... ...0 .... .... .... .... .... = Negotiate
>> 0x00100000: Not set
>> .... .... .... 1... .... .... .... .... = Negotiate NTLM2
>> key: Set
>> .... .... .... .0.. .... .... .... .... = Negotiate
>> Challenge Non NT Session Key: Not set
>> .... .... .... ..0. .... .... .... .... = Negotiate
>> Challenge Accept Response: Not set
>> .... .... .... ...0 .... .... .... .... = Negotiate
>> Challenge Init Response: Not set
>> .... .... .... .... 1... .... .... .... = Negotiate Always
>> Sign: Set
>> .... .... .... .... .0.. .... .... .... = Negotiate This
>> is Local Call: Not set
>> .... .... .... .... ..1. .... .... .... = Negotiate
>> Workstation Supplied: Set
>> .... .... .... .... ...1 .... .... .... = Negotiate Domain
>> Supplied: Set
>> .... .... .... .... .... 0... .... .... = Negotiate
>> 0x00000800: Not set
>> .... .... .... .... .... .0.. .... .... = Negotiate
>> 0x00000400: Not set
>> .... .... .... .... .... ..1. .... .... = Negotiate NTLM
>> key: Set
>> .... .... .... .... .... ...0 .... .... = Negotiate
>> Netware: Not set
>> .... .... .... .... .... .... 0... .... = Negotiate Lan
>> Manager Key: Not set
>> .... .... .... .... .... .... .0.. .... = Negotiate
>> Datagram Style: Not set
>> .... .... .... .... .... .... ..0. .... = Negotiate Seal:
>> Not set
>> .... .... .... .... .... .... ...0 .... = Negotiate Sign:
>> Not set
>> .... .... .... .... .... .... .... 0... = Request
>> 0x00000008: Not set
>> .... .... .... .... .... .... .... .1.. = Request Target:
>> Set
>> .... .... .... .... .... .... .... ..1. = Negotiate OEM:
>> Set
>> .... .... .... .... .... .... .... ...1 = Negotiate
>> UNICODE: Set
>> Calling workstation domain: WIN2003R2
>> Length: 9
>> Maxlen: 9
>> Offset: 45
>> Calling workstation name: WINXP
>> Length: 5
>> Maxlen: 5
>> Offset: 40
>> \r\n
>>
>>
>> Why doesn't the packet with negotiate contain the workstation domain and
>> workstation name ?
>>
>> Thank you
>> Markus
>>
>
> Which version of squid are you using? and which helpers?
>

I use on Opensuse 10.2 /usr/sbin/squid -v
Squid Cache: Version 2.6.STABLE14
configure options: '--prefix=/usr' '--sysconfdir=/etc/squid'
'--bindir=/usr/sbin' '--sbindir=/usr/sbin' '--localstatedir=/var'
'--libexecdir=/usr/sbin' '--datadir=/usr/share/squid'
'--mandir=/usr/share/man' '--with-dl' '--with-maxfd=4096'
'--with-valgrind-debug' '--enable-snmp' '--enable-carp' '--enable-auth=basic
digest negotiate ntlm' '--enable-basic-auth-helpers=LDAP MSNT NCSA PAM SMB
YP getpwnam multi-domain-NTLM' '--enable-ntlm-auth-helpers=SMB fakeauth
no_check' '--enable-digest-auth-helpers=ldap password'
'--enable-external-acl-helpers=ip_user ldap_group session unix_group
wbinfo_group' '--enable-ntlm-fail-open' '--enable-arp-acl' '--enable-htcp'
'--enable-underscores' '--enable-stacktraces' '--enable-delay-pools'
'--enable-useragent-log' '--enable-referer-log' '--enable-forward-log'
'--enable-multicast-miss' '--enable-ssl' '--enable-cache-digests'
'--enable-auth-on-acceleration' '--enable-storeio=aufs,coss,diskd,null,ufs'
'--enable-linux-netfilter' '--enable-removal-policies=heap,lru'
'--enable-icmp' '--with-samba-sources=/usr/include/samba'
'--enable-large-cache-files' '--enable-x-accelerator-vary'
'--enable-follow-x-forwarded-for'
'CFLAGS=-O2 -march=i586 -mtune=i686 -fmessage-length=0 -Wall -D_FORTIFY_SOURCE=2
 -fstack-protector -g -fPIE -DLDAP_DEPRECATED -fno-strict-aliasing'
'LDFLAGS=-pie'

with ntlm_auth and my squid_kerb_auth for negotiate. The client is IE7 on
XP with a Windows 2003 DC. I have configured IE to use the proxy IP(this
disables Kerberos and forces negotiate to use NTLM) for all traffic.

Regards
Markus

BTW I get the same result with Firefox 2.0.0.13

> (ps. I'm not likely to know the answer, but others will need the info to
> help.)
>
> Amos
> --
> Please use Squid 2.6.STABLE20 or 3.0.STABLE5
>
Received on Mon May 19 2008 - 19:26:29 MDT

This archive was generated by hypermail 2.2.0 : Tue Aug 05 2008 - 01:05:13 MDT