Linux中的samba服务

1.samba的作用

  • 提供CIFS协议实现共享文件
  • CIFS (Common Internet File System) ,即通用Internet文件系统,CIFS可以看做是应用程序协议如文件传输协议和超文本传输协议的一个实现

2.samba的安装

yum install samba samba-common samba-client -y (总共需要安装三个软件)
systemctl start smb nmb                        (开启samba)
systemctl enable smb                           (设置samba开机启动)

3.添加smb用户

smbpasswd -a student  (新建用户)
pdbedit -L            (查看samba的用户)
pdbedit -x student    (删除用户)

在这里插入图片描述
在这里插入图片描述

4.共享目录

vim /etc/samba/smb.conf (编辑samba的主配置文件)
写入:
[westos]                (名称)
comment=/westos/        (对共享目录的描述)
path=/westos            (共享目录的绝对路径)
systemctl restart smb   (重启服务)

在这里插入图片描述

  • 当需要共享的目录为用户自建的目录时,可以修改此目录的安全上下文来允许被访问
mkdir /westos                                         ( 在根下建立一个文件夹)
semanage fcontext  -a -t samba_share_t '/westos(/.*)?'(永久更改安全上下文)
restorecon -FvvR /westos/                            (使更改生效)

在这里插入图片描述

  • 当需要分享的目录为系统目录时,需要设置selinux的权限来允许被访问
setsebool  -P samba_export_all_ro on (只读分享)
setsebool  -P samba_export_all_rw on (读写分享)

测试:
在客户端:
smbclient -L //172.25.254.104 -U student
在这里插入图片描述
smbclient //172.25.254.104/westos -U student
在这里插入图片描述
mount //172.25.254.104/westos /mnt -o username=student,password=westos
注意:
1.如果出现"TIME OUT"超时报错,请检查本地解析
2.如果出现"Unable to find suitable address"不能找到地址报错,请检查防火墙

5.samba的配置参数

/etc/samba/smb.conf samba的主配置文件
允许匿名用户访问
125行左右 map to guest = bad user
[westos]下:
guest ok = yes
samba的访问控制

[westos]下:
hosts allow = student  (仅允许student用户访问)
hosts deny = student   (仅拒绝student用户访问)
valid users = @student(允许属于student组的用户访问)
valid users = +student(允许属于student组的用户访问)

samba的读写控制
设定所有用户均可写:

chmod o+w /mnt
setsebool -P samba_export_all_rw on
vim /etc/samba/smb.conf
writable = yes

设定指定用户可写:

[westos]下:
write list = student (设定student用户可写)
write list = +student(设定student用户组可写)	
write list = @student(设定student用户组可写) 
admin users = student (设定共享的超级用户为student)

6.samba在客户端的多用户挂载

客户端:

yum install cifs-utils -y
vim /root/smbpass写入:
username=student
password=lee          (samba用户名和密码)
chmod 600 /root/smbpass
mount //172.25.254.104/westos /mnt -o credentials=/root/smbpass,multiuser,sec=ntlmssp 

注意:
(credentials=/root/smbpas 指定挂载时所用到的用户文件)
(multiuser 支持多用户认证)
(sec=ntlmssp 认证方式为标准smb认证方式)
(服务端也需要安装cifs-utils)

测试:
su - kiosk 且换到普通用户
ls /mnt
Permission denied (因为没有smb的认证所以无法访问smb共享)

cifscreds add -u student 172.25.254.104
ls /mnt (可以查看smb共享文件)

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值