CentOS 6.4下安装和配置Samba

一、Samba 基础
  1> 什么是Samba
      Samba安装在linux上,是linux系统和windows系统之间互相通信共享文件的工具。
      Samba的主要功能是文件共享  
  2> 工作流程
      协议协商--->建立连接--->访问共享资源--->断开连接
  3> 相关进程
      smbd : 管理共享资源,用户验证 (TCP端口:445)
      nmbd : NetBIOS名称解析 (UDP端口:137、138、139)


二、所作实验步骤
  1> CentOS 6.4下安装和启动

      首选查看CentOS是否已经安装了Samba
      # rpm -qa | grep samba

      注意版本号,如果缺少samba主要安装包,则需要根据已经安装的版本下载主安装包安装,或者写在已经安装的包,然后重新安装。

      卸载命令:# rpm -e [包名]

       或者强制卸载: # rpm -e --nodeps [包名]


      开始安装:
      服务端: 
      yum install samba
      客户端:
      yum install samba-client


      启动:
      service nmb start
      service smb start 


  2> samba 服务端配置
      配置文件/etc/samba/smb.conf中,[global] 全局配置,优先级最低;[homes] 用户家目录配置;[printers] 打印机相关;
      [global]
        workgroup = MYGROUP
        server string = Samba Server Version %v
        security = user                        #模式,验证用户名密码
        encrypt passwords = Yes                #密码加密存储
        passdb backend = tdbsam                #密码存储方式 
        username map = /etc/samba/smbusers      #虚拟用户
        log level = 0                          #日志级别
        log file = /var/log/samba/%m.log        #日志目录
        max log size = 50
        cups options = raw                      #打印机相关


      [homes]
        comment = Home Directories for %S      #%S 为通配符,当前登录用户
        guest ok = No
        valid users = %S
        force user = %S                        #只当前登录用户可写
        writeable = Yes
        browseable = No                        #共享其他人不可见
      [printers]
        comment = All Printers
        path = /var/spool/samba
        guest ok = No
        printable = Yes
        browseable = No
  
      还可以自定义配置如


      [sm22]
        comment = data dir for sm2
        path = /data/sm2
        guest ok = No
        valid users = sm2
        writeable = Yes
        directory mask = 0700
        browseable = No


  3> Samba 用户管理
      a> 添加系统用户
        useradd -s /sbin/nologin test1  #test1不能登录操作系统
        smbpasswd -a test1              #添加test1至samba数据库  
      b> 添加大量的虚拟用户(sm11、sm12、sm13..)映射至test2用户
        useradd -s /sbin/nologin  test2  
        smbpasswd -a test2
        vim /etc/samba/smbusers
            test2 = sm11  sm12  sm13  sm14  sm15  sm16


  4> 为特殊用户建立单独配置文件
      a> 为 sm2 用户创建单独配置文件
        cp /etc/samba/smb.conf  /etc/samba.conf.sm2
  
      b> 编辑 /etc/samba/smb.conf 文件
        vim /etc/samba/smb.conf
        [global]
        config file = /etc/samba/smb.conf.%U
  
      c> 编辑 /etc/smb.conf.sm2  文件,去掉 browseable = no  这样  sm2  在访问服务器时,sm22 服务可见
        [sm22]
          comment = data dir for sm2
          path = /data/sm2
          guest ok = No
          valid users = sm2
          writeable = Yes
          directory mask = 0700
    
      d> 重启 samba 服务

你可能感兴趣的:(linux,samba)