Samba案例分析

Samba 企业应用案例需求:

1. 所有员工都能够在公司内流动办公,但不管在哪电脑上工作,都要把自己文件存在 Samba 文件服器上.

2. 各部门办公人员拥有各自的主目录,用于存放私有文档(工作相关),其他人禁止访问.

3. 所有的用户都不允许使用服务器的 SHELL(安全考虑).

4. 制造部、财务部、管理部,都有各自的文件目录.

5. 各部门目录下提供“对外”、“公共文档”、“受控文档”三个子目录.

对外:

<1>允许公司所有工作人员访问,但不能修改文件.

<2>本部门文员负责维护数据

公共文档:

<1>本部门员工可以访问,领导层可以访问,但不能修改.

<2> 本部门文员负责维护数据

受控文档:

<1>本部门主管、公司领导可以访问、其他员工禁止.

<2>本部门主管负责维护数据

注:财务部受控文档只允许总经理、财务部总监、主管访问;管理部受控文档只允许总经理、主管访问

6. 公共区域:

<1>所有员工均可访问

<2>网络部负责维护       

7. 交换区域:

<1>所有员工均可读可写,禁止删除其它员工文件.

2>网络部负责维护


步骤如下:

创建相关的目录:

[root@route ~]# mkdir  /home/samba/zhizao /home/samba/caiwu  /home/samba/guanli /home/samba/public /home/samba/swap

[root@route ~]# mkdir /home/samba/zhizao/guest

[root@route ~]# mkdir /home/samba/zhizao/public

[root@route ~]# mkdir /home/samba/zhizao/private

[root@route ~]# mkdir /home/samba/caiwu/guest

[root@route ~]# mkdir /home/samba/caiwu/public

[root@route ~]# mkdir /home/samba/caiwu/private

[root@route ~]# mkdir /home/samba/guanli/guest

[root@route ~]# mkdir /home/samba/guanli/public

[root@route ~]# mkdir /home/samba/guanli/private

创建相关的用户:

[root@route ~]# groupadd zhizao

[root@route ~]# groupadd caiwu

[root@route ~]# groupadd guanli

[root@route ~]# groupadd leader

[root@route ~]# groupadd network

创建相关的组:

[root@route ~]# usermod -G zhizao wy

[root@route ~]# usermod -G caiwu wy

[root@route ~]# usermod -G guanli wy

[root@route ~]# usermod -G zhizao zg

[root@route ~]# usermod -G caiwu zg

[root@route ~]# usermod -G guanli zg

[root@route ~]# usermod -G caiwu zj

[root@route ~]# usermod -G leader jl

设置文件系统权限:

[root@route ~]# chmod 1777 /home/samba/swap

[root@route ~]# chmod 755 /home/samba/zhizao caiwu guanli

[root@route ~]# chmod 775 /home/samba/public

[root@route ~]# chgrp network /home/samba/public

[root@route ~]# chmod 775 /home/samba/zhizao/guest/

[root@route ~]# chown wy.zhizao /home/samba/zhizao/guest/

[root@route ~]# chmod 750 /home/samba/zhizao/public private

[root@route ~]# chown zg.leader /home/samba/zhizao/private/

[root@route ~]# setfacl -m g:leader:rx /home/samba/zhizao/public/

[root@route ~]# chmod 755 /home/samba/caiwu/guest/

[root@route ~]# chown wy.caiwu /home/samba/caiwu/guest

[root@route ~]# chmod 750 /home/samba/caiwu/public

[root@route ~]# chown wy.caiwu /home/samba/caiwu/public/

[root@route ~]# setfacl -m g:leader:rx /home/samba/caiwu/public/

[root@route ~]# chmod 700 /home/samba/caiwu/private/

[root@route ~]# chown zg /home/samba/caiwu/private/

[root@route ~]# setfacl -m u:zj:rx /home/samba/caiwu/private/

[root@route ~]# setfacl -m u:jl:rx /home/samba/caiwu/private/

[root@route ~]# chmod 755 /home/samba/guanli/guest/

[root@route ~]# chmod wy.guanli /home/samba/guanli/guest/

[root@route ~]# chmod 750 /home/samba/guanli/public

[root@route ~]# chown wy.guanli /home/samba/guanli/public

[root@route ~]# setfacl  -m g:leader:rx /home/samba/guanli/public

[root@route ~]# chmod 700 /home/samba/guanli/private

[root@route ~]# chown zg /home/samba/guanli/private

[root@route ~]# 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 @leader

admin users = wy

browseable = no

[受控文档]

path = /home/samba/zhizao/private

valid users = zg @leader

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 @leader

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 @leader

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Samba是一个开源的软件包,它实现了SMB/CIFS(Server Message Block/Common Internet File System)协议,提供了文件和打印机共享服务。Samba服务端源码包括以下几个主要组件: 1. smbd:Samba守护进程,负责处理来自客户端的文件和打印机共享请求。 2. nmbd:NetBIOS名称服务守护进程,提供本地网络内计算机名称到IP地址的映射服务。 3. winbindd:提供Windows域身份验证和授权服务。 4. libsmbclient:Samba客户端库,提供了SMB客户端访问SMB/CIFS共享的API。 下面是Samba服务端源码的基本结构: 1. 通用函数库:包括字符串处理、内存分配、文件操作等。 2. 协议支持:主要包括SMB/CIFS协议的实现,包括连接管理、请求处理、文件共享、打印机共享等。 3. 认证与授权:包括基于用户密码的认证、访问控制列表(ACL)等。 4. 服务管理:包括smbd、nmbd、winbindd等服务的启动和管理。 5. 工具和命令行:包括命令行工具如smbclient、smbpasswd等。 在Samba服务端源码中,smbd是最重要的组件,它的代码结构如下: 1. 初始化:主要包括SMB/CIFS协议的初始化、共享文件和打印机的初始化等。 2. 事件循环:主要包括处理来自客户端的请求、处理连接状态、根据请求类型分发请求到不同的处理函数等。 3. 请求处理:主要包括文件和打印机共享请求的处理、认证与授权等。 4. 后台任务:主要包括目录扫描、权限检查、文件锁定等。 总体来说,Samba服务端源码实现了一个完整的文件和打印机共享服务,支持SMB/CIFS协议,提供了认证与授权、ACL等功能,同时还提供了客户端库和命令行工具等辅助功能,是一个非常成熟和强大的开源软件包。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值