[Samba] Samba 3.6.9 on Centos 6.4 and very slow first access to fileserver
Michal Bruncko
michal.bruncko at gmail.com
Wed Sep 4 15:16:43 MDT 2013
Hello good people,
I am fighting with following issue: our users are complaining about very
slow/delayed displaying of main folders during accessing server using
\\dns.name.of.server (using \\IP or \\netbios_name is it with same
slowness). But once they are authenticated, displaying contents of
(sub-)folders are getting normal.
Once the user hit "enter" key on "\\dns.name.of.server" it takes
approximately 20seconds till the user is requested for credentials. This
twenty seconds is delay if user is accessing this server from Windows XP
computer. But if he is using Windows 7, the delay is only ~10 second
longer (but also it considered as long).
Server is in "domain" role, which means that authentication is passed
toward primary controler - which is also samba (same OS, samba version)
with LDAP backend. It does not matter to delay if "password server"
directive is defined or not on this domain member server.
Here is the corresponding log (log level 3) part:
[2013/09/04 22:38:51.733770, 3] libsmb/namequery.c:2533(get_dc_list)
get_dc_list: preferred server list: "FILEZA, *"
[2013/09/04 22:38:51.736953, 3] libsmb/namequery_dc.c:204(rpc_dc_name)
rpc_dc_name: Returning DC FILEZA (10.31.155.247) for domain COMPANY
[2013/09/04 22:38:51.737608, 3]
libsmb/cliconnect.c:3172(cli_start_connection)
Connecting to host=FILEZA
[2013/09/04 22:38:51.756622, 3] lib/util_sock.c:766(open_socket_out_send)
Connecting to 10.31.155.247 at port 445
[2013/09/04 22:38:56.820935, 3] auth/auth.c:219(check_ntlm_password)
check_ntlm_password: Checking password for unmapped user
[WORKSTATION]\[username]@[WORKSTATION] with the new password interface
[2013/09/04 22:38:56.822654, 3] auth/auth.c:222(check_ntlm_password)
check_ntlm_password: mapped user is: [COMPANY]\[username]@[WORKSTATION]
[2013/09/04 22:38:56.823888, 3] libsmb/namequery.c:2533(get_dc_list)
get_dc_list: preferred server list: "FILEZA, *"
[2013/09/04 22:38:56.830032, 3] libsmb/namequery_dc.c:204(rpc_dc_name)
rpc_dc_name: Returning DC FILEZA (10.31.155.247) for domain COMPANY
[2013/09/04 22:38:56.831678, 3]
libsmb/cliconnect.c:3172(cli_start_connection)
Connecting to host=FILEZA
[2013/09/04 22:38:56.832574, 3] lib/util_sock.c:766(open_socket_out_send)
Connecting to 10.31.155.247 at port 445
[2013/09/04 22:39:01.954252, 0]
auth/auth_domain.c:331(domain_client_validate)
domain_client_validate: unable to validate password for user username
in domain WORKSTATION to Domain controller FILEZA. Error was
NT_STATUS_NO_SUCH_USER.
[2013/09/04 22:39:01.962686, 2] auth/auth.c:319(check_ntlm_password)
check_ntlm_password: Authentication for user [username] ->
[username] FAILED with error NT_STATUS_NO_SUCH_USER
[2013/09/04 22:39:01.963542, 3] smbd/error.c:81(error_packet_set)
error packet at smbd/sesssetup.c(124) cmd=115 (SMBsesssetupX)
NT_STATUS_LOGON_FAILURE
[2013/09/04 22:39:01.967732, 3] smbd/server_exit.c:181(exit_server_common)
Server exit (failed to receive smb request)
[2013/09/04 22:39:01.992663, 3] libsmb/namequery.c:2533(get_dc_list)
get_dc_list: preferred server list: "FILEZA, *"
[2013/09/04 22:39:01.995260, 3] libsmb/namequery_dc.c:204(rpc_dc_name)
rpc_dc_name: Returning DC FILEZA (10.31.155.247) for domain COMPANY
[2013/09/04 22:39:01.995722, 3]
libsmb/cliconnect.c:3172(cli_start_connection)
Connecting to host=FILEZA
[2013/09/04 22:39:01.995950, 3] lib/util_sock.c:766(open_socket_out_send)
Connecting to 10.31.155.247 at port 445
[2013/09/04 22:39:07.057852, 3] auth/auth.c:219(check_ntlm_password)
check_ntlm_password: Checking password for unmapped user
[WORKSTATION]\[username]@[WORKSTATION] with the new password interface
[2013/09/04 22:39:07.059742, 3] auth/auth.c:222(check_ntlm_password)
check_ntlm_password: mapped user is: [COMPANY]\[username]@[WORKSTATION]
[2013/09/04 22:39:07.061071, 3] libsmb/namequery.c:2533(get_dc_list)
get_dc_list: preferred server list: "FILEZA, *"
[2013/09/04 22:39:07.068083, 3] libsmb/namequery_dc.c:204(rpc_dc_name)
rpc_dc_name: Returning DC FILEZA (10.31.155.247) for domain COMPANY
[2013/09/04 22:39:07.069450, 3]
libsmb/cliconnect.c:3172(cli_start_connection)
Connecting to host=FILEZA
[2013/09/04 22:39:07.070099, 3] lib/util_sock.c:766(open_socket_out_send)
Connecting to 10.31.155.247 at port 445
[2013/09/04 22:39:07.074267, 3] lib/util_sock.c:766(open_socket_out_send)
Connecting to 10.31.155.247 at port 139
[2013/09/04 22:39:12.200887, 0]
auth/auth_domain.c:331(domain_client_validate)
domain_client_validate: unable to validate password for user username
in domain WORKSTATION to Domain controller FILEZA. Error was
NT_STATUS_NO_SUCH_USER.
[2013/09/04 22:39:12.206915, 2] auth/auth.c:319(check_ntlm_password)
check_ntlm_password: Authentication for user [username] ->
[username] FAILED with error NT_STATUS_NO_SUCH_USER
[2013/09/04 22:39:12.207533, 3] smbd/error.c:81(error_packet_set)
error packet at smbd/sesssetup.c(124) cmd=115 (SMBsesssetupX)
NT_STATUS_LOGON_FAILURE
[2013/09/04 22:39:12.226398, 3] smbd/server_exit.c:181(exit_server_common)
Server exit (failed to receive smb request)
[2013/09/04 22:39:12.265252, 3] auth/auth.c:219(check_ntlm_password)
check_ntlm_password: Checking password for unmapped user
[WORKSTATION]\[username]@[WORKSTATION] with the new password interface
[2013/09/04 22:39:12.265747, 3] auth/auth.c:222(check_ntlm_password)
check_ntlm_password: mapped user is: [COMPANY]\[username]@[WORKSTATION]
[2013/09/04 22:39:12.267007, 3] libsmb/namequery.c:2533(get_dc_list)
get_dc_list: preferred server list: "FILEZA, *"
[2013/09/04 22:39:12.271771, 3] libsmb/namequery_dc.c:204(rpc_dc_name)
rpc_dc_name: Returning DC FILEZA (10.31.155.247) for domain COMPANY
[2013/09/04 22:39:12.273839, 3]
libsmb/cliconnect.c:3172(cli_start_connection)
Connecting to host=FILEZA
[2013/09/04 22:39:12.274794, 3] lib/util_sock.c:766(open_socket_out_send)
Connecting to 10.31.155.247 at port 445
[2013/09/04 22:39:17.403826, 0]
auth/auth_domain.c:331(domain_client_validate)
domain_client_validate: unable to validate password for user username
in domain WORKSTATION to Domain controller FILEZA. Error was
NT_STATUS_NO_SUCH_USER.
[2013/09/04 22:39:17.411754, 2] auth/auth.c:319(check_ntlm_password)
check_ntlm_password: Authentication for user [username] ->
[username] FAILED with error NT_STATUS_NO_SUCH_USER
[2013/09/04 22:39:17.412625, 3] smbd/error.c:81(error_packet_set)
error packet at smbd/sesssetup.c(124) cmd=115 (SMBsesssetupX)
NT_STATUS_LOGON_FAILURE
[2013/09/04 22:39:17.422294, 3] smbd/process.c:1662(process_smb)
Transaction 3 of length 240 (0 toread)
[2013/09/04 22:39:17.422853, 3] smbd/process.c:1467(switch_message)
switch message SMBsesssetupX (pid 5516) conn 0x0
[2013/09/04 22:39:17.424364, 3]
smbd/sesssetup.c:1333(reply_sesssetup_and_X)
wct=12 flg2=0xc807
[2013/09/04 22:39:17.424864, 2] smbd/sesssetup.c:1279(setup_new_vc_session)
setup_new_vc_session: New VC == 0, if NT4.x compatible we would close
all old resources.
[2013/09/04 22:39:17.425557, 3]
smbd/sesssetup.c:1065(reply_sesssetup_and_X_spnego)
Doing spnego session setup
[2013/09/04 22:39:17.426033, 3]
smbd/sesssetup.c:1107(reply_sesssetup_and_X_spnego)
NativeOS=[Windows 2002 Service Pack 3 2600] NativeLanMan=[Windows
2002 5.1] PrimaryDomain=[]
[2013/09/04 22:39:17.427371, 3]
smbd/sesssetup.c:660(reply_spnego_negotiate)
reply_spnego_negotiate: Got secblob of size 40
[2013/09/04 22:39:17.427927, 3]
../libcli/auth/ntlmssp.c:34(debug_ntlmssp_flags)
Got NTLMSSP neg_flags=0xa2088207
[2013/09/04 22:39:17.429631, 3] smbd/process.c:1662(process_smb)
Transaction 4 of length 332 (0 toread)
[2013/09/04 22:39:17.430096, 3] smbd/process.c:1467(switch_message)
switch message SMBsesssetupX (pid 5516) conn 0x0
[2013/09/04 22:39:17.430880, 3]
smbd/sesssetup.c:1333(reply_sesssetup_and_X)
wct=12 flg2=0xc807
[2013/09/04 22:39:17.431578, 2] smbd/sesssetup.c:1279(setup_new_vc_session)
setup_new_vc_session: New VC == 0, if NT4.x compatible we would close
all old resources.
[2013/09/04 22:39:17.432038, 3]
smbd/sesssetup.c:1065(reply_sesssetup_and_X_spnego)
Doing spnego session setup
[2013/09/04 22:39:17.432818, 3]
smbd/sesssetup.c:1107(reply_sesssetup_and_X_spnego)
NativeOS=[Windows 2002 Service Pack 3 2600] NativeLanMan=[Windows
2002 5.1] PrimaryDomain=[]
[2013/09/04 22:39:17.433521, 3]
../libcli/auth/ntlmssp_server.c:348(ntlmssp_server_preauth)
Got user=[username] domain=[WORKSTATION] workstation=[WORKSTATION]
len1=24 len2=24
[2013/09/04 22:39:17.434898, 3] libsmb/namequery.c:2533(get_dc_list)
get_dc_list: preferred server list: "FILEZA, *"
[2013/09/04 22:39:17.440284, 3] libsmb/namequery_dc.c:204(rpc_dc_name)
rpc_dc_name: Returning DC FILEZA (10.31.155.247) for domain COMPANY
[2013/09/04 22:39:17.440892, 3]
libsmb/cliconnect.c:3172(cli_start_connection)
Connecting to host=FILEZA
[2013/09/04 22:39:17.441561, 3] lib/util_sock.c:766(open_socket_out_send)
Connecting to 10.31.155.247 at port 445
[2013/09/04 22:39:22.510591, 3] auth/auth.c:219(check_ntlm_password)
check_ntlm_password: Checking password for unmapped user
[WORKSTATION]\[username]@[WORKSTATION] with the new password interface
[2013/09/04 22:39:22.511547, 3] auth/auth.c:222(check_ntlm_password)
check_ntlm_password: mapped user is: [COMPANY]\[username]@[WORKSTATION]
[2013/09/04 22:39:22.512683, 3] libsmb/namequery.c:2533(get_dc_list)
get_dc_list: preferred server list: "FILEZA, *"
[2013/09/04 22:39:22.516963, 3] libsmb/namequery_dc.c:204(rpc_dc_name)
rpc_dc_name: Returning DC FILEZA (10.31.155.247) for domain COMPANY
[2013/09/04 22:39:22.578989, 3]
libsmb/cliconnect.c:3172(cli_start_connection)
Connecting to host=FILEZA
[2013/09/04 22:39:22.579701, 3] lib/util_sock.c:766(open_socket_out_send)
Connecting to 10.31.155.247 at port 445
[2013/09/04 22:39:27.713051, 0]
auth/auth_domain.c:331(domain_client_validate)
domain_client_validate: unable to validate password for user username
in domain WORKSTATION to Domain controller FILEZA. Error was
NT_STATUS_NO_SUCH_USER.
[2013/09/04 22:39:27.718688, 2] auth/auth.c:319(check_ntlm_password)
check_ntlm_password: Authentication for user [username] ->
[username] FAILED with error NT_STATUS_NO_SUCH_USER
[2013/09/04 22:39:27.719545, 3] smbd/error.c:81(error_packet_set)
error packet at smbd/sesssetup.c(124) cmd=115 (SMBsesssetupX)
NT_STATUS_LOGON_FAILURE
[2013/09/04 22:39:27.737415, 3] smbd/server_exit.c:181(exit_server_common)
Server exit (failed to receive smb request)
-----------> here comes credentials request window on client computer.
as you can see the time from entering the connection till the
user/password request is almost half minute.
Explanations:
- WORKSTATION - is windows client computer (in our case it is windows XP
SP3)
- FILEZA - is PDC (IP: 10.31.155.247) - mentioned before
- COMPANY - is samba domain name
here is configuration part of domain member server:
[global]
workgroup = COMPANY
server string = Samba List Server
netbios name = FILE
interfaces = lo eth0
hosts allow = 127. 10.
hosts deny = 0.0.0.0/0
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
deadtime = 10
# logs split per machine
log file = /var/log/samba/%m.log
# max 50KB per log file, then rotate
max log size = 550
log level = 3
security = domain
map untrusted to domain = yes
local master = no
os level = 22
preferred master = no
wins support = no
wins server = 10.31.155.247
name resolve order = wins bcast
load printers = no
cups options = raw
printcap name = /dev/null
host msdfs = yes
[sales]
msdfs proxy = \10.31.155.247\sales
msdfs root = yes
[iso]
msdfs proxy = \10.31.155.247\iso
msdfs root = yes
[support]
msdfs proxy = \10.31.155.247\support
msdfs root = yes
...
As you can see, there are _four_ "NT_STATUS_LOGON_FAILURE" even before
the client is challenged to provide credentials - why four times? I
understand, that the windows client tries to use cached credentials of
currently logged user, but why four times?
Do you have any idea what can be that bottleneck which is causing this
delay?
thanks for any help on this
michal
More information about the samba
mailing list