当前位置: 首页 > 图文教程 > 服务器 > Linux服务器 > Samba服务器的搭建与配置

Linux服务器
Linux上双网卡绑定方法(Suse9SP3)
Linux操作系统调优参数的意义
Linux下使用SSH客户端及其Sftp文件传送
教你恢复被误删除的Linux文件
SQL Server注入大全及防御
Linux无法解析域名的解决办法
Linux系统下安装和配置MyEclipse的方法
Ubuntu下VirtualBox 1.4.0设置文件共享
Windows与Linux系统共享StarDict字典文件
修改Linux下相关的登陆信息
Windows通过SecureCRT远程登录Linux主机
Linux操作系统如何修改SWAP交换区的大小
Linux操作系统下为Apache目录添加密码
Linux时间设置与同步(NTP)
Linux内核补丁AMD旁路转换缓冲(TLB)错误
Linux架设DHCP服务器的方法
Fedora 8下Apache配置与管理
Linux操作系统下用单网卡捆绑双IP的方法
Ubuntu Linux系统环境变量配置文件
SUSE Linux中将Tomcat作为Service运行

Linux服务器 中的 Samba服务器的搭建与配置


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 135 ::
收藏到网摘: n/a

  我们今天要实现的环境是,假如公司有财务,技术,领导3个部门,我们分别为3个部门建立3个用户组为caiwu,network,lingdao;

  三个部门里各有2个用户,我们建用户分别为caiwu01,caiwu02,network01,network02,lingdao01,lingdao02

  然后我们分别就公司的具体情况建立相应的目录及访问权限,通过以下的例子,希望大家能在平时的工作中灵活的应用samba的安全权限来设置你们的samba文件服务器。

  1、首先服务器采用用户验证的方式,每个用户可以访问自己的宿主目录,并且只有该用户能访问宿主目录,并具有完全的权限,而其他人不能看到你的宿主目录。

  2、建立一个caiwu的文件夹,希望caiwu组和lingdao组的人能看到,network02也可以访问,但只有caiwu01有写的权限。

  3、建立一个lindao的目录,只有领导组的人可以访问并读写,还有network02也可以访问,但外人看不到那个目录

  4、建立一个文件交换目录exchange,所有人都能读写,包括guest用户,但每个人不能删除别人的文件。

  5、建立一个公共的只读文件夹public,所有人只读这个文件夹的内容。

  好,我们先来前期的工作

  建立3个组:

  #groupadd caiwu

  #groupadd network

  #groupadd lingdao

  添加用户并加入相关的组当中:

  #useradd caiwu01 -g caiwu

  #useradd caiwu02 -g caiwu

  #useradd network01 -g network

  #useradd network02 -g network

  #useradd lingdao01 -g lingdao

  #useradd lingdao02 -g lingdao

  然后我们使用smbpasswd -a caiwu01的命令为6个帐户分别添加到samba用户中

  #mkdir /home/samba

  #mkdir /home/samba/caiwu

  #mkdir /home/samba/lingdao

  #mkdir /home/samba/exchange

  #mkdir /home/samba/public

  我们为了避免麻烦可以在这里把上面所有的文件夹的权限都设置成777,我们通过samba灵活的权限管理来设置上面的5点要求。

  以下是我的smb.conf的配置文件

  [global]

  workgroup = bmit

  #我的网络工作组

  server string = Frank's Samba File Server

  #我的服务器名描述

  security = user

  #使用用户验证机制

  encrypt passwords = yes

  smb passwd file = /etc/samba/smbpasswd

  #使用加密密码机制,在win95和winnt使用的是明文

  其他的基本上可以按照默认的来。

  [homes]

 

  comment = Home Directories

  browseable = no

  writable = yes

  valid users = %S

  create mode = 0664

  directory mode = 0775

  #homes段满足第1条件

  [caiwu]

  comment = caiwu

  path = /home/samba/caiwu

  public = no

  valid users = @caiwu,@lingdao,network02

  write list = caiwu01

  printable = no

  #caiwu段满足我们的第2要求

  [lingdao]

  comment = lingdao

  path = /home/samba/lingdao

  public = no

  browseable = no

  valid users = @lingdao,network02

  printable = no

  #lingdao段能满足我们的第3要求

  [exchage]

  comment = Exchange File Directory

  path = /home/samba/exchange

  public = yes

  writable = yes

  #exchange段基本能满足我们的第4要求,但不能满足每个人不能删除别人的文件这个条件,即使里设置了mask也是没用,其实这个条件只要unix设置一个粘着位就行。

  chmod -R 1777 /home/samba/exchange

  注意这里权限是1777,类似的系统目录/tmp也具有相同的权限,这个权限能实现每个人能自由写文件,但不能删除别人的文件这个要求。

  [public]

  comment = Read Only Public

  path = /home/samba/public

  public = yes

  read only = yes

  #这个public段能满足我们的第5要求。

  到此为止我们的设置已经能实现我们的共享文件要求,记得重启服务哦

  #/etc/rc.d/init.d/smb restart

  如果大家没有winodws,不妨先用samba的cilent端命令来测试一下

  命令的用法我在这里只举几个例子,具体的大家去试验

  smbclient -L 服务器ip -N

  guest帐户查询你的服务器的samba共享情况,你可以检验一下是否lingdao目录时候能被guest帐户看到,应该是看不到的,当然你也可以以某个用户的名义查看

  smbclient -L 服务器ip -U caiwu01

  系统会提示密码,只要输入smb密码就行。

  smbclient //服务器ip/caiwu -U caiwu01

  #以caiwu01用户的名义登录caiwu目录

  smbmount //服务器ip/caiwu /mnt/caiwu -o username=caiwu01

  #把服务器的财务目录映射到本地的/mnt/caiwu目录。