首先配置火墙,因为我使用的是iptables模式的火墙写入模式,所以,我将火墙刷新,如果,使用的firewalld模式的火墙配置模式,可以将火墙关闭,或者进行相关的配置,配置好之后,安装samba软件,其中的samba-client是samba客户端软件包:
开启服务后查看smb服务端口:
创建samba用户,创建时只能创建已经存在的用户,如下:
查看samba:
查看samba的student共享目录:
通过上图可以看到student目录不能查看,这是因为selinux(内核级火墙)的原因,所以要对selinux进行配置,如下:
上一种配置方法是直接将selinux设置为允许,除此之外,还可以通过对相关软件的管理实现配置,如下:
配置完selinux之后,就可以查看student目录中的内容:
以上的配置都是服务端配置,客户端如果要对共享目录进行操作,首先安装如下samba的客户端:
要实现对目录的操作,必须将其挂载,如下:
student目录是原本存在的目录,那么,该如何制作出共享目录呢?首先,建立出共享目录,如下图:
编辑上图显示的文件,添加下图显示的内容。comment是对目录的描述,path后是需要共享的目录:
重启samba服务:
在该目录下建立文件:
挂载之后查看,由于其安全上下文的原因,所以不能查看:
所以需要修改安全上下文:
修改之后便能查看:
用命令挂载只是暂时性的,在重启主机后就会失效,所以需要实现开机挂载,要实现开机挂载,就需要将其写入配置文件中,如下:
写入之后刷新进行检查:
在默认情况下,匿名用户是无法进行挂载,要实现匿名用户挂载,配置如下:
首先给匿名用户一个身份,所以在/etc/samba/smb.conf文件中写入如下内容:
注释:给匿名用户一个身份,让所有的匿名用户名称都为guest。
注释:允许匿名用户登陆。客户端挂载验证:
实现开机挂载:
默认情况下,客户端是不能在共享目录中创建文件,所以必须给予权限,给权限时应该注意两方面,一种是目录本身的权限,一种是服务的权限。服务给权限:
目录给权限:
客户端测试:
如果只对特定的用户或者组开放的话,需要给配置文件中添加如下内容:
注:如果是特定的组的话,需要给前面加上+|@符。客户端测试,sr也是samba用户:
默认情况下,客户端为root用户时,使用samba用户挂载之后可以对共享目录进行操作,在使用kisok用户时也是可以进行操作的,所以出于安全考虑,在用户登陆samba时可以对其进行检测,叫做samba的多用户挂载,值得注意的是以下操作全部都是在客户端。对kiosk查看时进行检测的操作如下:首先安装以下软件:
编辑如下文件,并写入如下内容,写入该文件的用户和密码为root用户在登陆时所使用samba用户身份:
为了用户的安全起见,设置权限:
此时root用户在操作时使用student用户的身份,不需要验证,而普通用户在使用sr用户身份查看时需要进行密码验证:
samba举例:
1. 所有员工都能够在公司内流动办公,但不管在哪电脑上工作,都要把自己文件存在 Samba 文件服器上.
2. 各部门办公人员拥有各自的主目录,用于存放私有文档(工作相关),其他人禁止访问.
3. 所有的用户都不允许使用服务器的 SHELL(安全考虑).
4. 制造部、财务部、管理部,都有各自的文件目录.
5. 各部门目录下提供“对外”、“公共文档”、“受控文档”三个子目录.
对外: <1>允许公司所有工作人员访问,但不能修改文件.
<2>本部门文员负责维护数据
公共文档:<1>本部门员工可以访问,领导层可以访问,但不能修改.
<2> 本部门文员负责维护数据
受控文档:<1>本部门主管、公司领导可以访问、其他员工禁止.
<2>本部门主管负责维护数据
注:财务部受控文档只允许总经理、财务部总监、主管访问;管理部受控文档只允许总经理、主管访问
6. 公共区域:<1>所有员工均可访问
<2>网络部负责维护
7. 交换区域:<1>所有员工均可读可写,禁止删除其它员工文件.
2>网络部负责维护
创建相关的目录:
mdkir /home/samba/zhizao caiwu guanli public swap
mkdir /home/samba/zhizao/guest public private
mkdir /home/samba/caiwu/guest public private
mkdir /home/samba/guanli/guest public private
创建相关的用户和组:
groupadd zhizao caiwu guanli lingdao network
useradd s /bin/false wy zg zj jl
usermod G zhizao,caiwu,guanli wy
usermod G zhizao,caiwu,guanli zg
usermod G caiwu zj
usermod G lingdao jl
设置文件系统权限:
chmod 1777 /home/samba/swap
chmod 755 /home/samba/zhizao caiwu guanli
chmod 775 /home/samba/public
chgrp network /home/samba/public
chmod 755 /home/samba/zhizao/guest
chown wy.zhizao /home/samba/zhizao/guest
chmod 750 /home/samba/zhizao/public private
chown zg.lingdao /home/samba/zhizao/private
setfacl m g:lingdao:rx /home/samba/zhizao/public
chmod 755 /home/samba/caiwu/guest
chown wy.caiwu /home/samba/caiwu/guest/guest
chmod 750 /home/samba/caiwu/public
chown wy.caiwu /home/samba/caiwu/public
setfacl m g:lingdao:rx /home/samba/caiwu/public
chmod 700 /home/samba/caiwu/private
chown zg /home/samba/caiwu/private
setfacl m u:zj:rx /home/samba/caiwu/private
setfacl m u:jl:rx /home/samba/caiwu/private
chmod 755 /home/samba/guanli/guest
chown wy.guanli /home/samba/guanli/guest
chmod 750 /home/samba/guanli/public
chown wy.guanli /home/samba/guanli/public
setfacl m g:lingdao:rx /home/samba/guanli/public
chmod 700 /home/samba/guanli/private
chown zg /home/samba/guanli/private
setfacl m u:jl:rx /home/samba/guanli/private
配置 samba 服务:
[homes]
comment = Home Directories
browseable = no
writable = yes
[制造部]
path = /home/samba/zhizao
writable = yes
browseable = yes
[对外]
path = /home/samba/zhizao/guest
admin users = wy
browseable = no
[公共文档]
path = /home/samba/zhizao/public
valid users = @zhizao @lingdao
admin users = wy
browseable = no
[受控文档]
path = /home/samba/zhizao/private
valid users = zg @lingdao
admin users = zg
browseable = no
[财务部]
path = /home/samba/caiwu
writable = yes
browseable = yes
[对外]
path = /home/samba/caiwu/guest
admin users = wy
browseable = no
[公共文档]
path = /home/samba/caiwu/public
valid users = @caiwu @lingdao
admin users = wy
browseable = no
[受控文档]
path = /home/samba/caiwu/private
valid users = zg zj jl
admin users = zg
browseable = no
[管理部]
path = /home/samba/guanli
writable = yes
browseable = yes
[对外]
path = /home/samba/guanli/guest
admin users = wy
browseable = no
[公共文档]
path = /home/samba/guanli/public
valid users = @guanli @lingdao
admin users = wy
browseable = no
[受控文档]
path = /home/samba/guanli/private
valid users = zg jl
admin users = zg
browseable = no
[公共区域]
path = /home/samba/public
public = yes
admin users = @network
[交换区域]
path = /home/samba/swap
writeable = yes
public = yes
admin users = @network