试验环境:两台主机
服务端:192.168.56.11
客户端:192.168.56.12
配置用户认证共享
服务端操作:
1.关闭防火墙,关闭selunix
[root@hejie ~]# setenforce 0
[root@hejie ~]# systemctl stop firewalld
2.安装软件包
[root@hejie ~]# yum install samba-* -y
3.启动smb服务并设置开机自启
[root@hejie ~]# systemctl start smb
[root@hejie ~]# systemctl enable smb
Created symlink from /etc/systemd/system/multi-user.target.wants/smb.service to /usr/lib/systemd/system/smb.service.
关于Samba的配置文件
[root@hejie ~]# grep -Ev '^#|^$' /etc/samba/smb.conf
[global] //全局参数
workgroup = SAMBA //工作组名称 非常重要
security = user //安全验证方式,总共四种
//share:无需验证身份,简单方便,安全性差
//user:需要验证用户密码才可以访问,安全性高
//server:需要通过三方服务器验证账号密码,(集中管理账户)
//domain:使用域控制器进行身份验证
passdb backend = tdbsam //定义用户后台的类型,共有三种
//smbpasswd:为系统用户设置Samba服务程序的密码
//tdbsam:创建数据库文件并使用pdbedit命令建立Samba服务程序的用户
//ldapsam:基于LDAP服务进行账户验证
printing = cups //设置Samba共享打印机的类型
printcap name = cups //设置共享打印机的配置文件
load printers = yes //设置在Samba服务启动时是否共享打印机设备
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 = root 允许写入该共享的用户
create mask = 0664
directory mask = 0775
4.添加用户"zhengran",不创建家目录,并设置密码。
[root@hejie ~]# useradd -M zhengran
[root@hejie ~]# smbpasswd -a zhengran
New SMB password:
Retype new SMB password:
Added user zhengran.
假设这里映射"zhengran"用户为share用户,那么就要在/etc/samba/smbusers文件中添加如下内容:
[root@hejie ~]# echo 'zhengran = share' > /etc/samba/smbusers
5.在全局配置中添加如下内容:
[root@hejie ~]# vim /etc/samba/smb.conf
[global]
workgroup = SAMBA
security = user
username map = /etc/samba/smbusers //添加此行内容
passdb backend = tdbsam
6.创建一个共享目录“zhengran”,并更改其属主属组为用户“zhengran”