SAMBA服务介绍
Samba是种自由软件,它主要用于实现共享服务,用来让UNIX系列的操作系统与微软Windows操作系统的SMB/CIFS(Server Message Block/Common Internet File System)网络协定做连结。
samba是通过smbd和nmbd两个守护进程实现文件共享的。同时还可以为用户登录samba服务器提供认证服务,也可以通过NetBIOS对windows网络上的主机进行解析。
SAMBA服务部署
1.与samba相关的软件包
samba-4.11.6-5.ky10.x86_64.rpm
samba-client-4.11.6-5.ky10.x86_64.rpm
samba-common-4.11.6-5.ky10.x86_64.rpm
samba-common-tools-4.11.6-5.ky10.x86_64.rpm
2.安装samba软件包
yum install -y samba
3.查看安装文件
1)rpm -ql samba
/etc/pam.d/samba …samba用户审计和的认证模块
/usr/bin/smbstatus …查看samba服务状态
2)rpm -ql samba-common
/etc/logrotate.d/samba …samba服务的日志滚动文件
/etc/samba/smb.conf …samba服务的主配置文件
/etc/sysconfig/samba …samba服务启动脚本的配置文件
/var/log/samba …samba服务日志的存放路径
3)rpm -ql samba-client
/usr/bin/smbclient …客户端登录命令
/usr/bin/smbget …客户端下载命令
4)rpm -ql samba-common-tools
/usr/bin/pdbedit …管理samba用户命令
/usr/bin/smbpasswd …管理samba用户命令
/usr/bin/testparm …检测配置文件格式命令
4.vim /etc/samba/smb.conf.example
[xxx] …共享容器
comment = …描述信息
browseable = …是否可浏览
writable = …是否有写权限
valid users = …本地用户登录
path = …共享的目录
guest ok = …是否允许匿名用户登录
public = …是否允许匿名用户登录
write list = …允许写权限的用户
SAMBA实例
例1:允许匿名用户读取/test目录
1)创建共享目录
mkdir /test
2)编辑配置文件
vim /etc/samba/smb.conf
[share]
comment = share first directory
path = /test
guest ok = yes
browseable = yes
read only = yes
注意: 只读状态下,匿名用户是可以下载
3)启动服务
systemctl start smb ; systemctl start nmb
4)客户端查询共享
sharename下的share为共享目录名称
5)匿名用户登录
例2.只允许本地用户登录
1)编辑配置文件
[share]
comment = share first directory
path = /test
guest ok = no
browseable = yes
valid users = tom jerry
write list = tom
2)更该共享目录的权限
chmod 757 /test
3)启动服务
systemctl start smb ; systemctl start nmb
4)创建samba用户
5)samba用户登录
例3.虚拟用户
1)在配置文件的全局配置段添加
vim /etc/samba/smb.conf
username map = /etc/samba/usernames
2)编辑以上文件
vim /etc/samba/usernames
tom = zhangsan
注意:tom为samba用户名,zhangsan为虚拟用户
3)虚拟用户登录