CentOS 安装 Samba服务器(多用户组、多用户有不同的访问权限)

48 篇文章 0 订阅
39 篇文章 0 订阅

 

 

增加smb用户
[root@localhost sir01]#smbpasswd -a linuxsir 

 

查看 smb 现有用户

pdbedit -L
 

验证用户登录文件夹

 smbclient //192.168.101.93/forlder  -U username 

 

Windows 映射

网络文件夹目前是以其他用户名和密码进行映射的——映射盘更换登录用户名问题

dos窗口输入命令:net use 即可看到当前已建立的连接

然后我们输入命令:net use * /delete 来结束所有的当前所有的连接。然后再输入命令: Y 来结束所有连接;

然后在按照更换登录映射盘密码的方法来重新登录就完美解决了。

 

1。首先服务器采用用户验证的方式,每个用户可以访问自己的宿主目录,并且只有该用户能访问宿主目录,并具有完全的权限,而其他人不能看到你的宿主目录。

2。建立一个caiwu的文件夹,希望caiwu组和lingdao组的人能看到,network02也可以访问,但只有caiwu01有写的权限。

3。建立一个lindao的目录,只有领导组的人可以访问并读写,还有network02也可以访问,但外人看不到那个目录

4。建立一个文件交换目录exchange,所有人都能读写,包括guest用户,但每个人不能删除别人的文件。

5。建立一个公共的只读文件夹public,所有人只读这个文件夹的内容。

好,我们先来前期的工作

建立3个组:
#groupadd caiwu

#groupadd network

#groupadd lingdao


添加用户并加入相关的组当中:
#useradd caiwu01 -g caiwu

#useradd caiwu02 -g caiwu

#useradd network01 -g network

#useradd network02 -g network

#useradd lingdao01 -g lingdao

#useradd lingdao02 -g lingdao

然后我们使用smbpasswd -a caiwu01的命令为6个帐户分别添加到samba用户中

#mkdir /home/samba

#mkdir /home/samba/caiwu

#mkdir /home/samba/lingdao

#mkdir /home/samba/exchange

#mkdir /home/samba/public

我们为了避免麻烦可以在这里把上面所有的文件夹的权限都设置成777,我们通过samba灵活的权限管理来设置上面的5点要求。

以下是我的smb.conf的配置文件

[global]

workgroup = bmit 

#我的网络工作组

server string = Frank's Samba File Server

#我的服务器名描述

security = user

#使用用户验证机制

encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd
#使用加密密码机制,在win95和winnt使用的是明文

其他的基本上可以按照默认的来。

[homes]
comment = Home Directories
browseable = no
writable = yes
valid users = %S
create mode = 0664
directory mode = 0775

#homes段满足第1条件

[caiwu]
comment = caiwu
path = /home/samba/caiwu
public = no
valid users = @caiwu,@lingdao,network02
write list = caiwu01
printable = no

#caiwu段满足我们的第2要求

[lingdao]
comment = lingdao
path = /home/samba/lingdao
public = no
browseable = no
valid users = @lingdao,network02
printable = no

#lingdao段能满足我们的第3要求

[exchage]
comment = Exchange File Directory
path = /home/samba/exchange
public = yes
writable = yes

#exchange段基本能满足我们的第4要求,但不能满足每个人不能删除别人的文件这个条件,即使里设置了mask也是没用,其实这个条件只要unix设置一个粘着位就行

chmod -R 1777 /home/samba/exchange 

注意这里权限是1777,类似的系统目录/tmp也具有相同的权限,这个权限能实现每个人能自由写文件,但不能删除别人的文件这个要求

[public]
comment = Read Only Public
path = /home/samba/public
public = yes
read only = yes

#这个public段能满足我们的第5要求。

到此为止我们的设置已经能实现我们的共享文件要求,记得重启服务哦

#/etc/rc.d/init.d/smb restart

