Bug 40322
Summary: | mount fails port 445 with NT_STATUS_INVALID_WORKSTATION but works port 139 | ||
---|---|---|---|
Product: | File System | Reporter: | Sean Finney (seanius) |
Component: | CIFS | Assignee: | fs_cifs (fs_cifs) |
Status: | RESOLVED OBSOLETE | ||
Severity: | normal | CC: | alan, jlayton |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | Subsystem: | ||
Regression: | No | Bisected commit-id: |
Description
Sean Finney
2011-07-29 09:31:08 UTC
I don't think so: http://msdn.microsoft.com/en-us/library/cc246249%28v=PROT.13%29.aspx IIUC, when the connection is done on port 445, then SMB is layered directly on top of TCP, without any of the NetBIOS goop in between. What might be helpful is some captures that show what smbclient is doing in your situation. Sean sent me some captures. The big difference is that smbclient is using NTLMSSP to authenticate. I suspect that using sec=ntlmssp on a recent kernel will also work. It certainly would be nice if this were more automatic in cifs. I tried to fix that a year or two ago, but Steve wanted something that allowed you to specify multiple sec= options at a time: http://lists.samba.org/archive/linux-cifs-client/2010-April/005830.html I didn't have time to re-do the whole set for that. Perhaps someone else would want to now. agreed, and newish (2.6.38 -- 3.0ish) kernels seem to work with sec=ntlmssp. Reading through the MS docs, it seems that the packet format for SessionSetupAndX ([MS-CIFS] 2.2.4.53) doesn't include a way to specify the client workstation without either having the netbios stuff prepended or using NTLMSSP (which is probably the "real" fix here). BTW, it seems that with older "LTS" kernels (ubuntu lucid == 2.6.32 + backports), sec=ntlmssp is entirely broken: mount error(2): No such file or directory Refer to the mount.cifs(8) manual page (e.g. man mount.cifs) But at least we have the port=139 workaround in the meantime :) But for this bug, I think you can either close it (works with ntlmssp on newer kernels), or repurpose it to track the eventual progress for the patchset you referenced. |