[Samba] ADS authentication stopped working

francis picabia fpicabia at gmail.com
Mon Oct 3 13:27:47 MDT 2011


Running Samba mostly on Redhat 5 with version 3.5.4-0.83
Also failed on Debian 3.5.6 and Solaris with a 3.5 version.
Logging details here are from Redhat case.

We have a similar problem on all Unix/Linux systems using
ADS as the backend authentication for samba shares on Unix/Linux.

It was working before today and we didn't change anything.
Today, any time we try smbclient or a Windows drive map
to connect, and the user is not in /etc/passwd,
it fails.  Yet if they are in /etc/passwd, it succeeds.

"net ads testjoin" returns OK.

If I take the user not in /etc/passwd and use either:

wbinfo -a username%password

or

kinit username at AD.MYDOMAIN.CA

it works.

Winbind and samba services have been restarted.
SSH login using AD auth works fine.

We have reduced to minimal /etc/pam.d/samba:

auth        required      pam_env.so
auth        sufficient    pam_winbind.so use_first_pass debug
auth        required      pam_deny.so
account     required      pam_permit.so



Login attempt:

$ smbclient -U username //www/test
Enter username's password:
session setup failed: NT_STATUS_LOGON_FAILURE

Log level 10:

[2011/10/03 15:22:03.546880,  6] param/loadparm.c:7133(lp_file_list_changed)
  lp_file_list_changed()
  file /etc/samba/smb.conf -> /etc/samba/smb.conf  last mod_time: Mon
Oct  3 15:21:45 2011
[2011/10/03 15:22:03.546943,  5] auth/auth_util.c:211(make_user_info_map)
  Mapping user [MYDOMAIN]\[username] from workstation [LABRADOR]
[2011/10/03 15:22:03.547328,  5] auth/auth_util.c:122(make_user_info)
  attempting to make a user_info for username (username)
[2011/10/03 15:22:03.547351,  5] auth/auth_util.c:132(make_user_info)
  making strings for username's user_info struct
[2011/10/03 15:22:03.547370,  5] auth/auth_util.c:164(make_user_info)
  making blobs for username's user_info struct
[2011/10/03 15:22:03.547390, 10] auth/auth_util.c:182(make_user_info)
  made an encrypted user_info for username (username)
[2011/10/03 15:22:03.547411,  3] auth/auth.c:216(check_ntlm_password)
  check_ntlm_password:  Checking password for unmapped user
[MYDOMAIN]\[username]@[LABRADOR] with the new password interface
[2011/10/03 15:22:03.547434,  3] auth/auth.c:219(check_ntlm_password)
  check_ntlm_password:  mapped user is: [MYDOMAIN]\[username]@[LABRADOR]
[2011/10/03 15:22:03.547453, 10] auth/auth.c:228(check_ntlm_password)
  check_ntlm_password: auth_context challenge created by NTLMSSP
callback (NTLM2)
[2011/10/03 15:22:03.547473, 10] auth/auth.c:230(check_ntlm_password)
  challenge is:
[2011/10/03 15:22:03.547488,  5] ../lib/util/util.c:278(_dump_data)
  [0000] 89 E2 DB 1A E5 3D A7 6C                            .....=.l
[2011/10/03 15:22:03.547529, 10] auth/auth.c:256(check_ntlm_password)
  check_ntlm_password: guest had nothing to say
[2011/10/03 15:22:03.547560,  8] lib/util.c:1869(is_myname)
  is_myname("MYDOMAIN") returns 0
[2011/10/03 15:22:03.547580,  6] auth/auth_sam.c:556(check_samstrict_security)
  check_samstrict_security: MYDOMAIN is not one of my local names
(ROLE_DOMAIN_MEMBER)
[2011/10/03 15:22:03.547603, 10] auth/auth.c:256(check_ntlm_password)
  check_ntlm_password: sam had nothing to say
[2011/10/03 15:22:03.547624,  3] smbd/sec_ctx.c:210(push_sec_ctx)
  push_sec_ctx(0, 0) : sec_ctx_stack_ndx = 1
[2011/10/03 15:22:03.547646,  3] smbd/uid.c:429(push_conn_ctx)
  push_conn_ctx(0) : conn_ctx_stack_ndx = 0
[2011/10/03 15:22:03.547665,  3] smbd/sec_ctx.c:310(set_sec_ctx)
  setting sec ctx (0, 0) - sec_ctx_stack_ndx = 1
[2011/10/03 15:22:03.547685,  5] auth/token_util.c:525(debug_nt_user_token)
  NT user token: (NULL)
[2011/10/03 15:22:03.547702,  5] auth/token_util.c:551(debug_unix_user_token)
  UNIX token of user 0
  Primary group is 0 and contains 0 supplementary groups
[2011/10/03 15:22:03.551090,  3] smbd/sec_ctx.c:418(pop_sec_ctx)
  pop_sec_ctx (0, 0) - sec_ctx_stack_ndx = 0
[2011/10/03 15:22:03.551129,  5] lib/username.c:133(Get_Pwnam_alloc)
  Finding user MYDOMAIN\username
