samba服务(Linux)
samba服务器配置:
linux系统,使用SMB协议;windows系统,使用CIFS
核心服务:
SMB【服务消息快协议;建立会话,验证用户身份并提供文件和打印系统的访问;监听tcp的139和445号端口】
NMB【解析主机名,加入该服务未开启,只能通过IP地址访问;监听UDP137和138号端口】
samba服务器配置过程:
1. 查看系统版本信息:
cat /etc/redhat-release
2. 关闭防火墙及SElinux:
systemctl stop firewalld;systemctl disable firewalld
setenforce 0;vim /etc/selinux/config-->SELINUX=disabled[该操作需要重启系统]
3. 配置静态IP地址:
修改/etc/sysconfig/network-scripts/ifcfg-ens33文件
4. 安装samba软件包
a)配置yum源
cd /etc/yum.repos.d/
mkdir bak
mv CentOS-* bak/
vim local.repo
{
[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0
}
mount /dev/sr0 /mnt
b)安装软件包:
yum -y install samba
验证安装:
rpm -qa | grep smaba
5.samba配置文件:
/etc/samba/smb.conf
[global] #全局配置
workgroup = SAMBA #设置服务器加入的域或工作组
security = user【server、domain】#设置验证方式,默认本地用户验证
# username map = /etc/samba/smbusers #指定虚拟用户文件
passdb backend = tdbsam #建立samba用户数据库,用户必须时系统用户
printing = cups
printcap name = cups
load printers = yes
cups options = raw
[homes]
comment = Home Directories
valid users = %S, %D%w%S
browseable = No
read only = No
inherit acls = Yes
[printers]
comment = All Printers
path = /var/tmp
printable = Yes
create mask = 0600
browseable = No
[print$]
comment = Printer Drivers
path = /var/lib/samba/drivers
write list = @printadmin root
force group = @printadmin
create mask = 0664
directory mask = 0775
[smbtool] #共享名
comment = private
path = /smbtools #共享路径,在启动samba服务之前创建
browseable = no #是否可被浏览
valid user = lisi,@root #有效访问用户或组,@表示组
invalid user = zhangsan,@wang #禁止访问的用户或组,不要与valid users同时存在
read only = yes #只读访问
write list = lisi,@root #允许写入的用户
public = yes #是否允许guest用户访问
writable = yes #是否允许写入
create mask = 0664 #上传文件的默认权限
directory mask = 0775 #创建目录的默认权限
# guest ok = yes #当配置虚拟用户访问时,需使用该选项
6.samba用户添加:
pdbedit -a username:新建Samba账户。
pdbedit -x username:删除Samba账户。
pdbedit -L:列出Samba用户列表。
7.案例:lisi,zhangsan两个用户都能访问samba服务器,lisi可下载和上传,zhangsan只能下载
useradd lisi
useradd zhangsan
pdbedit -a lisi
pdbedit -a zhangsan
mkdir /testdir
共享目录的设置:
[test]
comment = Printer Drivers
path = /testdir
valid user = lisi,zhangsan
read only = yes
write list = lisi
create mask = 0644
directory mask = 0755
8.访问samba服务器:
linux客户端访问:
需要安装samba-client软件包
smbclient -L //192.168.100.1 -U lisi #查看共享名称
smbclient //192.168.100.1/共享名称 -U lisi
windows客户端访问:
win+R,打开运行框
\\192.168.100.1