"Amos Jeffries" <squid3@xxxxxxxxxxxxx> wrote in message
news:48317751.5040004@xxxxxxxxxxxxxxxx
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