Samba 3.6.x changed the security defaults, which affects the smbclient as well. The root cause is that a current ubuntu-like 3.6.3 revision cannot login onto a 3.4.x based samba server.

It always hits an error like this (pretty misleading, as the user exists, and the password is entered correctly).

$ smbclient //share.host/sharename -U youruser
Enter youruser's password:
session setup failed: NT_STATUS_LOGON_FAILURE

$ smbclient -V
Version 3.6.3

The source of that can be read on the Samba Changelog

Changed security defaults
-------------------------

Samba 3.6 has adopted a number of improved security defaults that will
impact on existing users of Samba.

 client ntlmv2 auth = yes
 client use spnego principal = no
 send spnego principal = no

The impact of 'client ntlmv2 auth = yes' is that by default we will not
use NTLM authentication as a client.  This applies to the Samba client
tools such as smbclient and winbind, but does not change the separately
released in-kernel CIFS client.  To re-enable the poorer NTLM encryption
set '--option=clientusentlmv2auth=no' on your smbclient command line, or
set 'client ntlmv2 auth = no' in your smb.conf

Fixing this for the smbclient is not using the commandline option (does not work for me), but generally within the smb.conf (not within any section like [global], but really global in the first place!)

$ sudo vim /etc/samba/smb.conf

client ntlmv2 auth = no

Then we are lucky again.

$ smbclient //share.host/sharename -U youruser
Enter youruser’s password:
Domain=[SHARE] OS=[Unix] Server=[Samba 3.4.x]
smb: >

Update 2012-08-06: You can also put the complete string “domainusername” in order to compete with the changed auth.

%d bloggers like this: