1、介绍
samba为实现SMB协议(Server Message Block)用于实现文件共享。主要用于windows和Linux下的文件、打印机共享。
2、Samba服务器设置
远端主机:
(1)安装samba-client.x86_64 samba-common.x86_64 samba.x86_64
命令:yum install samba-client samba-common.x86_64 samba.x86_64 -y
(2)关闭防火墙
命令:systemctl stop firewalld
(3)开启功能(selinu的模式为enforcing需要开启功能)
分享home目录
命令:setsebool -P samba_enable_home_dirs on
(4)新建用于访问共享目录的用户(需在服务器存在的用户)
创建:
smbpasswd -a student
查看:
pdbedit -L
删除用户:
pdbedit -x student (一次仅能删除一个用户)
(5)本地主机测试
安装:samba-client.x86_64
命令:yum install samba-client.x86_64
访问远端主机student家目录
命令:smbclient //172.25.254.100/student -U student
3、设置Samba共享目录
远端主机:
(1)修改配置文件
路径:/etc/samba/smb.conf
[共享名称] path = 共享目录路径
(2)重启服务
systemctl restart smb
(3)添加安全上下文
命令:semanage fcontext -a -t samba_share_t '/admin(/.*)?' restorecon -FvvR /admin/
(4)开启功能(selinu的模式为enforcing需要开启功能)
setsebool -P samba_export_all_rw on ##可以读写
setsebool -P samba_export_all_ro on ##只读
例:设置为可读写
(5)修改共享目录权限
命令:chmod 777 /admin
本地主机:(前提安装samba-client.x86_64)
访问共享目录
命令:smbclient //172.25.254.219/admin -U student
挂载至本地
mount //172.25.254.219/damin -o username=student,password=redhat
4、配置文件部分管理参数
[admin] #共享名称 comment = directory admin #说明 path = /admin #路径 guest ok = yes #允许匿名用户登陆 writable = yes #可写 write list = +student #允许student组可写 valid users = student #允许student用户访问 valid users = @student #允许student组访问 browseable = yes #是否隐藏目录 admin users = admin #进入该共享目录后,admin用户为该目录的root用户
(1)测试组合
远端主机:
配置文件路径/etc/samba/smb.conf
可写,允许admin组可写,隐藏目录
/admin权限修改为777
重启服务
systemctl restart smb
本地主机:
测试查看
可查看到/admin目录已被隐藏
使用admin用户登录/admin
上传文件(注:仅能上传登陆用户时所在目录下的文件)
使用命令:!ls 可查看到登录时所在目录下的文件,该命令使用环境为登录samba服务器后使用
5、匿名用户访问
远端主机:
(1)修改配置文件
路径:/etc/samba/smb.conf
[admin] comment = directory admin #说明 path = /admin #路径 guest ok = yes #允许匿名用户访问
map to guest = bad user
重启服务
命令:systemctl restart smb
本地主机:
访问测试
命令:smbclient //172.25.254.219/admin -U guest (ip为远端主机)
6.smb多用户挂载
本地主机:
(1)yum install cifs-utils
(2)创建登陆用户文件
例:在/root下创建smbuserlist。 文件名称任意
文件内容:
username=admin #登陆的用户名
password=esk #用户名的密码
(3)进行挂载
命令:mount //172.25.254.219/admin /mnt -o credentials=/root/smbuserlist,multiuser,sec=ntlmssp
注:ip为远端主机ip,采用多用户方式挂载
使用admin用户进行查看
|