samba基本共享

关于sanmba项目

smb/cifs协议

主要软件包

服务端samba

客户端 samba-client cifs-utils

 

主要程序

smbd 提供对文件/打印资源的共享访问

监听端口 TCP 139 TCP445

nmbd 提供基于NetBIOS协议的主机名解析

 监听端口 UDP137 UDP138

系统服务脚本 /etc/init.d/smb

配置目录及主要配置文件

/etc/samba/

/etc/samba/smb.conf

配置文件检查工具

testparm

配置组成

【global】全局设置

【homes】用户目录共享设置

【printers】打印机共享设置

 【myshare】自定义的共享目录设置

辅助配置内容

-注释行:以#开始的行

-配置样例行以;开始的行

实验如下

1安装相关软件包

2编辑配置文件 通过egrep   -v   ‘^#|^;|^$’ 

3继续对过滤后的文件进行编辑

 

其中global表示全局设置

     homes表示用户目录共享设置

  printers打印机共享设置

      同时可以自定义共享目录设置

同时配置语句还有如下意义

workgroup   工作组名称

serverstring  服务器描述

security 默认使用的安全级别

    share 匿名共享

    user 用户认证

    server,domain 其他服务器或win域认证

     comment对此共享目录的说明文字

    path 共享目录的实际位置

    browseable 是否可见 no为隐藏共享

     public 是否所有人可用,等效于guest OK

      writable 是否可写 与readonly相反     

设定了自己的共享目录

通过smbclietn -L在输入密码的时候 直接回车可以看到tools的信息

   需要注意的是 当全局的安全性设置为user时候 即使在tools下设置为share也不行

在windows下的访问(通过unc路径)

 

除了 上述的匿名访问之外samba还可以设置用户验证。用于samba用户验证的账号称之为

共享账号。新建共享账号时,必须先有同名的系统账号

对于共享共享账号,它的密码是独立的

而访问共享时以共享账号/密码登陆,权限取决于对应的系统账号

默认采用TDB数据格式

/var/lib/samba/private/passdb.tdb

那么如何将一个系统账号声明为共享账号呢

pdbedit工具

格式  pdbedit   【选项】  。。。 【共享账户名】

该工具常用的管理选项

-a 将指定的系统用户添加为共享账号

-L查看共享账号消息

-x删除指定的共享账号

那么我们添加一个用于验证samba共享访问验证的用户alice

useradd alice  && pdbedit -a  alice  

之后系统会通知你相关的消息

可使用smbpasswd 重新设置密码

在这里我们设置两个用户其中alice对共享目录能读能写

  而bob对目录仅为读

继续添加用户bob

把/etc/samba/smb.conf

的设置更改为如下

read only代表默认权限为只读

valid users 指明下列用户具有 该默认的权限

writelist 指明下列用户同时还具有写的权限

 如此

在访问时候提示输入密码,用户名用共享账号 密码用pdbedit的密码

 

对以上其实我仍然有许多不解,以下是我的心得

      1在匿名访问的时候即使把tools更改为share后 ,如果global的安全为user仍然提示输入密码

  2同上条件匿名访问把tools设置为user global设置为shar此时访问现象很奇怪无法输入用户名,可以输入密码

      3同样当我们把 全局与tools的安全都设置为user时,将public设置为no 与上述结果相同用户 仅仅被限制为来宾,并提示输入密码

 在打开别名文件后似乎对上述的疑问有点明朗开来

在这里我们看到了别名也看到了guest,这个文件事实上是为了安全性着想

那么我们把alice的别名设置为aa bob的别名设置为bb验证两者的读写权限

同时在配置文件中需要指出别名文件的位置

usermap = /etc/samba/smbusers  

我们用aa别名登陆

可以上传(我们也必须保证用户alice能够对/usr/src有写入权限)

我们再用bb登陆 如下访问被拒绝

同时我们可以修改umask来调整用户创建文件后文件的权限值

我们利用另外一台linux访问他并验证权限

我们查看aa上传的文件夹的权限

在对上传的文件进行权限查看的时候我们发现实际上权限为100,这和我们平常理解的umask有区别

当我们把umask设置为777时,上传的文件为766

 

 

它的权限为111保留了x似乎又和以往的umask联系上了。。

同样我们可以像挂载nfs一样挂载samba

mount -o username=aa //192.168.0.2/tool  aa

posted @ 2014-12-11 23:37  平何去何  阅读(201)  评论(0编辑  收藏  举报