Samba服务搭建及详解

转载自:http://hongtengfei.blog.51cto.com/9881650/1698588

Samba文件共享服务

1. 什么是Samba文件共享服务

1.1       Samba的含义
Samba是linux和unix系统上实现SMB/CIFS协议的一个免费软件,由服务器和客户端程序构成。
SMB:局域网支持共享文件和打印机的一种通信协议,为局域网内不同计算机之间提供文件及打印机等资源的共享服务
             Samba原理图: 

这里写图片描述

1.2       Samba的包组
    Samba(服务器端软件包):包含了samba的主要daemon档案(smbd及nmbd)、samba的文件档(document)、以及其他与samba相关的logrotate设定文件及开机预设选项档案等。
    Samba-common(Samba公共文件软件包):主要提供了SAMBA的主要设定档(smb.conf)、smb.conf语法检验的测试程序(testparm)等等。
    Samba-client(客户端软件包):提供了当linux作为SAMBA Client端时,所需要的工具指令,例如挂载SAMBA档案格式的执行档smbmount等等。
     1.3       Samba的进程及作用
    Samba有两个守护进程:smbd和nmbd,这两个守护进程是独立的启动脚本。
    Smbd:为客户端提供文件共享服务和打印机服务,并且负责用户权限验证以及锁功能。Smb服务启动smbd。端口号:TCP协议的139/445端口,netstat-nutlp查看端口信息
    Nmbd:提供NetBIOS名称服务来满足基于CIFS(Common Internet File System)协议的共享访问环境。Nmb服务启动nmbd。端口号:UDP的137端口
    或许表格会更清晰的了解Smbd和Nmbd,嘿嘿

这里写图片描述

2. 配置安装Samba服务器

  2.1       关闭防火墙和selinux
[root@Samba ~]# service iptables stop #临时关闭防火墙
[root@Samba ~]# chkconfig iptables off #永久关闭防火墙
[root@Samba ~]# setenforce 0 #暂时关闭selinux
[root@Samba ~]# sed -i "/SELINUX=/cSELINUX=disabled" /etc/sysconfig/selinux  #永久关闭selinux
    2.2       安装Samba软件
[root@Samba ~]# yum -y install samba
    2.3       创建共享目录
[root@Samba ~]# mkdir/common  #创建公共目录common
[root@Samba ~]# chmod777 /common       #给common目录授权
[root@Samba ~]# echo"hello world\!" > /common/test.txt #创建测试文件test.txt
    2.4       修改配置文件
[root@Samba ~]# vim /etc/samba/smb.conf
在结尾添加以下内容:
[common]                                 //共享名称为common
comment = Common share  //共享注释
path = /common                     //指定共享路径
browseable = yes                    //所有人可见
guest ok = no                           //拒绝匿名访问
writeable = yes                        //支持写入数据
    2.5     创建访问账号
[root@Samba samba]# useradd -s/sbin/nologin smbuser   //创建用户
[root@Samba samba]# smbpasswd -a smbuser     //创建密码
New SMB password:
Retype new SMB password:
 Addeduser smbuser.
              Smbpasswd命令:修改samba密码 –a添加账户并设置密码;-x删除SMB账户;-d禁用SMB账户 –e 启用SMB账户
    2.6       启动服务
[root@Samba ~]# servicesmb start
Shutting down SMB services:           [  OK  ] 
StartingSMB services:               [  OK  ]

3. 客户端访问

3.1       Windows客户端访问
    3.1.1            windows客户端访问
主机启动方式:windows键+R打开运行输入\\samba的ip

这里写图片描述

当使用windows客户端访问时会经常出现这样的错误

这里写图片描述

解决方式:网络右键属性打开网络和共享中心-更改适配器设置

这里写图片描述

本地连接右键属性-点击共享

这里写图片描述

将本地网卡共享给VMnet8

这里写图片描述

然后重新打开以下你的samba客户端
然后输入你的用户名和密码就能进入

这里写图片描述

