Centos的SAMBA服务配置、smb权限、windows访问失败、共享挂载失败、共享目录挂载、虚拟用户映射

安装samba文件共享服务

1.
挂载光盘


2.
修改yum源,安装相应的包


3.
配置相关文件
/etc/samba/smb.conf
复制文件末尾内容:
;       [public] (共享名,也就是共享文件夹的名字。默认情况用户的家目录也会共享)
;       comment = Public Stuff (对该共享的注释)
;       path = /home/samba (共享目录)
;       public = yes (是否公开,也就是是否允许匿名访问)
;       writable = yes (是否写入)
;       printable = no (忘了= =)
;       write list = +staff (允许谁写入)
在最后打开一新行,打上一串#号,在#行后面黏贴以上内容。然后删除前面的分号。
最后一行的write list:+staff表示任何用户(大概);
如果要允许某用户,则删掉+staff,在等号后面直接写用户名。多个用户名用空格隔开;
如果要允许某组,则等号后写@组名,同样空格隔开多个组。
保存退出。


4.
创建用户
4.1
先添加本地用户
useradd smb1
创建密码文件
touch /etc/samba/smbpasswd
将密码写入密码文件
smbpasswd -a -c /etc/samba/smbpasswd smb1
正式的创建用户密码
smbpasswd -a smb1
创建完成。
4.2
添加本地用户,然后直接设置密码:
pdbedit -au smb1
这个方法无法将密码写入密码文件。
4.3
进入samba的主配置文件,跳到102行(33%处):
passdb backend=tdbsam
将tdbsam改为密码文件的名字(这里设定为smbpasswd)
passdb backend=smbpasswd
保存退出。创建本地用户,然后用以下命令设置密码:
smbpasswd -a smb1
用户密码创建完毕,而且自动生成密码文件smbpasswd,并自动将密码写入密码文件。


5.
生效
smb权限


Centos的SAMBA服务配置、smb权限、windows访问失败、共享挂载失败、共享目录挂载、虚拟用户映射_第1张图片
Centos的SAMBA服务配置、smb权限、windows访问失败、共享挂载失败、共享目录挂载、虚拟用户映射_第2张图片
Centos的SAMBA服务配置、smb权限、windows访问失败、共享挂载失败、共享目录挂载、虚拟用户映射_第3张图片
windows访问失败

windows访问时下面错误提示:网络密码不正确。此时输入什么用户和密码都无法登陆。
尝试到服务器输入这条指令
smbpasswd -e 用户名
激活用户,再回来登陆试试。


提示网络密码不正确时,尝试输入完整的用户名。也就是【域名\用户名】,域名填写linux的本机域,如无其他配置则一般是linux默认的localdomain。
挂在失败的问题

共享目录挂载

mount -t cifs //服务器IP/共享目录名 /挂载点 -o username=用户名,password=用户密码
其他设定

browseable=no
(267,87%)隐藏目录,但知道目录还是可以访问。
valid users=用户名
(269,87%)该选项设定了当相应的用户访问该共享目录时,共享目录会变成该用户的家目录。
smbpasswd -e 用户名
激活用户
虚拟用户映射

[gload]
username map = /etc/samba/smbusers
vim /etc/samba/smbusers
实体用户 = 虚拟用户

用户只能看到自己的所属目录


关于用户只能看到自己的所属文件夹


只能是家目录共享这个方法。
也就是说,创建用户时就指定相应的所属目录作为家目录。
/etc/samba/smb.conf这个文件里不用配置任何共享。
这样访问时自动访问相应的所属目录【因为设定成家目录了】,并拥有所有权限。

你可能感兴趣的:(linux相关运维知识)