配置与管理samba服务器(实践)

守听  金牌会员 | 2024-11-22 06:06:38 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 812|帖子 812|积分 2436

配置与管理samba服务器

一、项目描述

某企业有行政管理、研发部、产品部、测试部和贩卖部共5个部分。办公用计算机利用体系为Windows 11,部分研发职员使用Linux利用体系,服务器利用体系是统信UOS20。现需要计划一套创建在UOS20之上的基于Samba的安全文件共享方案。
要求:
(1)企业内每个用户都有自己的网络磁盘
(2)研发部和测试部有共用的网络硬盘
(3)所有用户(包括匿名用户)有一个只读共享资料库
(4)所有用户(包括匿名用户)要有一个存放暂时文件的文件夹。
samba服务器的IP地址为:192.168.学号.200,
(1)行政管理部具有管理所有samba空间的权限。
(2)各部分的私有空间:各部分拥有自己的空间,除了部分成员及行政管理部有权限以外,其他用户没有权限(包括列表、读和写等)访问。
(3)资料库:所有用户(包括匿名用户)都具有读权限而不具有写入数据的权限。
(4)研发部与测试部的共享空间,研发部与测试部之外的用户不能访问。
(5)公共暂时空间:所有用户都可以读取、写入、删除。
项目实行要求:
(1)计划samba的安全文件共享方案,形成交付文档
(2)编制本项目的实验脚本、修改相关配置文件
(3)提交交付文档、实验脚 本、相关配置文件和关键步骤截图。

二、项目实行

在根目次下创建共享目次 /share
行政管理、研发部、产品部、测试部和贩卖部
为各部分创新文件夹,分别为 system、develop、product、test、sales、developandtest、ziliaoku、public
(一)安装Samba服务器端

  1. yum install samba -y
  2. systemctl start smb
  3. systemctl enable smb
复制代码
(二)创建文件夹

  1. mkdir /share
  2. cd /share
  3. mkdir system develop product test sales developandtest ziliaoku public
复制代码
(三)创建用户组

  1. groupadd system      #创建行政管理部组
  2. groupadd develop     #创建研发部组
  3. groupadd product     #创建产品部组
  4. groupadd test        #创建测试部组
  5. groupadd sales       #创建销售部组
复制代码
(四)创建用户并划将用户添加到组

  1. useradd -g system -s /sbin/nologin  system01     #-g 添加到组 (主组),如果使用 -G添加到附加组
  2. useradd -g develop -s /sbin/nologin develop01    #-s /sbin/nologin 设置用户不登录系统
  3. useradd -g product  -s /sbin/nologin  product01
  4. useradd -g test -s /sbin/nologin test01
  5. useradd -g sales -s /sbin/nologin  sales01
复制代码
(五)添加用户访问权限

(1)修改各部分的文件归属和权限

  1. chown :system /share/system -R   #将/share/system目录的归属权划给system组
  2. chmod 2770 /share/system -R      #修改/share/system目录的访问权限为2770,详见下权限说明
  3. chown :develop /share/develop -R  #-R 针对目录,递归的把目录下的文件、目录全部改变为目标权限。)
  4. chmod 2770 /share/develop -R
  5. chown :product /share/product
  6. chmod 2770 /share/product/ -R
  7. chown :test /share/test  -R
  8. chmod 2770 /share/test -R
  9. chown :sales /share/sales  -R
  10. chmod 2770 /share/sales -R
复制代码
(2)修改公共文件夹属性

  1. chmod 755 /share/ziliaoku
  2. chmod 1777 /share/public
  3. chmod 700 /share/developandtest #因为该目录是两个组能访问,使用权限无法实现
复制代码
(3)设置访问控制列表

  1. setfacl -m g:develop:rwx /share/developandtest/  #设置develop组对/share/developandtest/有rwx权限
  2. # -m, --modify=acl  modify the current ACL(s) of file(s)
  3. setfacl -m g:test:rwx /share/developandtest/  
  4. #上两句是分别设置develop和test用户组对developandtest目录具有rwx权限
  5. setfacl -R -m g:system:rwx /share/
  6. # 设置system组对整个共享目录具有访问权限