3.2       Linux客户端访问
#用linux客户端访问时需要smbclient命令,需要安装
[root@Samba ~]#yum -y install samba-client
#然后就可以执行smbclient命令
[root@Samba ~]#smbclient -L //192.168.137.7  #查看主机共享信息
#执行上述命令可能会一个error:
[root@Samba ~]#smbclient -L //192.168.137.7
Enter root's password: 
session setup failed:NT_STATUS_LOGON_FAILURE
#这是由于使用的用户是root用户的原因,所以后面加个用户就行了
[root@Samba ~]# smbclient -L//192.168.137.7 -U smbuser #查看共享信息
Enter smbuser's password:      #仅查看不需要密码,直接回车键
Domain=[MYGROUP] OS=[Unix] Server=[Samba3.6.23-20.el6]

Sharename       Type     Comment
---------       ----     -------
common          Disk      Common share
IPC$            IPC       IPC Service (Samba Server Version3.6.23-20.el6)
smbuser        Disk      Home Directories
Domain=[MYGROUP] OS=[Unix] Server=[Samba3.6.23-20.el6]
Server               Comment
---------            -------
Workgroup            Master
---------            -------
#管理共享目录文件
[root@Samba ~]# smbclient -U smbuser//192.168.137.7/common
Enter smbuser's password: 
Domain=[MYGROUP] OS=[Unix] Server=[Samba3.6.23-20.el6]
smb: \> ls
 .           D       0  Thu Sep 24 23:45:22 2015
 ..           DR        0 Fri Sep 25 12:13:12 2015
 test.txt               14  ThuSep 24 23:45:22 2015
35727 blocks of size 524288. 31695blocks available
smb: \> quit
 3.3       挂载Samba共享目录
#以挂载/test目录为例
[root@Samba /]# mkdir /test
[root@Samba /]# mount -t cifs//192.168.137.7/common /test -o username=smbuser,passwd="123456"   #挂载  cifs为网络文件系统

4. Samba配置文件详细分析

[global]                                #定义全局策略
       workgroup = MYGROUP   #定义工作组
       server string = Samba Server Version %v
             #服务器提示字符,默认显示samba版本
       log file = /var/log/samba/log.%m       #定义日志文件
       max log size = 50         #定义日志文件单个文件最大容量为50KB
       security = user              #security选项将会影响客户端访问方式             #可以设置user、share、server、domain。User:代表用户名和密码验证;share:代表匿名访问;server:代表基于验证身份的访问,账户信息在另一台SMB服务器上;domain:同样基于验证身份验证,账户信息在活动目录中    
       passdb backend = tdbsam       #账户与密码存储方式,smbpasswd:使用老的明文格式存储账户及密码;tdbsam:代表基于TDB的密文格式存储;ldapsam:代表使用LDAP存储账户资料。
       load printers = yes                    #客户端在10分钟内没有打开任何Samba资源,服务器将自动关闭回话。
       cups options = raw                   #打印属性
[homes]                                                    #共享名称
       comment = Home Directories #注释,共享的描述信息
       browseable = no                       #共享目录是否可以被浏览
       writable = yes                            #共享目录是否可以进行写操作
[printers]                                                  #打印机共享
       comment = All Printers            
       path = /var/spool/samba        #打印机共享池
       browseable = no                       
       guest ok = no                      #是否允许匿名访问
       writable = no
       printable = yes
[common]                                                 #共享名称为common
       comment = Common share
       path = /common                       #指定共享目录
       valid users = tom jerry       #有效账户列表
 create mask = 0750                 #客户端上传文件的默认权限
 directorymask = 0775             #客户端创建目录的默认权限 
browseable = yes                #客户端是否对所有人可见       
             writable= no                            #是否允许写入
            write list = tom                         #写权限账户列表
            admin users = tom                   #该共享的管理员,具有完全权限
            invalid users = root bin    #禁止root与bin访问common共享
            guest ok = no                      #是否允许匿名访问
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值