您的位置:首页 > 运维架构 > Linux

CentOS 7安装配置Samba

2016-04-03 00:00 537 查看
摘要:最近新学Linux,本来想用RedHatLinux来做学习平台,但是发现RedHatLinuxISO文件实在是太难下载了。因为CentOS和RedHatLinux极其相似,所以选择下载CentOSLinux7DVDISO.这个镜像4个多GB,但是下载只用了30多分钟。

最近新学Linux,本来想用RedHatLinux来做学习平台,但是发现RedHatLinuxISO文件实在是太难下载了。因为CentOS和RedHatLinux极其相似,所以选择下载CentOSLinux7DVDISO.这个镜像4个多GB,但是下载只用了30多分钟。

网络上大量配置samba的文章,但是发现没有一篇照着做是可以实现的。所以我决定写一篇完整的配置。虽然安全性不能保证,但是功能可以实现,安全性以后再研究了。

安装

安装的过程我不再具体写,百度一下有大把文档,稍微有点Linux基础的人我相信都能安装的了。我装了两次,第一次用的的mininstall,装完以后发现ifconfig命令运行不了。
运行whichifconfig或者是find/-name"ifconfig*.*"都没有找到文件文件。
网上找了很多,有的说是环境变量没有,文件在bin或者sbin下面。
正解是运行下面命令:
#yuminstallnet-tools
原因是ifconfig已经过时了,可以用ipaddr或者iplink查询。
因为我是新学,所以为了排除干扰,我重新选择了fileandprinterserver模式安装。这个模式下安装ifconfig命令是可以运行的。
2.安装samba
运行下面命令:
#yum-yinstallsambasamba-clientsamba-common
安装完成后运行rpm-qa|grep"samba",确保都安装成功了。



3.配置samba
假设我们有这样一个场景

共享名路径权限
SHAREDOC/smb/docs所有人员包括来宾均可以访问
RDDOCS/smb/tech仅允许特定组的用户进行读写访问
准备工作:

创建共享目录(假设共享/smb目录下的文件)

#mkdir-p/smb/docs

#mkdir-p/smb/tech

//创建操作系统用户

#useraddalice

#useraddjack

#useraddtom

#useraddRD



//修改用户的组

#usermod-a-GRDalice

#usermod-a-GRDjack

#usermod-a-GRDtom

账号创建完以后检查用户所属组,确保每个用户所属组都有1003RD

#idalice

uid=1000(alice)gid=1000(alice)groups=1000(alice),1003(RD)

#idjack

uid=1001(jack)gid=1001(jack)groups=1001(jack),1003(RD)

#idtom

uid=1002(tom)gid=1002(tom)groups=1002(tom),1003(RD)

#idRD

uid=1003(RD)gid=1000(RD)groups=1003(RD)



//修改目录权限

#chgrpRD/smb/tech

#chgrpRD/smb/docs

#chownRD/smb/tech

#chownRD/smb/docs

#chmod770/smb/tech

#chmod770/smb/docs

修改完成后再检查一下文件夹权限

#ls/smb-l



//备份原有的配置文件在原目录下

#cd/etc/samba

#cpsmb.confsmb.conf.origin

#vi/etc/samba/smb.conf

删除原有所有内容,添加如下内容:

[global]

workgroup=BIGCLOUD

netbiosname=ZZSRV2

serverstring=SambaServer

#security=share

security=user

maptoguest=BadUser

[SHAREDOCS]

path=/smb/docs

readonly=yes

browseable=yes

guestok=yes

[RDDOCS]

path=/smb/tech/

public=no

writable=yes

writelist=@RD

validusers=@RD

4.重启服务
RedHatLiunx都是用servicerestartsmb来重启的,在CentOS里面服务的操作都是用systemctl来完成了。
运行下面命令:
#systemctlrestartsmb
#systemctlreloadsmb
#systemctlstatussmb
最后这条命令是检查状态的。




5.防火墙和SELinux
网上基本上没有文章提到这一点,所以我一直测试不成功,最后发现关闭SELinux和防火墙后就可以访问了。
关闭防火墙



关闭SELinux



7.设置开机启动samba
chkconfigsmbon
8.客户端所属组
我成功测试的机器是一台在WORKGROUP工作组里面的windows7,加入域的机器是访问不了的。这个可能和之前我们Samba里面设置的是workgroup有关系吧。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: