分享

centos7上部署samba服务器

 漫星天墨迹 2017-09-10

因为小编前几天 做了个 vsftpd服务器,感觉做的很累,虽然挺安全的,但是一些问题还是 是不是的会出现 ,就比如那个 Windos客户机在上传文件的时候,文件名莫名奇妙的乱码了,我也改了好多种 编码格式 ,最终 我还是 决定 用 samba作为文件共享吧 ,不说别的 就是省事 简洁 (PS : 纯属 小编个人意见 )

咱们先说说什么是Samba吧

centos7上部署samba服务器

1991年,当年还在读大学的学生Tridgwell为了解决Linux与Windows系统之间的文件共享问题,便基于了这项SMB技术协议开发出了SMBserver这一款服务程序,SMBserver服务程序是一款基于SMB协议并由服务端和客户端组成的开源文件共享软件,通过非常简单的配置就能够实现Linux系统与Windows系统之间的文件共享工作。当时还在上学的Tridgwell想要把这款SMBServer软件注册成为商标,但却被商标局以SMB是没有意义的字符而拒绝了他的申请,经过Tridgwell不断的翻看词典,突然看到一个拉丁舞蹈的名字——SAMBA,如图12-1所示,这个热情洋溢的舞蹈名字中又恰好包含了SMB(SAMBA),于是这便是Samba服务程序名字的由来,现在已经成为了Linux系统与Windows系统之间共享文件的最佳选择。

也就是说 SMB服务器通信协议(Server Messages Block),的诞生是为了解决局域网内的文件或打印机等资源的共享服务问题,让多个主机之间共享文件变成越来越简单。

不说别的了 我们就来练手吧

第一步:yum install samba -y

centos7上部署samba服务器

centos7上部署samba服务器

第二步:设置防火墙策略

centos7上部署samba服务器

添加samba服务到防火墙策略中

重启防火墙

centos7上部署samba服务器

查看服务是否添加:

centos7上部署samba服务器

第三步:编辑samba配置文件

vim /etc/samba/smb.conf

centos7上部署samba服务器

centos7上部署samba服务器

centos7上部署samba服务器

添加一段: 如上图

【feixiangkeji】

comment = please do not modify it all will (comment是对该共享的描述,可以是任意字符串)

path = /home/feixiangkeji (共享的路径)

writable = yes 是否写入

public = no 是否公开

!!!保存 退出

第四步: 添加feixiangkeji用户

centos7上部署samba服务器

设置为 不予许登入系统,且用户的家目录为 /home/feixiangkeji (也就相当于虚拟账号)


id + 用户名 查看用户 属性

pdbedit 命令 用于管理SMB服务的帐户信息数据库,格式为:“pdbedit [选项] 帐户”,第一次把用户信息写入到数据库时需要使用-a参数,以后修改用户密码、删除用户等等操作就不再需要了

pdbedit -L :查看samba用户

pdbedit -a -u user:添加samba用户

pdbedit -r -u user:修改samba用户信息

pdbedit -x -u user: 删除samba用户


ps:同样 samba服务数据库的密码也可以用 smbpasswd 命令 操作

smbpasswd -a 用户名 #添加一个samba用户

smbpasswd -d 用户名 #禁用一个samba用户

smbpasswd -e 用户名 #恢复一个samba用户

smbpasswd -x 用户名 #删除一个samba用户

centos7上部署samba服务器

centos7上部署samba服务器

第五步:修改 samba用户 的家目录权限

centos7上部署samba服务器

接下来 我们就试试效果

systemctl restart smb 重启 samba 服务

systemctl enable smb 把samba服务添加到开机启动项目中

centos7上部署samba服务器

我们这里用windos 客户端测试! \\192.168.1.147

centos7上部署samba服务器

centos7上部署samba服务器

为什么 会这样呢 ,会不会是 SElinux 的问题 呢 我们先试试调整selinux,然后再登入试试

我首先想到的是上下文的安全关系:

semanage fcontext -a -t samba_share_t /home/feixiangkeji/

centos7上部署samba服务器

如果系统出现 下图的报错 ,说明你系统里没有安装 semanage 命令

centos7上部署samba服务器

没有 那我们就要安装 :

yum provides /usr/sbin/semanage //查找命令或文件对应包名

centos7上部署samba服务器

yum install -y policycoreutils-python

centos7上部署samba服务器

centos7上部署samba服务器

然后我们再执行一次

semanage fcontext -a -t samba_share_t /home/feixiangkeji/

执行完成后,不要忘了刷新上下文关系

restorecon -Rv /home/feixiangkeji/

centos7上部署samba服务器

允许SElinux对于SMB用户共享家目录的布尔值

centos7上部署samba服务器

再次重启SMB 服务

centos7上部署samba服务器

再用windos客户端 尝试:

PS: 对于windos 系统 中默认 的是记住你上次登入的信息(系统重启后,就要输入账号,密码)

这是 小编 使用 net use * /d /y忘记 当前 所有已经连接的网络共享

centos7上部署samba服务器

输入 \\192.168.1.147

centos7上部署samba服务器

centos7上部署samba服务器

centos7上部署samba服务器

能向文件夹中写入文件,说明我们的samba 服务 已经完全 搭建成功啦 !!!!

小编 的总结: 像samba 这样的 网络 服务 ,并不难


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多