2019独角兽企业重金招聘Python工程师标准>>>

samba:用于实现Linux和windows之间文件共享

功能:实现匿名用户和本地用户的文件共享

工作原理:

smb进程:控制发布目录与权限,负责文件传输TCP 139 445

nmb进程:用于名称解析udp 137 138

Samba安装:

步骤:(安装|查询|软件列表)

#yum install samba -y

#rpm -qa|grep samba

samba-winbind-3.6.23-36.el6_8.x86_64

samba-client-3.6.23-36.el6_8.x86_64     //客户端

samba-3.6.23-36.el6_8.x86_64            //服务端

samba4-libs-4.0.0-66.el6_6.rc4.x86_64   //库文件

samba-common-3.6.23-36.el6_8.x86_64     //工具包

samba-winbind-clients-3.6.23-36.el6_8.x86_64

[root@Server ~]# rpm -ql samba|grep etc

/etc/logrotate.d/samba  //日志轮转

/etc/pam.d/samba        //认证模块

/etc/rc.d/init.d/nmb    //启动脚本

/etc/rc.d/init.d/smb    //启动脚本

/etc/samba/smbusers     //用户别名

二进制命令

/usr/sbin/nmbd

/usr/sbin/smbd

/etc/samba/smb.conf   //主配置文件

/usr/bin/smbpasswd      //配置smb用户密码命令

/usr/bin/testparm       //检查语法命令

/usr/bin/smbxlient   //客户端命令

了解主配置文件

#cat /etc/samba/smb.conf|grep -v ^#|grep -v ^';'|grep [a-z]

[global]    //全局选项

workgroup = MYGROUP //工作组

server string = Samba Server Version %v //smb服务的版本描述

# logs split per machine

log file = /var/log/samba/log.%m    //日志文件及格式

# max 50KB per log file, then rotate

max log size = 50       //日志的最大大小

security = user     //认证模式:user(用户名密码),share(匿名用户),server(外部服务器)

passdb backend = tdbsam

# the login script name depends on the machine name

# the login script name depends on the unix user used

# disables profiles support by specifing an empty path

load printers = yes //加载打印机

cups options = raw  //打印机选项

#obtain list of printers automatically on SystemV

[homes]     //局部选项,默认共享本地用户的家目录

comment = Home Directories  //描述

browseable = no         //隐藏标签

writable = yes  //可写

[printers]      //共享名称

comment = All Printers

path = /var/spool/samba

browseable = no

guest ok = no  ------> public = no

writable = no  ------> read only = yes

printable = yes //打印选项

不修改配置文件启动服务

[root@Server ~]# /etc/init.d/nmb start

[root@Server ~]# /etc/init.d/smb start

默认情况:

security = user

客户端测试:

配置oldboy的数据库密码

[root@Server ~]# smbpasswd -a oldboy   

-a  打开

-d  关闭

linux客户端连接:

[root@client01 ~]# smbclient -L 192.168.8.132 -U oldboy

[root@client01 ~]# smbclient //192.168.8.132/oldboy -U oldboy

Enter oldboy's password:

Domain=[MYGROUP] OS=[Unix] Server=[Samba 3.6.23-36.el6_8]

smb: \>

windows客户端连接

\\192.168.8.132 ---->输入用户名密码即可访问

总结:默认情况,本地用户可以访问自己的家目录, 但是需要将用户加入到smb数据库中,匿名用户没有可访问的目录.

如果security = share 本地用户无法访问;

security = user 本地用户可以访问, 匿名用户能否访问取决于是否有共享目录允许匿名用户访问。

匿名用户共享:

server: /samba/share

mkdir /samba/share -p

[root@Server /]# vim /etc/samba/smb.conf

security = share

[anon_share]

comment = anon share

path = /samba/share

public = yes writable = yes

browseable = yes

service smb restart     //重启服务

测试:

#smbclient 192.168.8.132/anon_share

security = share 匿名用户可以访问本地用户不可以

基于本地用户和密码访问

[root@Server /]# vim /etc/samba/smb.conf

security = user

[local_share]

comment = local share

path = /samba/local

public = no

writable = yes

browseable = yes

service smb restart     //重启服务

测试:

#smbclient 192.168.8.132/local_share

======================================================================

samba实践:

基于用户名密码的综合访问

需求: 公司:uplooking

1、财务部 /samba/upl_cw cw01用户有可读可写权限,财务部门员工可读,boss01对其有管理权限

2、市场部 /samba/upl_sc 该部门的员工可读可写,公司所有员工可以查询相关资料,boss02对其有管理权限

3、人事部 /samba/upl_rs rs01总监可读写,人事部门员工可以对财务部门查询,vip用户可查询人事部门

4、休息区 /samba/upl_pub 所有人都可以自己管理自己的文件

步骤:

1、创建用户组

groupadd uplooking

groupadd cw

groupadd sc

groupadd rs

每个部门2个员工:

useradd -g cw -G uplooking cw01

useradd -g cw -G uplooking cw02

useradd -g sc -G uplooking sc01

useradd -g sc -G uplooking sc02

useradd -g rs -G uplooking rs01

useradd -g rs -G uplooking rs02

useradd -g uplooking -G cw boss01

useradd -g uplooking -G sc boss02

useradd vip

2、创建目录及修改相应的权限

mkdir /samba/upl_{cw,sc,rs,pub} -p

chmod 770 /samba -R

chown root.uplooking /samba

chown root.cw upl_cw

chown root.sc upl_sc

chown root.rs upl_rs

chmod 1777 upl_pub

3、搭建Samba服务,发布共享目录

vim /etc/samba/smb.conf

[财务共享目录]

commet = 财务

path = /samba/upl_cw

valid users = @cw,boss01,@rs

read list = @cw,boss01,@rs

write list = cw01,boss01

[市场共享目录]

commet = 市场

path = /samba/upl_sc

valid users = @uplooking

read list = @uplooking,boss02,@sc

write list = boss02,@sc

[HR共享目录]

commet = HR

path = /samba/upl_rs

valid users = @rs,vip

read list = @rs,vip,boss02

write list = rs01

[休息区共享目录]

commet = 休息

path = /samba/upl_pub

valid users = @uplooking

read list = @uplooking

write list = @uplooking

4、检查语法

/usr/bin/testparm

5、配置smb用户名密码

smbpasswd -a cw01

smbpasswd -a cw02

smbpasswd -a rs01

smbpasswd -a rs02

smbpasswd -a sc01

smbpasswd -a sc02

smbpasswd -a boss01

smbpasswd -a boss02

smbpasswd -a vip

/usr/bin/pdbedit -L 列出smb数据库里的用户

5、重启服务 service smb restart

6、测试验证 Linux windows cmd ---->net use * /del /y          //清空缓存

7、相应的acl控制策略

#setfacl -m u:rs01:rx upl_cw

#setfacl -m u:vip:rx upl_rs #setfacl -m u:vip:rx .

用户别名:

#vim /etc/samba/smusers

vip = zhangsan

[global]

username

map = /etc/samba/smbusers

-------------------------------------------------------------------

以上可能需要acl控制权限设置

setfacl 设置文档访问控制列表

-b  删除所有附加的ACL条目

-k 删除默认的ACL

-m 添加ACL条目

-x 删除制定的ACL条目

-R 递归处理所有的子文件与子目录

使用getfacl查看文档的ACL权限,使用setfacl来设置文档的ACL权限。

转载于:https://my.oschina.net/u/3635512/blog/1843486

