unit7-samba

来源:互联网 发布:淘宝站外推广方式 编辑:程序博客网 时间:2024/06/05 15:43

第十单元-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

一、smaba配置

1.安装【服务器和客户端】
yum install samba samba-common samba-client -y
systemctl start smb nmb
systemctl enable smb nmb

2.添加smb用户
smb用户必须是本地用户
smbpasswd -a student
New SMB password:        #输入smb当前用户密码
Retype new SMB password:    #确认密码

pdbedit -L        #查看smb用户信息
pdbedit -x smb用户    #删除smb用户

setsebool -P samba_enable_home_dirs on    ##在selinux中设定smb用户可以访问自己的家目录
3.测试
匿名登陆测试smbclient -L //172.25.254.244
示图:

指定用户身份登陆smbclient -L //172.25.254.244 -U student
示图:

指定用户身份登陆并且可以访问操作smbclient //172.25.254.244/student -U student
示图:


示图:workgroup修改


示图:登陆查看


二、共享目录的基本设置

vim /etc/samba/smb.conf
[lala]    共享名称
comment =  local directory        ##对共享目录的描述
path = /smbshare            ##共享目录的绝对路径
workgroup = WESTOS

当共享目录为用户自建立目录时
semanage fcontext -a -t samba_share_t '目录名称(/.*)?'
restorecon -RvvF /smbshare

示图:修改安全上下文

systemctl restart smb

当共享目录为系统建立目录,如/etc
getsebool -a | grep samba        ##samba服务安全上下文
setsebool  -P samba_export_all_ro on    #只读共享
setsebool  -P samba_export_all_rw on    #读写共享

测试:
示图:目录测试

三、samba的配置参数


#匿名用户访问
vim /etc/samba/smb.conf
125         map to guest = bad user
293         guest ok = yes
systemctl restart smb

示图:测试1

#访问控制
hosts allow =     #仅允许
hosts deny =     #仅拒绝
valid users =     #当前共享的有效用户
valid users = westos    #当前共享的有效用户为westos
valid users = @westos    #当前共享的有效用户为westos组
valid users = +westos    #当前共享的有效用户为westos组

systemctl restart smb

示图:只允许172.25.254.198用户访问,其他拒绝
198主机访问成功

98主机访问失败


示图:除了198主机不许访问,其他主机都可以

198访问失败


98访问成功

示图:只允许共享用户westos

示图:允许共享用户为westos组

#读写控制

所有用户均可写
chmod o+w /smbshare        

setsebool -P samba_export_all_rw on        

vim /etc/samba/smb.conf
writable = yes

systemctl restart smb
示图:测试用户建立文件

设定指定用户可写
write list = student        #可写用户
write list = +student        #可写用户组
write list = @student
admin users = westos        #共享的超级用户指定,需要结合writable = yes

示图:指定可写用户为westos测试

示图:共享的超级用户指定测试

四、.smb多用户挂载

在client上
vim /root/haha
username=student
password=student

chmod 600 /root/lala

yum install cifs-utils -y

mount -o credentials=/root/lala,multiuser,sec=ntlmssp //172.25.254.244/haha /mnt/

#credentials=/root/haha    指定挂载时所用到的用户文件
#multiuser        支持多用户认证
#sec=ntlmssp        认证方式为标准smb认证方式


su - kiosk
ls /mnt
ls: cannot access /mnt: Permission denied    #因为没有作smb的认证所以无法访问smb共享
cifscreds add -u westos 172.25.254.100
Password:    ##smb用户westos的密码
ls /mnt

示图:测试


原创粉丝点击