在samba无密码共享基础之上,修改配置,特定用户可以访问,特定组可以访问。要求:(1)probe 用户可以读可写;(2)RDD 组的用户可读可写,RDD 组有用户 user1。
samba无密访问-->: samba无密访问
一、配置 samba的smb.conf
1.按照要求准备用户和组
[root@DJL djl]# groupadd RDD
[root@DJL djl]# useradd -g RDD user1
[root@DJL djl]# useradd user2
[root@DJL djl]# echo “eis220” | passwd --stdin user1
更改用户 user1 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@DJL djl]# echo “eis220” | passwd --stdin user2
更改用户 user2 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@DJL djl]#
2.添加 samba 账户
samba 要求 samba 账户必须是系统中已经存在的账户,账户有多种添加方式,取决于 smb.conf 的 global 段中 passdb backend 的设定,passdb backed采用 tdbsam,则必须使用 pdbedit 增加账户 同理依次增加 samba 账户 user1、user2、djl。
[root@DJL djl]# pdbedit -a -u user1
new password: //这里密码为自定123456
retype new password:
Unix username: user1
NT username:
Account Flags: [U ]
User SID: S-1-5-21-384176301-2400065358-1191883548-1000
Primary Group SID: S-1-5-21-384176301-2400065358-1191883548-513
Full Name:
Home Directory: \\djl\user1
3.修改 smb.conf
- 修改 global 段中 security 字段为 user;
- 修改 passdb backend 字段为 tdbsam。因为新建 samba 数据库使用 pebedit命令,秘钥后端必须使用 tdb 数据库格式
[global]
workgroup = SAMBA
security = user
# map to guest = Bad user
passdb backend = tdbsam
printing = cups
printcap name = cups
load printers = yes
cups options = raw
4.添加共享资源,并设置权限
[tmp]
comment = my share
path = /home/tmp
browseable = yes
writable = no //关闭写权限
write list = djl,@RDD //指定用户djl和RDD组可以写入
guest ok = yes
5.启动服务并测试
- 关闭防火墙和selinux;
[root@DJL djl]# systemctl stop firewalld.service
[root@DJL djl]# setenforce 0
- 启动服务
[root@DJL djl]# systemctl start smb.service
[root@DJL djl]# systemctl status smb.service
二、查看服务器ip并测试 user1 和 user2 账号对 tmp 的访问
(一)用户名:djl 密码:123456 测试
(二)用户名:user1 密码:123456 测试
首先打开cmd删除用户djl的磁盘映射:
PS C:\Users\user\Desktop> net use * /del /y
新建用户user1连接,密码为123456
PS C:\Users\user\Desktop> net use \\192.168.147.128 "123456" /user:user1
权限测试(有写入权限)
(三)用户名:user2 密码:123456 测试
同理 新建用户user2连接,密码为123456
刚刚