Dave Rutlidge
2005-Mar-23 17:57 UTC
[Samba] Problems authentication against ADS on a W2K3 Server
I'm trying to get Samba set up to use ADS authentication against a
Windows 2003 Server running in native mode. I have successfully joined
the domain, and
kinit user@MYDOMAIN.DOM
works successfully. I can also use smbclient to connect to shares on
the local machine, so Samba is basically working. However, when I try
to connect from a Windows machine I get
[C:\]net use \\unx02\pub
The password or user name is invalid for \\unx02\pub.
Enter the user name for 'unx02': user
Enter the password for unx02:
System error 1326 has occurred.
Logon failure: unknown user name or bad password.
On Unix I get:
[2005/03/23 17:17:48, 1]
smbd/sesssetup.c:reply_spnego_kerberos(173)
Failed to verify incoming ticket!
[2005/03/23 17:17:48, 1]
smbd/sesssetup.c:reply_spnego_kerberos(250)
Username MYDOMAIN.DOM\user is invalid on this system
in 92.168.1.105.log, and
[2005/03/23 17:17:48, 0]
nmbd/nmbd_responserecordsdb.c:find_response_record(220)
find_response_record: response packet id 34265 received with
no matching record.
[2005/03/23 17:17:48, 0]
nmbd/nmbd_responserecordsdb.c:find_response_record(220)
find_response_record: response packet id 34266 received with
no matching record.
in nmbd.log.
I tried leaving & rejoining the AD domain but that didn't help - in fact
it may have made it worse as prior to that I didn't get the "Failed to
verify incoming ticket!" message, just "Username MYDOMAIN.DOM\user is
invalid on this system".
If I specify a different username - foo - which doesn't exist in the AD
domain I get
[2005/03/23 17:48:21, 1]
smbd/sesssetup.c:reply_spnego_kerberos(173)
Failed to verify incoming ticket!
[2005/03/23 17:48:21, 0]
auth/auth_domain.c:domain_client_validate(199)
domain_client_validate: unable to validate password for user
foo in domain MYDOM
to Domain controller \\W2K3DC. Error was
NT_STATUS_NO_SUCH_USER.
in xpclient.log so it is talking to the AD to some extent.
Interestingly and curiously with I specify an invalid name the record
gets logged in the log file based on the machine name, but where I
specify a valid name it gets logged in the log file for the IP address.
Why?
My smb.conf file is:
[global]
workgroup = MYDOM
server string = unx02
printcap name = /etc/printcap
load printers = yes
cups options = raw
log file = /var/log/samba/%m.log
max log size = 50
socket options = TCP_NODELAY SO_RCVBUF=8192
SO_SNDBUF=8192
dns proxy = no
idmap uid = 20000000-33554431
idmap gid = 20000000-33554431
template shell = /bin/false
password server = w2k3dc.mydomain.dom
realm = MYDOMAIN.DOM
security = ADS
winbind use default domain = no
[homes]
comment = Home Directories
browseable = no
writeable = yes
[printers]
comment = All Printers
path = /var/spool/samba
browseable = no
printable = yes
[pub]
path = /var/SAMBA/public
public = yes
only guest = yes
writable = yes
printable = no
browseable = yes
And my kbr5.conf file is
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
[libdefaults]
default_realm = MYDOMAIN.DOM
dns_lookup_realm = false
dns_lookup_kdc = false
[realms]
MYDOMAIN.DOM = {
kdc = w2k3dc.mydomain.dom
admin_server = w2k3dc.mydomain.dom
default_domain = mydomain.dom
}
[domain_realm]
.mydomain.dom = MYDOMAIN.DOM
mydomain.dom = MYDOMAIN.DOM
[kdc]
profile = /var/kerberos/krb5kdc/kdc.conf
[appdefaults]
pam = {
debug = false
ticket_lifetime = 36000
renew_lifetime = 36000
forwardable = true
krb4_convert = false
}
I'm using Samba Version 3.0.10-1.4E on Centos-4, connecting to a Windows
2003 Server AD domain with all the current hotfixes & patches installed,
and I'm testing the connection from an XP Pro machine with SP2 and
subsequent patches.
Any help or pointers would really be appreciated.
