设为首页 收藏本站
查看: 1064|回复: 0

[经验分享] samba for centos7

[复制链接]

尚未签到

发表于 2018-4-25 07:51:23 | 显示全部楼层 |阅读模式
  samba服务
  http://hongge.blog.51cto.com/
  RHEL7配置samba:开机自动挂载以及多用户挂载
  安装samba(centos 7/redhat 7提供的samba版本是samba 4)
DSC0000.jpg

  开机启动
DSC0001.jpg

  启动服务
DSC0002.png

  查看监听端口(使用netstat或ss命令查看连接状态)
DSC0003.jpg

  防火墙放行
DSC0004.png

  然后我们看看配置文件 smb.conf
  注意配置任何服务的时候,涉及到权限访问的配置都有一个基本的顺序:
  1.配置文件,各种conf文件里面的设置
  2.文件权限的访问,用户是否有对应的rwx权限
  3.SELinux的上下文和布尔值是否打开了
  SMB也不例外。
  配置文件一开始就提醒SELinux的配置。
DSC0005.jpg

  标号1:告诉我们可以执行testparm检测samba配置文件的语法正确性
  标号2:samba_enable_home_dirs布尔值允许访问用户的家目录
  标号3:samba_share_t需要把这个上下文分配给对应的共享文件
  global的配置部分主要设置工作组名、描述信息、netbios名、监听接口或IP、允许域名或网络范围等等
DSC0006.jpg

  注:hosts allow表示允许的IP或域名,书写格式可以用以下方式表示
  1. 主机IP:多个IP地址用空格分隔,如:172.25.0.1172.25.0.2
  2. 网段:可以用掩码长度或子网掩码表示,如:172.25.0.0/24172.25.0.0/255.255.255.0
  3. IP子网前缀:172.25.0.172.25.表示以172.25.0.172.25.开始的地址
  4. 主机名或主机后缀名:如desktop.example.com.example.com
  5. IPV6地址:2001:db8:0:1::/64
  日志存放点,本地验证的方式使用user(用户名方式验证)
DSC0007.jpg

  samba 4 下参数security的值不再允许是share和server,建议使用user
  samba 4 下如果希望有匿名访问共享,可将 map to guest = Bad User 打开
  在[global]节中加入map to guest = Bad User,这个配置的意思是将所有samba系统主机所不能正确识别的用户都映射成guest用户,这样其他主机访问samba共享目录时就不再需要用户名和密码了,在定义共享部分添加guest ok = yes。
  最后是共享文件
DSC0008.jpg

  例1:接下我们来创建一个目录(如:/common),通过samba输出共享
  通过 SMB 共享/common 目录,samba服务器必须是 STAFF 工作组的一个成员,共享名必须为 common,只有 group3.example.com 域内的客户端可以访问 common 共享(group3.example.com中的系统都在子网172.24.3.0/24中),同样在这个子网中的系统都在,common 必须是可以浏览的,用户 harry 必须能够读取共享中的内容,如果需要的话,验证的密码是 migwhisk
  #yum install –y samba samba-client samba-common //该包里有 smbpasswd 命令
  # mkdir /common
  # chcon -R -t samba_share_t /common
  # setsebool -P samba_export_all_rwon
  # vim /etc/samba/smb.conf
  workgroup = STAFF
[common]

  path = /common
  browseable = yes
  # useradd harry
  # smbpasswd -a harry ->密码设置为 migwhisk
  注:与samba配套使用的smbpasswd在samba-client中,建议安装时一并安装samba-client
  # systemctl start smb
  # systemctl enable smb
  #firewall-cmd --zone=public --permanent–add-rich-rule=’rule family=”ipv4” source address=172.24.3.0/24 service name=samba accept’
  #firewall-cmd –reload
  或者
  在smb.conf配置文件的共享定义中使用hosts allow = 172.24.3.只允许group3.example.com 域内的客户端访问。
  在客户端上测试访问samba共享
  Windows客户端
  输入”//samba服务器的IP”回车
DSC0009.png

  输入用户名和密码,回车
DSC00010.png

  从linux客户端测试访问
DSC00011.jpg

DSC00012.jpg

  注:挂载smb共享使用的是cifs文件系统
  或使用mount.cifs挂载
