Samba文件服务器

  1. 本章结构

  2. 服务简介
    1. SMB协议

      Server Message Block,服务消息块

    2. CIFS协议

      Common Internet File System,通用互联网文件系统

    3. Samba项目

      http://www.samba.org

    4. 作用:

      分享档案与打印机服务;

      可以提供用户登入SAMBA主机时的身份认证;

      可以进行Windows网络上的主机名解析(NetBIOS name)

    5. SAMBA软件包

    6. samba服务器的主要程序

      smbd:提供对服务器中文件、打印资源的共享访问,打开的端口为139和445

      nmbd:提供基于NetBIOS主机名的解析,打开端口为137和138

      Samba的服务脚本:/etc/init.d/smb

      Samba的配置目录及文件

      /etc/samba/

      /etc/samba/smb.conf

      配置文件检查工具:testparm

    7. 常见配置

      smb.conf文件的配置内容:

      [global]:全局配置

      [homes]:用户目录共享设置

      [printers]:打印机共享设置

      [myshare]:自定义名称的共享目录设置,名字可以自定义,但是最好见名知意

      辅助配置内容:

      注释行:以#号开头的行

      配置样例行:以;号开头的行

      结合grep命令可以提取有效配置行

      grep –v "^#" smb.conf | grep –v "^;" | grep –v ^$

      常见全局配置项的含义:

      workgroup:所在工作组名称

      server string:服务器描述信息

      security:安全级别,可用值如下:

      share、user、server、domain

log file:日志文件位置,"%m"变量表示客户机地址

max log size:日志文件的最大容量。单位为KB

passwd backend:设置共享账户文件的类型

常见共享目录配置项的含义:

comment = some string:对共享目录的注释、说明信息

path = pathname:共享目录在服务器中对应的实际路径

load printers = yes/no:是否加载打印机

browseable = yes/no:该目录在"网上邻居"中是否可见

guest ok = yes/no:是否允许所有人访问,等效于"public"

public = yes/no:是否允许所有人访问

writable:是否可写,与read only的作用相反

printable = yes/no:是否允许打印

read only = yes:只读

share modes = yes/no:是否开启共享模式

valid users = username1,username2,@groupname:

#指定合法用户或组,只有写在这里的才可以登陆

write list = username1,username2,@groupname:

#只有写在这里用户或组才具有写权限,组名前要加@符号

  1. 其他设置

    端口映射与地址访问限制:

    hosts allow = 192.168.1. EXPECT 192.168.1.15

    #设置允许访问的主机IP,可以使用EXPECT排除某个IP

    username map = /etc/samba/smbusers

    格式为:原名 = 别名

    #别名映射,别名文件为smbusers

    linux自动挂载

    #vim /etc/fstab

    //192.168.10.2/share /mnt cifs defaults,username=zhangsan,password=123456

    注意:samba共享目录,除了服务自身设置外,还要注意设置目录权限

  2. 客户端访问
    1. Linux客户端

      # yum -y install samba-client #安装SAMBA客户端

      #useradd admin #添加本地用户

      #加入samba服务的用户家目录其实就是系统用户的家目录

      #smbpasswd -a admin #为用户添加密码

      #smbclient –U username //主机IP/sharedir

      #以某用户登陆SAMBA

      #smbclient [-U username] -L IP地址

      #列出某samba服务器共享的目录信息

      smb: \> get 文件名 #下载文件

      smb: \> put 文件名 #上传文件

      smb: \> ls #列出共享的文件

    2. Windows客户端

      \\IP地址\sharedir (unc路径:Universal Naming Convention
      通用命名规则,也称通用命名规范、通用命名约定)

      在CMD下可以使用:net use * /del #删除本机所有映射和IPC#$(空连接)连接

      #如果想每次都不用做上述操作,那么可以将其映射到本机,即在windows里面,点击"计算机—映射网络驱动器" 填写好相关信息

  1. 试验一

创建3个文档目录:

/var/share/public,存放公共数据

/var/share/training,存放技术培训资料

/var/share/devel,存放项目开发资料

1、将/var/share/public目录共享为public

所有员工可匿名访问,但是只能读取文件,不能写入

2、将/var/share/training目录共享为peixun

只允许管理员admin及技术部的员工只读访问

3、将/var/share/devel/目录共享为kaifa

技术部的员工都可以读取该目录中的文件

但是只有管理员admin及xdl项目组的员工有写入权限

首先记得关闭防火墙和SELINUX

#yum –y install samba

#vim /etc/samba/smb.conf

[global]

workgroup = WORKGROUP

server string = Samba Server Version %

log file = /var/log/samba/log.%m

max log size = 50

security = user

passdb backend = tdbsam

load printers = yes

cups options = raw

[homes]

comment = Home Directories

browseable = no

writable = yes

; valid users = %S

; valid users = MYDOMAIN\%S

[printers]

comment = All Printers

path = /var/spool/samba

browseable = no

guest ok = no

writable = no

printable = yes

[public]

comment = public

path = /var/share/public

browseable = yes

guest ok = yes

read only = yes

[peixun]

comment = peixun

path = /var/share/training

valid user = admin,@tech

read only = yes

[kaifa]

comment = kaifa

path = /var/share/devel

writable = yes

write list = admin,@xdl

#service smb start

#useradd admin #添加本地用户

#smbpasswd -a admin #为用户添加密码

#chmod 775 /var/share/public #可根据系统用户、组、其他人进行设置

#chmod 770 /var/share/training

#chmod 770 /var/share/devel

添加用户组进行测试:

#groupadd xdl

#groupadd tech

#useradd –G xdl user1

#useradd –G xdl user2

#useradd –G xdl user3

#useradd –G tech tech1

#useradd –G tech tech2

#setfacl -m u:admin:rx /var/share/training

#setfacl -m g:tech:rx /var/share/training

#setfacl -m g:tech:rx /var/share/devel

#setfacl -m g:xdl:rwx /var/share/devel

#setfacl -m u:admin:rwx /var/share/devel

#smbpasswd -a user1

#smbpasswd –a user2

#smbpasswd –a user3

#smbpasswd –a tech1

#smbpasswd –a tech2

Linux测试机:

#yum –y install samba-client

#smbclient -U admin //192.168.131.129/kaifa #测试结果可读写

#mkdir /samba

  1. 永久挂载

# vim /etc/fstab

//192.168.131.129/kaifa /samba cifs defaults,username=admin,password=123 0 0

#mount –a

#mount

  1. 临时挂载

#mount -t cifs -o defaults,username=admin,password=123 //192.168.131.129/kaifa /samba/

Samba服务详解的更多相关文章

  1. winxp计算机管理中服务详解

    winxp计算机管理中服务详解01 http://blog.sina.com.cn/s/blog_60f923b50100efy9.html http://blog.sina.com.cn/s/blo ...

  2. Android中Service(服务)详解

    http://blog.csdn.net/ryantang03/article/details/7770939 Android中Service(服务)详解 标签: serviceandroidappl ...

  3. WCF中队列服务详解

    WCF中队列服务详解 一.引言 在前面的WCF服务中,它都要求服务与客户端两端都必须启动并且运行,从而实现彼此间的交互.然而,还有相当多的情况希望一个面向服务的应用中拥有离线交互的能力.WCF通过服务 ...

  4. 【转】SSH服务详解

    [转]SSH服务详解 第1章 SSH服务 1.1 SSH服务协议说明 SSH 是 Secure Shell Protocol 的简写,由 IETF 网络工作小组(Network Working Gro ...

  5. (转)SSH服务详解

    SSH服务详解 原文:http://www.cnblogs.com/clsn/p/7711494.html 第1章 SSH服务1.1 SSH服务协议说明SSH 是 Secure Shell Proto ...

  6. HTTPD之二————HTTPD服务详解————httpd的配置文件常见设置

    HTTPD之二----HTTPD服务详解----httpd的配置文件常见设置 HTTP服务器应用 http服务器程序 httpd apache nginx lighttpd 应用程序服务器 IIS,a ...

  7. angular-ngSanitize模块-$sanitize服务详解

    本篇主要讲解angular中的$sanitize这个服务.此服务依赖于ngSanitize模块. 要学习这个服务,先要了解另一个指令: ng-bing-html. 顾名思义,ng-bind-html和 ...

  8. Java从入门到精通——数据库篇Oracle 11g服务详解

    装上Oracle之后大家都会感觉到我们的电脑慢了下来,如何提高计算机的速度呢?我们应该打开必要的服务,关闭没有用的服务.下面是Oracle服务的详解: Oracle ORCL VSS Writer S ...

  9. windows 7 系统进程服务详解

    windows 7已经发布有段时间了,相信很多网友都已经换上了传说中非常完美的win7系统.win7不仅继承而且还超越了vista的美观界面,性能优化方面也下足了功力.还拥有强大的win xp兼容性, ...

随机推荐

  1. ehcache 的配置

    配置:一.在src目录下加入ehcache.xml: <cache name="SimplePageCachingFilter" maxElementsInMemory=&q ...

  2. bitmap的实现方法

    bitmap是一个十分有用的结构.所谓的Bit-map就是用一个bit位来标记某个元素对应的Value, 而Key即是该元素.由于采用了Bit为单位来存储数据,因此在存储空间方面,可以大大节省. 适用 ...

  3. POJ 3159 Candies (栈优化spfa)

    Candies 题目链接: http://acm.hust.edu.cn/vjudge/contest/122685#problem/J Description During the kinderga ...

  4. [iOS UI进阶 - 6.2] 核心动画CoreAnimation 练习代码

    A.基本用法 1.CABasicAnimation // // ViewController.m // CoreAnimationTest // // Created by hellovoidworl ...

  5. UVaLive 6625 Diagrams & Tableaux (状压DP 或者 DFS暴力)

    题意:给一个的格子图,有 n 行单元格,每行有a[i]个格子,要求往格子中填1~m的数字,要求每个数字大于等于左边的数字,大于上边的数字,问有多少种填充方法. 析:感觉像个DP,但是不会啊...就想暴 ...

  6. Oracle & Sun

    2010s January 27, 2010: Oracle acquires Sun Microsystems.

  7. 【JDBC】事务的使用

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/5868750.html 关于事务的理论知识.ACID特性等等,网上太多了,在此不一一重复.本文主要着重  事务 ...

  8. Cygwin解决Windows远程登录linux服务器

    下载地址http://www.cygwin.com/install.html 选择mirror.htnshost.com网站下载的比较快. 安装Cygwin(/X)需要选择的包: openssh(必选 ...

  9. Selenium 中使用方法小结

    --> 文本框 中填写 文本信息 basePage.getTXTPortfolio().sendKeys("文本信息"); --> 点击某个 文本框/下拉列表 中的 指 ...

  10. Android ViewPager使用具体解释

    这是谷歌官方给我们提供的一个兼容低版本号安卓设备的软件包,里面包囊了仅仅有在安卓3.0以上能够使用的api.而viewpager就是当中之中的一个利用它,我们能够做非常多事情,从最简单的导航,到页面菜 ...