samba服务器的搭建

修改防火墙设置
firewall-cmd --permanent --add-service=samba //设置防火墙

firewall-cmd --reload //重新加载防火墙
安装samba服务并启动samba服务
yum install -y samba samba-client //安装服务 

systemctl start smb.service nmb.service  //启动服务
建立共享目录
mkdir /home/company
创建访问账号
useradd -s /sbin/nologin xzusr 

smbpasswd -a xzusr
选项说明:
-a 添加 smb 帐号;
-x 删除 smb 帐号;
-d 禁用 smb 帐号;
-e 启用 smb 帐号
修改配置文件

修改配置文件:/etc/samba/smb.conf

[company] //共享名称为 company
comment = company share//共享注释
path = /home/company //指定共享路径
browseable = yes //所有人可见
guest ok = no //拒绝匿名访问
writeable = yes //支持写入数据
valid users=xzusr,gcusr,xsusr //允许访问的用户列表
write list=xzusr //允许写入的用户列表

修改配置文件以后,必须重启服务(systemctl restart smb nmb)使更改生效

测试配置文件
testparm 当配置文件的语法出错时会给出提示,修改再次运行 testparm 测试
测试samba服务器
在 linux 客户端访问测试:smbclient -U smbuser //xxx.xxx.xxx.xxx/company
查看服务器的共享文件有哪些:smbclient -L xxx.xxx.xxx.xxx
查看 smbuser 用户可以访问的共享文件:smbclient -L xxx.xxx.xxx.xxx -U smbuser
匿名共享
1)创建共享目录:
[root@localhost home]# mkdir share
[root@localhost home]# echo 'hello,world!'>/home/share/hello.txt 2)修改配置文件
[root@localhost home]# vim /etc/samba/smb.conf
security=share [share] 共享名
comment=Linux share 共享目录的注释、说明信息
path=/home/share 共享目录
public=yes 允许所有samba用户访问该共享目录
writable = yes
printable = no
write list = +staff 3)修改后重启samba服务
[root@localhost home]#service smb restart 4)在windows客户端测试访问:
开始--运行--\\xxx.xxx.xxx.xxx 此时发现可以看到共享文件,但无法查看其内容,这是由于samba服务器上的
selinux导致的,需要将selinux改为许可模式:
[root@localhost home]# setenforce 0
带身份验证的文件共享
(1)创建samb用户:
[root@localhost home]# useradd smbuser
[root@localhost home]# smbpasswd -a smbuser
New SMB password:
Retype new SMB password: 使用smbpasswd命令可以对samba用户进行管理,主要选项有:
-h 显示smbpasswd命令的帮助信息
-a 添加指定的samba用户
-d 禁用指定的samba用户
-e 启用指定的samba用户
-x 删除指定的samba用户 (2)修改配置文件
将global中的 security=share 改为:security=user
改完后需要重启smb服务
[root@localhost home]#service smb restart (3)访问测试
在windows客户端:开始--运行--\\192.168.10.1
此时你会发现需要输入用户和密码进行验证。 如果利用smbuser用户连接共享文件后,你想用smbadmin用户连接共享文件时你会发现是直接连接的。这是因为windows访问时会缓存,用如下办法可解决此办法:
开始--运行--cmd--net use * /del--y
设置共享权限
所有用户都可以写入
(1)修改配置文件
[root@localhost home]# vim /etc/samba/smb.conf
[share]
comment=Linux share
path=/home/share
public=yes
writable=yes (2)修改共享目录的权限:
[root@localhost home]#chmod 777 /home/share
setfacl -m u:nobody:rwx /home/share 访问控制列表ACL
setfacl -x
只有指定用户可以写入
[root@localhost home]# vim /etc/samba/smb.conf
[share]
comment=Linux share
path=/home/share
public=yes
write list=smbadmin writable=yes表示所有用户都有写入权限
write list=smbadmin表示指定smbadmin用户有写入权限
如果要指定多个用户有写入权限,用户之间用,号隔开:write list=smbadmin,smbuser
只有指定用户可以访问
 [root@localhost home]# vim /etc/samba/smb.conf
[share]
comment=Linux share
path=/home/share
valid users=smbuser,smbadmin
write list=smbadmin
允许/拒绝指定用户的访问
只允许在IP地址为x.x.x.x的客户端上访问teach共享目录
[tech]
comment=technet
path=/home/technet
writable=yes
hosts allow=x.x.x.x 允许地址段x.x.x.x/xx内的用户访问tech共享目录,IP地址为x.x.x.x的计算机除外
[tech]
Comment=technet
path=/home/technet
writable=yes
hosts allow=x.x.x.x EXCEPT x.x.x.x teach(/home/tech),只有tech组的成员可以访问和写入权限
[tech]
Comment=technet
path=/home/technet
valid users=@tech
write list=@tech

Linux:搭建samba服务器的更多相关文章

  1. Android源码浅析(三)——Android AOSP 5.1.1源码的同步sync和编译make,搭建Samba服务器进行更便捷的烧录刷机

    Android源码浅析(三)--Android AOSP 5.1.1源码的同步sync和编译make,搭建Samba服务器进行更便捷的烧录刷机 最近比较忙,而且又要维护自己的博客,视频和公众号,也就没 ...

  2. 使用Linux搭建FTP服务器实现文件共享

    使用Linux搭建FTP服务器实现文件共享... ---------------- Linux中的文件共享:FTPVSFTPDVSFTPD虚拟用户 FTP可以用在Linux与Linux 和Window ...

  3. Linux 之 Samba服务器

    Samba服务器 参考教程:[千峰教育] 一:Samba简介: 360百科: Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成. SMB(Server M ...

  4. Linux 搭建SVN 服务器(转)

    一. SVN 简介 Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据. 这些数据放置在一个中央资料档案库 (repository) 中 ...

  5. 原 Linux搭建SVN 服务器2

    原 Linux搭建SVN 服务器 发表于1年前(2014-08-05 17:55)   阅读(12257) | 评论(3) 31人收藏此文章, 我要收藏 赞3 摘要 Linux搭建SVN 服务器 目录 ...

  6. 原 Linux搭建SVN 服务器

    原 Linux搭建SVN 服务器 发表于1年前(2014-08-05 17:55)   阅读(12257) | 评论(3) 31人收藏此文章, 我要收藏 赞3 摘要 Linux搭建SVN 服务器 目录 ...

  7. Linux搭建SVN 服务器

    Linux搭建SVN 服务器 1          安装SVN 2          使用客户端连接 2.1       使用windows的客户端 2.2       使用Linux下的命令行 3  ...

  8. Linux搭建SVN 服务器(转)

    转自:http://my.oschina.net/lionel45/blog/298305 Linux搭建SVN 服务器 作者: 沈小然    日期:2014年 8月 5日 1          安装 ...

  9. Linux 搭建SVN 服务器

    一. SVN 简介 Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据. 这些数据放置在一个中央资料档案库 (repository) 中 ...

  10. Linux搭建SVN服务器(服务端)

    Linux搭建SVN服务器(服务端) 1 安装SVN SVN客户端:TortoiseSVN,官网下载:https://tortoisesvn.net/downloads.html(客户端) # yum ...

随机推荐

  1. Linux下使用docker 拉取 vsftpd 镜像搭建 Ftp 服务器,连接 Ftp 时遇到的错误(425 Failed to establish connection)

    Ftp踩坑系列: Linux上的ftp服务器 vsftpd 之配置满天飞--设置匿名用户访问(不弹出用户名密码框)以及其他用户可正常上传 ftp服务器Serv-U 设置允许自动创建不存在的目录 FTP ...

  2. 4.Ansible Task控制

    1.tag标签(调试) --skip-tags install_nfs 跳过此标签 -t 指定标签名 [root@manager tasks]# cat task_nfs.yml - hosts: w ...

  3. bootstrap-table 常用总结-树形结构(展开和折叠)

    今天在工作的时候,遇到了一个需求,就是需要一键展开或者关闭树形结构.关于树形结构的不是很熟悉,然后去百度,结果也不是很准确.最后经过Google才找到.下面分享给大家 直接看代码: var flag ...

  4. 【Java基础】接口和抽象类之间的对比

    Java 中的接口和抽象类之间的对比 一.接口 Interface,将其翻译成插座可能就更好理解了.我们通常利用接口来定义实现类的行为,当你将插座上连接笔记本的三角插头拔掉,换成微波炉插上去的时候,你 ...

  5. 集合 set方法

    集合 number = {1, 2, 4} # 添加元素到集合 number.add(100) print(number) # 从集合中删除 number.remove(2) print(number ...

  6. Unity3D 使用Socket处理数据并将数据 在UGUI、NGUI上显示出来

    Unity3d 不支持C#的线程直接调用Unity3D 主线程才能实现的功能.例如:给UGUI text 赋值.改变Color值等.怎样解决这个问题呢?使用一个Loom脚本. 按照惯例贴上代码. 首先 ...

  7. jenkins实现git自动拉取代码时替换配置文件

    jenkins实现从git上自动拉取源代码——>自动编译——>发布到测试服务器——>验证测试,这个大家应该都知道,但是关于源代码里的配置文件,可能就会有点头疼了, 一般测试都会自己的 ...

  8. Map随笔:最常用的Map——HashMap

    目录 Map随笔:最常用的Map--HashMap 前言: 1,HashMap的结构 2,HashMap的一些属性(JDK8) 3,HashMap的构造函数(JDK8) 4,HashMap的一些方法( ...

  9. Oracle 11gR2中HR用户安装说明

    1.脚本下载: 链接: 1,脚本放在这个目录下$ORACLE_HOME/demo/schema/human_resources             hr_analz.sql  hr_code.sq ...

  10. 从壹开始 [ 学调试 ]║ 轻松实现 PC端+移动端的本地同步联调

    缘起 哈喽!(瞬间就想到了开场白:亲爱的朋友们,我又回来了