DSC00013.jpg

  注:mount.cifs命令由cifs-utils软件提供
  注:sec选项的作用是选择安全模型
  注:linux作为客户端挂载windows的共享(共享目录是ntfs文件系统)也需要安装cifs-utils包
  可以用man mount.cifs查看手删页
DSC00014.jpg

  例2:配置多用户SMB挂载
  在system1共享通过SMB目录/devops满足以下要求:
  共享名为devops
  共享目录devops只能被group3.example.com域中的客户端使用
  共享目录devops必须可以被浏览
  用户kenji必须能以读的方式访问此共享,该问密码是atenorth
  用户chihiro必须能以读写的方式访问此共享,访问密码是atenorth
  此共享永久挂载在system2.group3.example.com上的/mnt/dev目录,并使用用户kenji作为认证。任何用户可以通过用户chihiro来临时获取写的权限。
  在 system1 (smb共享服务器)上创建目录
  # mkdir /devops
  创建相关用户
  # useradd kenji
  # useradd chihiro
  设置/devops目录的acl权限
  # setfacl -m u:chihiro:rwx /devops
  设置selinux
  # chcon -R -t samba_share_t /devops
  # setsebool -P samba_export_all_rw on
  修改配置文件
  # vim /etc/samba/smb.conf
[devops]

  path = /devops
  browseable = yes
  write list = chihiro
  添加samba用户
  # smbpasswd -a kenji
  # smbpasswd -a chihiro
  重启服务
  # systemctl restart smb nmb
  system2 (smb客户端)上的配置如下:
  创建用于测试相关用户
  # useradd lisi
  # useradd zhangsan
  创建挂载点:
  # mkdir /mnt/dev
  创建密码文件
  # vim /root/multiuser.txt
  username=kenji
  password=atenorth
  在 fstab 中写入:
  //system1.group3.example.com/devops /mnt/dev cifs
  defaults,credentials=/root/multiuser.txt,multiuser,sec=ntlmssp 0 0
  注:在客户端挂载smb共享若使用credentials(指定验证凭证)参数则要安装cifs-utils软件包。
  或在 fstab 中写入:
  //system1.group3.example.com/devops /mnt/dev cifs
  defaults,username=kenji,password=atenorth,multiuser,sec=ntlmssp 0 0
  # mount –a
  执行df –hT验证挂载
DSC00015.jpg

  #su – lisi
DSC00016.png

  从上图可以看到客户端用户lisi没有任何权限,lisi若要以只读方式访问共享目录则执行下面的命令同步服务器kenji用户身份
  #cifscreds add system1 -u kenji
  如下图所示:
DSC00017.png

  从上图可以看到客户端用户lisi可以进行读操作但仍然不能执行写操作。
  客户端zhangsan用户可以对共享目录执行写操作又如何实现呢?
  方法是执行下面的命令同步服务器chihiro用户身份
  #su – zhangsan
  #cifscreds add system1 –u chihiro
DSC00018.jpg

  注:cifscreds是管理认证凭据(用户名和密码),用于多用户建立会话目的的工具
  例3:需求描述
  共享名路径权限
  sharedoc/smb/docs所有人员包括来宾均可以访问
  rddocs /smb/tech 仅允许特定组的用户进行读写访问
  特定组的组名为rd,目前的Alice、Jack、Tom三个人
  配置samba服务器
  创建共享目录(假设共享/smb目录下的文件)
  # mkdir -p /smb/docs
  # mkdir -p /smb/tech
  编辑smb.conf文件
  在全局部分添加map to guest项
DSC00019.png

  在共享定义部分添加如下共享配置项
DSC00020.png

  创建系统用户和组账户
DSC00021.png

  将用户添加到rd组
DSC00022.png

  创建samba用户
DSC00023.png

  修改目录权限
DSC00024.png

  重启smb服务
DSC00025.png

  在客户端上测试访问smb共享
  以windows系统为例,在客户端上输入:\\samba服务器ip
  直接打开共享窗口,当访问rrdocs共享目录时,需要输入用户名和密码
  http://hongge.blog.51cto.com/

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-451575-1-1.html 上篇帖子: centos上关于trac的使用说明 下篇帖子: centos 6.6安装zabbix3.0
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

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