如果大家没有winodws,不妨先用samba的cilent端命令来测试一下

命令的用法我在这里只举几个例子,具体的大家去试验

smbclient -L 服务器ip -N 

guest帐户查询你的服务器的samba共享情况,你可以检验一下是否lingdao目录时候能被guest帐户看到,应该是看不到的,当然你也可以以某个用户的名义查看

smbclient -L 服务器ip -U caiwu01

系统会提示密码,只要输入smb密码就行。

smbclient //服务器ip/caiwu -U caiwu01

#以caiwu01用户的名义登录caiwu目录

smbmount //服务器ip/caiwu /mnt/caiwu -o username=caiwu01
 

#把服务器的财务目录映射到本地的/mnt/caiwu目录。

 

测试

smbclient -L //localhost/share 或者 
  smbclient-L \\127.0.0.1 -Umyname //这时输入的密码就是你刚才设置的samba密码

使用

1、windows用户
在我的电脑地址栏里输入\\192.168.1.1访问;也可windows+R输入\\192.168.1.1;

登录后可以右击映射到本地驱动器。

net use * /delete
2、linux

(1)使用smbclient

#smbclient//192.168.1.1/Normal -U user%passwd
(2)挂载到某个目录使用
#mkdir/mnt/share
#mount -o username=youruser,password=passwd //192.168.1.1/Normal  /mnt/share

设置开机挂载将如下命令写入/etc/fstab

//192.168.1.1/share  /mnt/ml45  cifs  defaults,auto,username=youruser,password=passwd 0 0

 

然后#mount -a

 

如果出现不能访问

1.关闭防火墙

centos7 关闭防火墙

sudo systemctl stop firewalld 临时关闭

sudo systemctl disable firewalld ,然后reboot 永久关闭

sudo systemctl status  firewalld 查看防火墙状态

2.

SAMBA在CentOS6上出现NT_STATUS_ACCESS_DENIED错误的解决方法

Xizi posted @ 2013年5月11日 23:29 in 未分类 with tags SAMBA SMB Centos NT_STATUS_ACCESS_DENIED , 16745 阅读

 

NT_STATUS_ACCESS_DENIED listing \*
在CENTOS上配了个SAMBA与WINDOW共享文件。
 
一访问共享目录就”NT_STATUS_ACCESS_DENIED listing \*“ ,找了好久,发现是SELINUX阻挡了。
 
 
 
[root@linux tmp]# smbclient //127.0.0.1/sambar -U sambar%sambar
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.5.10-114.el6]
smb: \> ls
NT_STATUS_ACCESS_DENIED listing \*
 
                52265 blocks of size 1048576. 48406 blocks available
 
解决方法一:
 
关闭SELIUNX
 
[root@linux /]# getenforce   ;查看当前状态
Enforcing 
 
[root@linux /]# setenforce 0;
 
 
 
SELINUX几种状态表示:
 
enforcing:强制模式,代表 SELinux 运行中,且已经正确的开始限制 domain/type 了;
permissive:宽容模式:代表 SELinux 运行中,不过仅会有警告信息并不会实际限制 domain/type 的存取。这种模式可以运来作为 SELinux 的 debug 之用;
disabled:关闭,SELinux 并没有实际运行。
 
 
 
解决方法二:
 
更改selinux的策略
 
 

开机关闭SELinux
编辑/etc/selinux/config文件,如下图,将SELINUX的值设置为disabled。下次开机SELinux就不会启动了。

 

CentOS7中Samba环境搭建实录

https://blog.csdn.net/wc1695040842/article/details/91866500

启动Samba服务
[root@samba-server ~]# systemctl start smb
[root@samba-server ~]# systemctl enable smb
Created symlink from /etc/systemd/system/multi-user.target.wants/smb.service to /usr/lib/systemd/system/smb.service.
[root@samba-server ~]# systemctl restart smb
[root@samba-server ~]# systemctl status smb
 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值