复制代码
(4)查看文件夹的权限

  1. getfacl system
  2. [root@localhost /]# getfacl /share/system
  3. getfacl: Removing leading '/' from absolute path names
  4. # file: share/system
  5. # owner: system01
  6. # group: system
  7. # flags: -s-
  8. user::rwx
  9. group::rwx
  10. group:system:rwx
  11. mask::rwx
  12. other::---
  13. default:user::rwx
  14. default:group::rwx
  15. default:group:system:rwx
  16. default:mask::rwx
  17. default:other::---
复制代码
小知识 :文件夹权限表现

  1. Linux设置文件目录权限,四位数的目录权限定义
  2. rwx(1)rwx(2)rwx(3)
  3. 1:所有者 2:所属组 3:其他用户
  4. r:读
  5. w:写
  6. x:执行
  7. 目录:r(可以查看目录内有多少东西)w(可添加、删除和修改目录内东西的熟悉)x(可打开目录)
  8. 文件:r(可以查看文件的具体内容)w(可以添加、删除和修改文件的具体内容,但不能删除文件本身)x(可运行文件,一般都用于可执行文件)
  9. 3位普通权限:rws(1、所有者)rws(2、所属组)rwt(3、其他用户)
  10. 隐藏权限:SUID(4)、SGID(2)、SBIT(1)
  11. 1:即使不是文件所有者也可以暂时拥有文件所有者的权利
  12. 2、在拥有这个属性的目录内创建的东西,所属组都属于这个目录的所属组,与东西的创建者无关
  13. 3、在拥有这个属性的目录内创建的东西,除了root和创建者本身,谁都不能删。
  14. 在chmod时,**隐藏权限**写在第一位
复制代码
三、Samba服务器的配置

(一)备份samba配置文件

在对samba配置文件进行修改前,请先备份配置文件
  1. cd /etc/samba
  2. cp smb.conf smb.conf.back
复制代码
(二)修改配置文件

查看/etc/samba目次下的文件
  1. [root@localhost samba]# ll
  2. 总用量 28
  3. -rw-r--r--. 1 root root    20 7月  17 2021 lmhosts
  4. -rw-r--r--. 1 root root   706 7月  17 2021 smb.conf
  5. -rw-r--r--. 1 root root   706 11月  4 09:30 smb.conf.back
  6. -rw-r--r--. 1 root root 11327 7月  17 2021 smb.conf.example
  7. -rw-r--r--. 1 root root   847 10月 30 20:57 smb.conf.rpmsave
复制代码
编辑smb.conf,在配置文件末了加入如下代码:
  1. [share]
  2.    comment = share
  3.    path = /share
  4.    public = yes
  5.    writable = yes
复制代码
  1. systemctl restart smb
复制代码
由于各个文件夹已经单独设置了权限 ,无需在配置文件再次设置权限,只要将总的共享目次发布共享即可。
防火墙设置samba通行

  1. firewall-cmd --permanent --add-service=samba
  2. firewall-cmd --reload
复制代码
设置selinux (以下两个命令行,在/etc/samba/smb.conf.example文件中)

  1. setsebool -P samba_enable_home_dirs on
  2. chcon -t samba_share_t /share -R
复制代码
四、创建samba访问用户

创建的用户必须和体系创建的用户一致,可以通过 cat /etc/passwd 查看现有用户。
  1. smbpasswd -a system01
  2. smbpasswd -a develop01
  3. smbpasswd -a product01
  4. smbpasswd -a test01
  5. smbpasswd -a sales01
复制代码
使用相同的方法为每个部分创建一个测试的用户。
五、Linux中使用samba客户端访问

  1. yum install samba-client cifs-utils -y
  2. smbclient -U 【samba用户名】 -L 【samba服务器IP地址】
复制代码

六、windows客户端访问

在资源管理器中输入\ip地址 访问samba服务器。
注意:在windows中登录后用户会暂存,可以使用下列方式清除纪录的登任命户。
方法1、开始 -> 运行 -> cmd,实验net use * /del,然后根据提示按Y是取消远程连接,N是放弃。实验net use 可以查看所有的远程连接。
方法2、开始 -> 运行 -> control userpasswords2,高级->管理暗码->windows根据,然后把你记住暗码的地点服务器名称删除
总结

以上就是今天要讲的内容,本文仅仅简单先容了samba服务器的配置方法。在配置过程中了解了文件夹权限的设置,文件夹归属者的更变,访问控制列表的设置等。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

守听

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表