smb共享服务

来源:互联网 发布:搜索图片的软件 编辑:程序博客网 时间:2024/05/18 13:26
samba共享服务:
  samba是linux和unix系统上实现smb协议的一个免费软件,由服务器及客户端程序构成。smb是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印等资源的共享服务。smb协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享资源。下来就和我一起学习samba的相关内容吧。

  首先配置火墙,因为我使用的是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



  samba服务到此结束,你学会了吗?