![为 Unix 组配置 Samba 服务器](https://linux22.com/image/619877/%E4%B8%BA%20Unix%20%E7%BB%84%E9%85%8D%E7%BD%AE%20Samba%20%E6%9C%8D%E5%8A%A1%E5%99%A8.png)
我正在尝试设置一个 samba 服务器,以便 Linux (RHEL 6)“wheel”组中的用户能够访问。我根据示例创建了 smb.conf这里它会通过示例进行[accounting]
。在我的smb.conf
我有
[tmp]
comment = temporary files
path = /var/share
valid users = @wheel
read only = No
create mask = 0664
directory mask = 02777
max connections = 0
(其余的输出$ testparm /etc/samba/smb.conf
是这里)。 和
groups `whoami`
返回user01 : wheel
。
当我以 Linux 用户身份从另一台计算机(Mac OS)使用以下命令时(user01
):
$ smbclient -L NETBIOSNAME/tmp
它要求输入密码,我没有输入密码就按了回车键,然后得到:
Enter user01's password:
Anonymous login successful
Domain=[DOMAIN] OS=[Unix] Server=[Samba 3.6.9-151.el6_4.1]
Sharename Type Comment
--------- ---- -------
tmp Disk temporary files
IPC$ IPC IPC Service (Samba Server Version 3.6.9-151.el6_4.1)
但当我尝试
$ smbclient //NETBIOSNAME/tmp
我尝试输入用于 Linux 登录的密码,结果记录了一堆内容,包括
check_sam_security: Couldn't find user 'user01' in passdb.
...
session setup failed: NT_STATUS_LOGON_FAILURE
(如果有帮助的话我可以提供更多日志信息。)
我找不到有关在资源中添加组用户所需步骤的更多参考。我是否应该以某种方式手动从组中添加 Samba 用户?
答案1
这里的问题是 Samba 用户存储中没有系统用户。在这种情况下,解决方案是
- 创建系统用户“user01”(已完成)
- 使用以下命令创建 Samba 用户
smbpasswd -a user01
- 将“user01”添加到系统wheel组
然后用户就可以访问共享。为了避免维护两个用户数据库,您可以考虑使用 LDAP 之类的东西。