linux学习共享服务之samba

####### samba #######

通用 Internet 文件系统(CIFS)也称为服务器信息块(SMB),是适用于 Microsoft

Windows 服务器和客户端的标准文件和打印机共享系统。

Samba 服务可用于将 Linux 文件系统作为 CIFS/SMB 网络文件共享进行共享,并将 Linux

打印机作为 CIFS/SMB 打印机共享进行共享。

Samba 服务的组成部分

1. 软件包:

Samba-common – Samba 的支持文件

Samba-client – 客户端应用程序

Samba – 服务器应用程序

2. 服务名称:smb nmb

3. 服务端口: 通常使用 TCP/445 进行所有连接。还使用 UDP137、UDP138 和 TCP/139 进行

向后兼容

4. 主配置文件:/etc/samba/smb.conf

1.samba 作用

提供 cifs 协议实现共享文件

2.安装(测试端也需要安装)

yum install samba samba-common samba-client -y       ##安装 smaba 服务



systemctl start smb nmb  ##开启服务

systemctl enable smb nmb   ##服务开机自启

netstat -antlupe | grep smb  ##查看 smb 端口

netstat -antlupe | grep nmb ##查看 nmb 使用的端口


3.添加 smb 用户

smb 用户必须是本地用户

smbpasswd -a student #给本地用户设置 smb 密码,添加 smb 用户

New SMB password: #输入 smb 当前用户密码

Retype new SMB password: #确认密码

pdbedit -L #查看 smb 用户信息

pdbedit -x smb 用户 #删除 smb 用户


测试端

smbclient -L //172.25.254.134 -U student #使用密码登录 smb 用户



setsebool -P enable_samba_home_dirs on

测试端

smbclient //172.25.254.134/student  -U student




4.共享目录的基本设定

vim /etc/samba/smb.conf

[westos] 共享名称

comment = 对共享目录的描述

path = 共享目录的绝对路径

workgroup = WESTOS

#在 selinux 中设定 smb 用户可以访问自己家目录

student ##sma 用户登录查看家目录1)当共享目录为用户自建立目录时

mkdir /smbshare 建立共享目录及文件

touch /smbshare/westostest

vim /etc/samba/smb.conf


[westos]

共享名称

comment = local directory 对共享目录的描述

path = /smbshare 共享目录的绝对路径

workgroup = WESTOS


semanage fcontext -a -t samba_share_t '目录名称(/.*)?'

配置安全上下文

restorecon -RvvF 目录名称

eg

[root@desktop34 ~]# semanage fcontext -a -t samba_share_t '/smbshare(/.*)?'

[root@desktop34 ~]# restorecon -RvvF 

/smbshare restorecon reset/smbshareunconfined_u:object_r:default_t:s0->system_u:object_r:samba_share_t:s0

restoreconreset/smbshare/westostestunconfined_u:object_r:default_t:s0->system_u:object_r:samba_share_t:s0


测试端

smbclient //172.25.254.134/westos -U student 登录 smb 用户查看公享目录


2)当共享目录为系统建立目录

setsebool -P samba_export_all_ro on #只读共享

setsebool -P samba_export_all_rw on #读写共享

eg

[westos]

共享名称

comment = local directory

对共享目录的描述

path = /mnt

共享目录的绝对路径

[root@desktop34 mnt]# touch test{1..6}

[root@desktop34 mnt]# setsebool -P samba_export_all_ro on 可读权限

测试端

[root@server34 ~]# smbclient //172.25.254.134/westos -U student


5.samba 的配置参数

匿名用户访问

guest ok = yes

map to guest = bad user


测试端访问控制





hosts allow = #仅允许




hosts deny = #仅拒绝




valid users = #当前共享的有效用户

valid users = westos #当前共享的有效用户为 westos



 


valid users = @westos #当前共享的有效用户为 westos 组


valid users = +westos #当前共享的有效用户为 westos 组






 

 

#读写控制

所有用户均可写

chmod o+w /mnt

setsebool -P samba_export_all_rw on

vim /etc/samba/smb.conf

writable = yes




设定指定用户可写

write list = westos #可写用户




write list = +westos  #可写用户组

write list = @westos

 



admin users = westos #共享的超级用户指定

 

 


 

 

6.smb 多用户挂载

  client 上

vim /root/westos

username=student

password=westos

chmod 600 /root/westos

yum install cifs-utils -y


mount -o credentials=/root/westos,multiuser,sec=ntlmssp //172.25.254.134/westos /mnt/

#credentials=/root/westos 指定挂载时所用到的用户文件

#multiuser支持多用户认证

#sec=ntlmssp认证方式为标准 smb 认证方式

 

su - student

[student@server34 mnt]$ ls

ls: reading directory .: Permission denied #因为student用户没有作 smb 的认证所以无法访问 smb 共享

 

 

cifscreds add -u westos 172.25.254.134

Password: ##smb 用户 westos 的密码

ls /mnt


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值