用Internet文件系统(CIFS)也称为服务器信是适用于MicrosoftWindows服务器和客户端的标准文件和打印机共享系统息块(SMB)
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.安装需要的软件
[root@desktop ~]# yum install samba-client.x86_64 -y
[root@desktop ~]# yum install samba-common -y
[root@desktop ~]# yum install samba.x86_64
[root@desktop ~]# systemctl start smb ##开启服务
[root@desktop ~]# smbclient -L //172.25.254.100 ##匿名查看
这里匿名用户的Samba登陆密码为空,按下回车即可
[root@99 yum.repos.d]# getsebool -a | grep samba ##查看状态
永久打开samba_enable_home_dirs(-P表示永久)
2.添加用户
如果您没有Samba密码服务器,则必须在本地计算机上创建身份验证数据。使用smbpasswd创建 Samba账户和密码
smb用户必须是本地存在的用户
[root@desktop ~]# smbclient -L //172.25.99.100 -U student ##student用户查看
[root@desktop ~]# smbclient //172.25.99.100/student -U student ##student查看自己的家目录
3.客户端挂载使用
[root@server ~]# mount -o username=student,password=redhat //172.25.99.100/student /mnt
二.自定义添加共享目录
1.创建共享目录
*)[root@desktop ~]# mkdir /zl
*)[root@desktop ~]# cd /zl
*)[root@desktop zl]# touch file {1,2}
*)[root@desktop zl]# vim /etc/samba/smb.conf
2.查看新建共享目录
[root@desktop zl]# smbclient -L //172.25.99.100/ -U student
三.匿名用户登陆
1.服务端
[root@desktop zl]# vim /etc/samba/smb.conf ##修改配置文件
2.客户端
[root@foundation14 ~]# mount -o username=student,password=redhat //172.25.254.114/zhanglu /mnt
[root@foundation14 mnt]# vim /etc/fstab ##修改配置文件 永久挂载
四.对共享目录其他参数的修改
1.准备
*)[root@desktop zl]# useradd zl
*)[root@desktop zl]# id zl
uid=1001(zl) gid=1001(zl) groups=1001(zl)
*)[root@desktop zl]# smbpasswd -a zl ##添加新用户到smb
*)[root@desktop zl]# setfacl -m g:student:rwx /zl/ ##给student组用户添加/zl目录的 rwx权限
* )[root@desktop zl]# usermod -G student zl ##将zl用户添加到student组中
*)[root@desktop zl]# smbpasswd zl ##给smb用户zl添加密码
2.查看/zl目录权限 修改结果
[root@desktop zl]# getfacl /zl
3.编辑配置文件修改参数
[root@desktop zl]# vim /etc/samba/smb.conf
[zhanglu]
comment = LULUBAO
path = /zl
guest ok = yes
writable = yes ##此目录可写
;write list = @student ##此目录对student组用户可写
4.测试
[root@foundation14 mnt]# touch file3
touch: cannot touch ‘file3’: Permission denied
[root@foundation14 mnt]# rm -fr file
rm: cannot remove ‘file’: Read-only file system ##只有read权限 没有写权限
5.其他参数
[root@desktop zl]# vim /etc/samba/smb.conf
browseable = no ##隐藏目录 但可被调用
valid users = student ##可调用的用户
五.多用户挂载
1.在客户段做
[root@foundation14 /]# yum install cifs-utils -y ##安装服务
[root@foundation14 /]# vim /root/smbfile ##编辑一个文件 文件输入登陆samb的用户和密码
username=student
password=redhat
[root@foundation14 /]# chmod 600 /root/smbfile ##修改文件权限 增加安全度
[root@foundation14 /]# mount -o credentials=/root/smbfile,multiuser,sec=ntlmssp //172.25.254.114/zhanglu /mnt ##用文件中的指定用户身份挂载设备 multiuser多用户挂载参数 sec=ntlmssp加密方式
2.测试
[root@foundation14 /]# cd /mnt
[root@foundation14 mnt]# ls
1 2 file file1 file2
[root@foundation14 mnt]# cd
[root@foundation14 ~]# su - kiosk
[kiosk@foundation14 ~]$ cd /mnt ##更换用户时 因此用户没有进行认证 所以不能看挂载文件内容
[kiosk@foundation14 mnt]$ ls
ls: reading directory .: Permission denied
[kiosk@foundation14 mnt]$ cifscreds add -u zl 172.25.254.114 ##认证用户 使kiosk用zl用户的身份登陆samb
Password: