大约每10年我需要与SAMBA搏斗,因为我迁移到新的主机,然后我压制创伤记忆直到我必须在下次重新学习它:S因此这个新的问题。
我有一个带有几个共享的Ubuntu虚拟机 - 一个(“公共”)是不安全的,另一个(“Public2”)是安全的,其目的是只能通过在其上定义的经过身份验证的用户帐户访问它。 Ubuntu盒子。两个共享都出现在XP和Win8.1上的Windows资源管理器中。但是,我不能为我的生活弄清楚如何登录安全的Public2共享。
让Windows客户端离开它,我尝试使用smbclient循环回到框中,这会产生以下输出,表明它无法进行身份验证:
michael@ubuntu:~$ smbclient //ubuntu/Public2 --user=michael%mypasswd
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 4.1.6-Ubuntu]
tree connect failed: NT_STATUS_ACCESS_DENIED
同时可以访问不安全的共享 。 我错过了什么(可能非常明显)?我没有正确指定用户名吗?
/var/lib/samba/usershares/public (unsecure, works) contains:
#VERSION 2
path=/home/michael/Public
comment=
usershare_acl=S-1-1-0:F
guest_ok=y
sharename=Public
/ var / lib / samba / usershares / public2(我无法访问)包含:
#VERSION 2
path=/home/michael/Public2
comment=
usershare_acl=S-1-1-0:F
guest_ok=n
sharename=Public2
答案 0 :(得分:5)
对于使用命令行选项的用户,请使用
$ sudo smbpasswd -a <user_name>
这将提示您分配密码。
答案 1 :(得分:4)
一位同事指出了我正确的方向:
用于访问Linux共享的Linux用户ID需要为其定义第二个“samba”密码。最简单的方法是安装并运行GUI Samba服务器配置应用程序,默认情况下不会安装该应用程序。
Samba文档 解释了这一点,但它隐藏在大量文档中,解释了samba.conf
配置等所有各种神秘的方面。
以下文章介绍了该主题的核心:
http://ubuntuhandbook.org/index.php/2014/05/ubuntu1404-file-sharing-samba/
答案 2 :(得分:0)
您必须编辑'/etc/samba/smb.conf'
使用sudo nano /etc/samba/smb.conf
编辑conf文件。
工作组= [您的域]
答案 3 :(得分:0)
没有“第二个 samba 密码”。有 linux 密码:/etc/passwd,然后是 Samba 密码,即 smbpasswd 或 passdb.tdb。哪个以及它位于何处取决于 Samba 版本和 smb.conf 中的设置。 BOTH 必须设置。两者都表示 /etc/passwd 和 Samba(上述之一)中的 Linux。在大多数情况下,这是此错误消息的问题。或者尝试重启Lanman服务,或者Windows。
但我想评论另一个可能更罕见的案例。
如果您正在使用定制的 Samba,并且仅在这种情况下,此错误可能有另一个(扩展的)原因。
Samba 可能会通过额外的权限检查进行编译,这会说“NO”(返回 false),然后 Samba 将宣布错误,与此 Q 提到的相同。
检查日志是否有错误。如果是这种情况,可能会有线索。
同样,这是针对自定义构建 Samba 的。
特别是在我的情况下,在 QNAP NAS 上,Samba 将调用二进制 /sbin/appriv -C -u 502 -S1
-C, --check Check user privilege.
-S, --samba [bit] The privilege of Samba
-u, --uid [uid] UID.
apppriv 是“apppriv -> nasutil”,它是 QNAP 自己的二进制文件,不是 linux 或 GNU 的一部分。
Samba 中内置了这么多选项,我找不到进行此额外检查的理由。
特别是当它只需要一个返回“true”的普通空文件就可以满足时。
只是一个并发症,可能的问题来源,没有安全进步。
我一直在从 QNAP 更新旧的废弃系统。从另一个更新的 NAS 替换了 Samba。
这就是我如何解决这个问题并在它上面浪费了很多时间。感谢威联通。