Windows服务器实现文件共享怎么设置
为不同用户设置不同的访问共享文件的权限,并且需要密码验证的共享文件设置。方法如下:
1先开始设置文件共享。假设你的公司有老板,部门经理,普通人员访问共享,怎样让他们有不同权限和级别,关键看你对他们用户权限的定义。假设老板取用户名为A,部门经理取名为:E,普通人员取名为:T,那么首先打开开始管理工具计算机管理中的本地用户和组,一一将这些用户添加进去,记住这三个用户均要设置密码,并且密码均不一样。
当所有用户都已添加完成时,然后就是给这些用户赋予权限了,赋予权限的不同,所操作共享的级别也不同。点击计算机管理左边目录树的组文件夹,在右边窗口空白处点击右键,选择添加新组。
设定一个组名成为G,然后再点击界面上的添加按钮,弹出对话框,点击高级,弹出对话框,点击立即查找,这是现面就显示出刚才你添加的哪几个用户了,双击admin,返回了上一个对话框,这是你看到ADMIN用户已添加到白色的添加框里了,再点击高级立即查找,双击easy,返回上一个对话框,再点击高级立即查找,双击temp,返回上一个对话框,如图所示,这时候这三个用户就都添加进去了,点击确定按钮,点击下个对话框里的创建按钮!点击关闭OK!
然后你在点击目录树用户文件夹,接着返回用户对话框里,右键点击T用户属性,点隶属于标签,发现t用户隶属于两个组,删处Users这个隶属组,让T用户直隶属于G这个组,依次改了A,E两个用户的隶属,让这三个用户只属于G组,为什么这样做,是因为如果他们属于两个组,当你设置某些文件夹共享属性时,当他们无法以G组用户成员查看时,却可以换身份以其他组成员身份进入,这样你设置的共享权限密码也就失去作用了。
至此,这三个用户身份的界定以完成。开始设置他们在共享文件夹中担当的角色和级别了。
目前,国内市场能够有效记录共享文件操作记录的软件非常少。据笔者所知,大势至共享文件审计系统是可以精确记录局域网用户对共享文件访问情况的安全审计系统。它可以有效记录共享文件的读取、复制、修改、剪切、删除、重命名等操作行为,而且还可以对重要共享文件进行特别保护,这样局域网用户有意或不小心删除共享文件的时候,就会报“权限不足,无法操作“,从而有力地保护了共享文件的安全。大势至共享文件审计系统的安装部署很简单,只需要在服务器上安装就可以了。安装完毕后,会在桌面上形成三个图标,在桌面上点击“登录大势至共享文件审计系统”即可成功登录。
基于web界面登录,输入用户名和密码即可
启动监控并设置要监控或保护的共享文件(大图),选中共享文件夹,点击“添加到监控路径”或“添加到保护路径”即可开始了监控和保护
8
点击监控日志即可查看共享文件访问情况
用 windows sever 系统
开共享 服务
建立多用户
分配权限
开文件共享
增加用户 修该用户权限。
即可
安装服务程序
通过安装Samba服务程序后细致的分析其配置文件参数,更能够帮助读者们理解Samba服务的安全验证方式。
安装Samba服务软件包:
[root@linuxprobe Desktop]# yum install samba
Loaded plugins: langpacks, product-id, subscription-manager
………………省略部分安装过程………………
Installing:
samba x86_64 411-31el7 rhel7 527 k
………………省略部分安装过程………………
Complete!
浏览Samba配置文件:
[root@linuxprobe ~]# cat/etc/samba/smbconf
配置文件竟然有320行!有没有被吓到?其实Samba服务配置文件中大部分是注释信息,我们可以来筛选过滤下:
备份原始的配置文件:
[root@linuxprobe ~]# mv /etc/samba/smbconf /etc/samba/smbconfbak
过滤掉无用的内容:
先使用cat命令读入Smb配置文件后通过grep命令-v参数(反向选择)去掉所有注释信息,然后分别删选掉包含#号的行("#"),包含;号的行(";")以及所有的空白行("^$"),最后最后将过滤后的信息覆盖写入到/etc/samba/smbconf文件中。
cat /etc/samba/smbconfbak | grep -v "#" | grep -v ";" | grep -v "^$" > /etc/samba/smbconf
让我们来看看过滤后的配置文件吧:
[global] #全局参数。
workgroup = MYGROUP #工作组名称。
server string = Samba Server Version %v #服务器介绍信息,参数%v为显示SMB版本号。
log file = /var/log/samba/log%m #定义日志文件存放位置与名称,参数%m为来访的主机名。
max log size = 50 #定义日志文件最大容量为50Kb。
security = user #安全验证的方式,总共有4种。
#share:来访主机无需验证口令,更加方便,但安全性很差。
#user:需由SMB服务验证来访主机提供的口令后才可建立访问,更加的安全。
#server:使用独立的远程主机验证来访主机提供的口令(集中管理帐号)。
#domain:使用PDC来完成验证
passdb backend = tdbsam #定义用户后台的类型,共有3种。
#smbpasswd:使用SMB服务的smbpasswd命令给系统用户设置SMB密码。
#tdbsam:创建数据库文件并使用pdbedit建立SMB独立的用户。
#ldapsam:基于LDAP服务进行帐户验证。
load printers = yes #设置是否当Samba服务启动时共享打印机设备。
cups options = raw #打印机的选项
[homes] #共享参数
comment = Home Directories #描述信息
browseable = no #指定共享是否在“网上邻居”中可见。
writable = yes #定义是否可写入操作,与"read only"相反。
[printers] #打印机共享参数
comment = All Printers
path = /var/spool/samba #共享文件的实际路径(重要)。
browseable = no
guest ok = no #是否所有人可见,等同于"public"参数。
writable = no
printable = yes
标准的Samba共享参数是这样的:
参数 作用
[linuxprobe] 共享名称为linuxprobe
comment = Do not arbitrarily modify the database file 警告用户不要随意修改数据库
path = /home/database 共享文件夹在/home/database
public = no 关闭所有人可见
writable = yes 允许写入操作
我们将上面的配置参数直接追加到SMB服务配置文件(/etc/samba/smbconf)并重启SMB服务程序即可生效。
但此时SMB服务默认的验证模式为user,我们需要先创建用户数据库后才可以正常使用,现在来学习下如何创建吧~
1222 安全共享文件
使用Samba服务口令验证方式可以让共享文件更加的安全,做到仅让信任的用户访问,而且验证过程也很简单,要想使用口令验证模式,我们需要先创建Samba服务独立的数据库。
第1步:检查当前是否为user验证模式。
[root@linuxprobe ~]# cat /etc/samba/smbconf
第2步:创建共享文件夹:
[root@linuxprobe ~]# mkdir /database
第3步:描述共享文件夹信息。
在SMB服务主配置文件的最下面追加共享文件夹的配置参数:
[database]
comment = Do not arbitrarily modify the database file
path = /database
public = no
writable = yes
保存smbconf文件后重启启动SMB服务:
[root@linuxprobe ~]# systemctl restart smb
添加到开机启动项:
[root@linuxprobe ~]# systemctl enable smb
ln -s '/usr/lib/systemd/system/smbservice' '/etc/systemd/system/multi-usertargetwants/smbservice'
第4步:使用Windows主机尝试访问
读者按照下表的IP地址规划动手配置下Windows的网卡参数,应该都会吧~
主机名称 操作系统 IP地址
Samba共享服务器 红帽RHEL7操作系统 1921681010
客户端 红帽RHEL7操作系统 1921681020
客户端 微软Windows7操作系统 1921681030
在Windows主机的运行框中输入远程主机的信息
此时访问Samba服务报错
此时访问Samba服务是报错的,如果读者已经看完Apache(httpd)服务程序的章节,应该还记得防火墙和SELinux规则吧。
第5步:清空防火墙规则链:
Windows访问Samba主机提示报错,我们怀疑是Iptables阻止了访问操作,于是执行:
[root@linuxprobe ~]# Iptables -F
[root@linuxprobe ~]# service iptables save
因为Windows系统的缓存关系,可能需要先重启下Windows主机再尝试访问Samba共享。
Windows系统被要求验证帐户口令
那么这个问题就是出在Iptables防火墙的默认规则中了,所以请对SELinux多一点耐心,不要直接关闭SELinux。
第6步:创建SMB服务独立的帐号。
现在Windows系统要求先验证后才能访问共享,而SMB服务配置文件中密码数据库后台类型为"tdbsam",所以这个帐户和口令是Samba服务的独立帐号信息,我们需要使用pdbedit命令来创建SMB服务的用户数据库。
pdbedit命令用于管理SMB服务的帐户信息数据库,格式为:“pdbedit [选项] 帐户”。
参数 作用
-a 用户名 建立Samba用户
-x 用户名 删除Samba用户
-L 列出用户列表
-Lv 列出用户详细信息的列表
创建系统用户:
[root@linuxprobe ~]# useradd smbuser
将此系统用户提升为SMB用户:
[root@linuxprobe ~]# pdbedit -a -u smbuser
new password:设置SMB服务独立的密码
retype new password:
Unix username: smbuser
NT username:
Account Flags: [U ]
User SID: S-1-5-21-4146456071-3435711857-2069708454-1000
Primary Group SID: S-1-5-21-4146456071-3435711857-2069708454-513
Full Name:
Home Directory: \\linuxprobe\smbuser
HomeDir Drive:
Logon Script:
Profile Path: \\linuxprobe\smbuser\profile
Domain: LINUXPROBE
Account desc:
Workstations:
Munged dial:
Logon time: 0
Logoff time: Wed, 06 Feb 2036 23:06:39 CST
Kickoff time: Wed, 06 Feb 2036 23:06:39 CST
Password last set: Sat, 11 Jul 2015 18:27:04 CST
Password can change: Sat, 11 Jul 2015 18:27:04 CST
Password must change: never
Last bad password : 0
Bad password count : 0
Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
第7步:使用Windows主机验证共享结果:
请您按照下面的幻灯片逐步操作,可点击两侧箭头或下方小圆点“○”切换步骤。
Windows验证SMB服务口令
Windows成功访问SMB服务
Windows进入共享目录失败
1
2
3
<
>
第8步:允许SELinux规则
使用Windows主机访问Samba共享果然可以使用smbuser用户登入,但对于共享文件这么重要的事情,SELinux一定会强制管理,刚刚没有妥当的配置好SELinux,现在果然又报错了。
将共享目录的所有者和所有组设置为smbuser用户:
[root@linuxprobe ~]# chown -Rf smbuser:smbuser /database
允许SELinux对于SMB用户共享家目录的布尔值:
[root@linuxprobe ~]# setsebool -P samba_enable_home_dirs on
将共享目录的SELinux安全上下文设置妥当:
[root@linuxprobe ~]# semanage fcontext -a -t samba_share_t /database
使新的安全上下文立即生效:
[root@linuxprobe ~]# restorecon -Rv /database/
第9步:使用Windows主机验证共享结果
我们配置好Samba服务后又陆续的调整好了Iptables防火墙与SELinux安全规则,现在终于可以正常的使用共享了。
使用SMB服务并创建文件
第10步:使用Linux主机验证共享结果
刚刚好像让读者产生了一些小误解,Samba服务程序并不仅仅是能够实现Linux与Windows系统间的文件共享,还可以实现Linux系统之间的文件共享哦,先动手配置下客户端主机的IP地址吧:
主机名称 操作系统 IP地址
Samba共享服务器 红帽RHEL7操作系统 1921681010
客户端 红帽RHEL7操作系统 1921681020
客户端 微软Windows7操作系统 1921681030
在客户端安装cifs-utils软件包:
[root@linuxprobe ~]# yum install -y cifs-utils
Loaded plugins: langpacks, product-id, subscription-manager
………………省略部分安装过程………………
Installing:
cifs-utils x86_64 62-6el7 rhel7 83 k
………………省略部分安装过程………………
Complete!
创建挂载目录:
[root@linuxprobe ~]# mkdir /database
在root家目录创建认证文件(依次为SMB用户名、SMB用户密码、SMB共享域):
[root@linuxprobe ~]# vim authsmb
username=smbuser
password=redhat
domain=MYGROUP
此文件太重要了,权限应该给小一些:
[root@linuxprobe ~]# chmod -Rf 600 authsmb
配置其挂载信息(内容依次为远程共享信息、本地挂载目录、文件系统类型、认证文件以及开机自检选项):
[root@linuxprobe ~]# vim /etc/fstab
//1921681010/database /database cifs credentials=/root/authsmb 0 0
使用mount命令的-a参数挂载所有在fstab文件中定义的文件信息:
[root@linuxprobe ~]# mount -a
成功挂载Samba的共享目录(能够看到共享文件了):
[root@linuxprobe ~]# cat /database/Memotxt
i can edit it
Samba服务真的是太强大了,不仅能够实现Linux系统之间分享数据还能与Windows主机进行文件共享。
使用Samba实现文件共享 http://wwwlinuxprobecom/chapter-12html 参考这里了……!@%¥#
0条评论