知识点041-Samba 的安装相关推荐

  1. Linux 设置windows可见的文件夹共享,创建只拥有读权限的共享用户,samba工具安装,“smbpasswd: command not found“问题解决

    linux 设置 windows 可见的共享文件夹 第一章:文件夹共享设置方法 ① 设置文件共享,只拥有读权限 ② windows 用户访问测试 ③ samba 服务安装,"smbpassw ...

  2. 10树莓派Samba的安装与配置

    2017-08-31 12:28:26 1.安装samba服务 打开终端或者SSH连接树莓派,输入如下命令: sudo apt-get install samba 已经安装过了显示下列信息: pi@r ...

  3. 【Samba】安装与配置

    1.sudo yum install samba samba* -y   <#########安装Samba server 和Samba client以及其他Samba 其他软件. samba的 ...

  4. Linux下samba的安装与配置

    physique 博客园 首页 新随笔 联系 管理 订阅 随笔- 203  文章- 0  评论- 33 Linux下samba的安装与配置 转载来源:http://blog.chinaunix.net ...

  5. 【samba】Ubuntu samba的安装及使用方法

    Ubuntu samba的安装及使用方法 说明 本文仅在Ubuntu系统上进行了安装,centOS系统等存在一定差异,读者可参考其他资源进行分析 安装 sudo apt-get update sudo ...

  6. [Samba] Linux(Centos)samba服务安装,Samba文件共享及Samba配置详解

    本片博客主要介绍了[Samba] Linux(Centos)samba文服务器安装案例,samba共享,samba服务,samba配置详解及网页配置samba工具samba-swat 的使用方法等. ...

  7. linux查询Samba的安装,Linux_Linux中Samba服务器的编译安装以及配置的宏的写法,编译安装查询系统是否安装samb - phpStudy...

    Linux中Samba服务器的编译安装以及配置的宏的写法 编译安装查询系统是否安装samba 复制代码代码如下: # rpm -aq | grep samba yast2-samba-client-2 ...

  8. 学习大数据的第47天(HDFS以及Zookeeper)——HDFS的重要架构知识点以及zookeeper的安装和基本命令

    学习大数据的第47天(HDFS以及Zookeeper)--HDFS的重要架构知识点以及zookeeper的安装和基本命令 HDFS的知识点 HDFS文件块的大小 HDFS的写流程 自己的话总结一下: ...

  9. centos7 samba 离线安装_Centos 7 上安装Samba的详细步骤

    为了实现Windows主机与Linux服务器之间的资源共享,Linux操作系统提供了Samba服务,Samba服务为两种不同的操作系统架起了一座桥梁,使Linux系统和Windows系统之间能够实现互 ...

  10. Ubuntu中Samba的安装配置和使用[图文]

    Samba服务在Ubuntu服务器版本中默认并没有安装. 1. Samba软件包的安装 使用源安装,在终端中输入如下命令: #sudo apt-get install samba #sudo apt- ...

最新文章

  1. W: Possible missing firmware /lib/firmware/i915/bxt_guc_ver8_7.bin for module i915
  2. 【软件使用】Windows下的Objective-C集成开发环境搭建(IDE)
  3. STATIC_URL/STATIC_ROOT/STATICFILES_DIRS/urls.py中的static区别
  4. 收银系统服务器有什么好处,生鲜超市收银系统软件怎么选?收银系统能带来什么好处?...
  5. 使用python编写自己的进程调试工具
  6. mysql只能导入2m_如何解决phpMyAdmin导入mysql数据库超过2M的问题
  7. 如何从Java方向转向Linux C方向?
  8. tp5小程序生成二维码保存到七牛云
  9. 海康人脸认证设备对接
  10. CAD​自定义快捷键命令
  11. ROS生成弓字形覆盖路径点逻辑分析
  12. 机器学习:XGBoost+LightGBM+catboost+5折+stacking的用法
  13. 幼儿园介绍信(15篇)
  14. ANSYS 有限元分析 后处理 General Postproc
  15. 改变Dev-C++生成的exe文件图标
  16. mPEG-b-PAE/ mPEG-block-poly (β-amino esters)疏水性聚合物
  17. R笔记:全子集回归 | 最优子集筛选变量挑选
  18. 队列--参考源码(转)
  19. C# EF 拼接OR
  20. Principal Components Regression, Pt.1: The Standard Method

热门文章

  1. 嵌入式学习笔记——SPI协议
  2. matlab 罗盘图与羽毛图
  3. Cramer-Rao Lower Bound (CRLB) Simple Introduction
  4. 新版 Edge 浏览器或将拥有两个不同的浏览器内核
  5. jvm 内存结构默写
  6. 继人工智能攻陷围棋,德州扑克也沦陷了
  7. 分享一个MD5加密的工具类
  8. css控制显示行数,多出部分显示省略号
  9. supermap iobect .net 7.1.2 图例的拆分
  10. ORACLE时间函数(SYSDATE)深入理解