Samba-系统集成
samba介绍
-
Samba是在Linux和UNIX系统上实现SMB协议的一个免费C/S软件,由服务器及客户端程序构成。
-
SMB ( Server Messages Block,信息服务块 )是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他
samba部署
a、安装软件包
yum -y install samba samba-client
samba:服务端
samba-client :客户端 提供了 smbclient命令b、关闭防火墙
systemctl is-active firewalld
getenforcec、设置服务开机启动
systemctl enable nmb smb
// Created symlink from /etc/systemd/system/multi-user.target.wants/nmb.service to /usr/lib/systemd/system/nmb.service.
// Created symlink from /etc/systemd/system/multi-user.target. wants/smb.service to /usr/lib/systemd/system/smb.service.d、开启服务
systemctl start nmb smb
Samba配置文件
/etc/samba/smb.conf
samba文件共享
[共享名]
comment = 描述
path = 共享目录绝对路径
browseable = nolyes 是否允许浏览
hosts allow = 允许哪些网段访问
public = nolyes 类似于guest ok
valid users = 允许哪些用户可以访问共享
writable =nolyes 是否开启所有人写权限
write list = @组 用户 上述代码为No ,允许哪些用户可写
readonly = nolyes 是否只读共享
read list = @组 用户 指定只能读取该共享资源的用户和组。注意:public和valid users 不能同时使用 ,这样public没效果
共享案例
- 新建文件夹/common
- 在server上配置SMB服务
- 您的 SMB 服务器必须是 workgroup 工作组的一个成员
- 共享 /common 目录共享名必须为common
- 只有 192.168.10.0 网段内的客户端可以访问 common共享
- common 必须是可以浏览的
- 用户 yudan 必须能够读共享中的内容 ,如果需要的话 ,验证的密码是 yudan
- 用户 sko必须能够读写共享中的内容 ,如果需要的话 ,验证的密码是 yudan
- 创建共享目录
- mkdir /common
- 设置共享目录权限,因为默认权限是755除了管理员外,其他人只能读不能写,本实验中要求sko能写,所以其他人加写权限
- chmod 757 /common
- chmod 757 /common
- 修改配置文件smb.conf
# See smb.conf.example for a more detailed config file or
# read the smb.conf manpage.
# Run 'testparm' to verify the config is correct after
# you modified it.[global]workgroup = WORKGROUPsecurity = userpassdb backend = tdbsamprinting = cupsprintcap name = cupsload printers = yescups options = raw[homes]comment = Home Directoriesvalid users = %S, %D%w%Sbrowseable = Noread only = Noinherit acls = Yes[printers]comment = All Printerspath = /var/tmpprintable = Yescreate mask = 0600browseable = No[print$]comment = Printer Driverspath = /var/lib/samba/driverswrite list = @printadmin rootforce group = @printadmincreate mask = 0664directory mask = 0775[common]comment = testpath = /commonbrowseable = yeshosts allow = 192.168.10.0/24valid users = yudan,skowritable = nowrite list = sko
Samba用户
- 由于系统本地用户无法直接登录,必须是samba用户才可以登录
- 创建samba的方法
- 创建系统用户
- 将系统用户转为samba用户
- smbpasswd命令介绍
- smbpasswd -改变用户的SMB口令
- -a 添加用户 #smbpasswd -a yudan
- -x 删除用户 #smbpasswd -x yudan
- -d 禁用帐号 #smbpasswd -d yudan
- -e 取消禁用 #smbpasswd -e yudan
- -n 清除密码 #smbpasswd -a yudan
客户端挂载共享
linux挂载
- smbclient -类似FTP操 作方式的访问SMB/CIFS服务器资源的客户端
- -L 此选项允许你查看服务器上可以获得的服务资源
- -Ul--user=username[%password] 这个参数指定程序联接时使用的用户名或者用户名和密码,如果没指定%password ,将提示用户输入。
- -WI--workgroup=domain设置用户名的SMB域。这个选项越过了 smb.conf配置文件中的默认域。
- -N 如果指定了这个选项,就会省略通常的口令提示。当访问无需口令的服务资源时它很有用
mount -0 username=yudan,password=yudan -t cifs //192.168.11.16/common /opt/test/