[2011/10/03 15:22:03.551148,  5] lib/username.c:77(Get_Pwnam_internals)
  Trying _Get_Pwnam(), username as lowercase is acadia\username
[2011/10/03 15:22:03.551276,  5] lib/username.c:85(Get_Pwnam_internals)
  Trying _Get_Pwnam(), username as given is MYDOMAIN\username
[2011/10/03 15:22:03.551388,  5] lib/username.c:95(Get_Pwnam_internals)
  Trying _Get_Pwnam(), username as uppercase is MYDOMAIN\MPOWER
[2011/10/03 15:22:03.551491,  5] lib/username.c:104(Get_Pwnam_internals)
  Checking combinations of 0 uppercase letters in acadia\username
[2011/10/03 15:22:03.551526,  5] lib/username.c:110(Get_Pwnam_internals)
  Get_Pwnam_internals didn't find user [MYDOMAIN\username]!
[2011/10/03 15:22:03.551546,  5] lib/username.c:133(Get_Pwnam_alloc)
  Finding user username
[2011/10/03 15:22:03.551564,  5] lib/username.c:77(Get_Pwnam_internals)
  Trying _Get_Pwnam(), username as lowercase is username
[2011/10/03 15:22:03.551666,  5] lib/username.c:95(Get_Pwnam_internals)
  Trying _Get_Pwnam(), username as uppercase is MPOWER
[2011/10/03 15:22:03.551779,  5] lib/username.c:104(Get_Pwnam_internals)
  Checking combinations of 0 uppercase letters in username
[2011/10/03 15:22:03.551799,  5] lib/username.c:110(Get_Pwnam_internals)
  Get_Pwnam_internals didn't find user [username]!
[2011/10/03 15:22:03.551861,  5] auth/auth.c:268(check_ntlm_password)
  check_ntlm_password: winbind authentication for user [username]
FAILED with error NT_STATUS_NO_SUCH_USER
[2011/10/03 15:22:03.551889,  2] auth/auth.c:314(check_ntlm_password)
  check_ntlm_password:  Authentication for user [username] ->
[username] FAILED with error NT_STATUS_NO_SUCH_USER
[2011/10/03 15:22:03.551910,  5] auth/auth_util.c:2119(free_user_info)
  attempting to free (and zero) a user_info structure
[2011/10/03 15:22:03.551934, 10] auth/auth_util.c:2123(free_user_info)
  structure was created for username
[2011/10/03 15:22:03.551964,  3] smbd/error.c:80(error_packet_set)
  error packet at smbd/sesssetup.c(111) cmd=115 (SMBsesssetupX)
NT_STATUS_LOGON_FAILURE
[2011/10/03 15:22:03.552000,  5] lib/util.c:617(show_msg)
[2011/10/03 15:22:03.552013,  5] lib/util.c:627(show_msg)
  size=35
  smb_com=0x73
  smb_rcls=109
  smb_reh=0
  smb_err=49152
  smb_flg=136
  smb_flg2=51203
  smb_tid=0
  smb_pid=6992
  smb_uid=100
  smb_mid=3
  smt_wct=0
  smb_bcc=0
[2011/10/03 15:22:03.552941,  5] lib/util_sock.c:462(read_fd_with_timeout)
  read_fd_with_timeout: blocking read. EOF from client.
[2011/10/03 15:22:03.552994, 10] smbd/process.c:286(receive_smb_raw_talloc)
  receive_smb_raw: NT_STATUS_END_OF_FILE
[2011/10/03 15:22:03.553025,  3] smbd/sec_ctx.c:310(set_sec_ctx)
  setting sec ctx (0, 0) - sec_ctx_stack_ndx = 0
[2011/10/03 15:22:03.553046,  5] auth/token_util.c:525(debug_nt_user_token)
  NT user token: (NULL)
[2011/10/03 15:22:03.553066,  5] auth/token_util.c:551(debug_unix_user_token)
  UNIX token of user 0
  Primary group is 0 and contains 0 supplementary groups
[2011/10/03 15:22:03.553105,  5] smbd/uid.c:369(change_to_root_user)
  change_to_root_user: now uid=(0,0) gid=(0,0)
[2011/10/03 15:22:03.553127,  3] smbd/connection.c:31(yield_connection)
  Yielding connection to
[2011/10/03 15:22:03.553179, 10] lib/dbwrap_tdb.c:100(db_tdb_fetch_locked)
  Locking key B56E0000FFFFFFFFFFFF
[2011/10/03 15:22:03.553204, 10] lib/dbwrap_tdb.c:129(db_tdb_fetch_locked)
[2011/10/03 15:22:03.553204, 10] lib/dbwrap_tdb.c:129(db_tdb_fetch_locked)
  Allocated locked data 0x0x7f9ba627a6f0
[2011/10/03 15:22:03.553228, 10] lib/dbwrap_tdb.c:42(db_tdb_record_destr)
  Unlocking key B56E0000FFFFFFFFFFFF
[2011/10/03 15:22:03.553324,  3] smbd/server.c:906(exit_server_common)
  Server exit (failed to receive smb request)



The Windows admin doesn't believe they changed anything on their end.

Where do we look next?


More information about the samba mailing list