zoukankan      html  css  js  c++  java
  • Samba服务

    Samba服务概述:
    Samba 最先在Linux 和Windows 两个平台之间架起了一座桥梁,正是由于Samba 的出现,我们可以在Linux 系统和Windows 系统之间互相通信,比如拷贝文件、实现不同操作系统之间的资源共享等等,我们可以将其架设成一个功能非常强大的文件服务器,也可以将其架设成打印服务器提供本地和远程联机打印。

    Samba 应用环境:
    文件和打印机共享:文件和打印机共享是Samba 的主要功能,SMB 进程实现资源共享,将文件和打印机发布到网络之中,以供用户可以访问。
    身份验证和权限设置:smbd 服务支持user mode 和domain mode 等身份验证和权限设置模式,
    通过加密方式可以保护共享的文件和打印机。

    端口号: 139 和 445
    在早期,SMB 运行于NBT 协议(NetBIOS over TCP/IP)上,使用UDP 协议的137、138 及TCP 协议的139 端口。
    NetBIOS是Network Basic Input/Output System的简称,网络基本输入/输出系统协议。协议,一般指用于局域网通信的一套API,是由IBM公司开发。主要作用:通过NETBIOS协议获得计算机名称,然后把计算机名解析为对应IP地址。
    安装Samba

    yum install samba samba-client -y
    #  samba 包为Samba 服务的主程序包 
    # samba-client 为Samba 的客户端工具,是连接服务器和连接网上邻居的客户端工具并包含其测试工具

    配置文件:

    /etc/samba/smb.conf

    服务启动和关闭
    1)samba 服务的启动

    service smb start 或 /etc/init.d/smb restart

    4)samba 服务配置重新加载

    #如果当前服务正在运行,不重启服务,加载配置文件。
     /etc/init.d/smb   reload

    5)开机自动加载samba 服务

    chkconfig smb on  

    查看端口:

    netstat -antup | grep smb
    tcp        0      0 :::139            :::*             LISTEN      3086/smbd           
    tcp        0      0 :::445                      :::*          LISTEN      3086/smbd     
    

    此服务的使用方法
    windows访问:
    windows+R ,打开一个运行窗口

    这里写图片描述
    输入:\172.100.0.229
    同windows 访问共享文件一样。

    Linux访问:

     smbclient -L  samba IP
     例:
     smbclient -L 172.100.0.229 
    Enter root's password:  #密码为空,直接回车

    配置文件详解:
    1、samba 配置简介
    smb.conf 文件的开头部分为samba 配置简介,告诉我们smb.conf 文件的作用及相关信息。
    smb.conf 中还有以“;”开头,这些都是samba 配置的格式范例,默认是不生效滴,可以通过去掉前面的“;”并加以修改来设置想使用的功能。

    vim /etc/samba/smb.conf 
    
    #Global Settings
         Global Settings 设置为全局变量区域。全局变量就是说我们只要在global 时进行设置,那么该设置项目就是针对所有共享资源生效。这与以后我们学习的很多服务器配置文件相似。
    
    格式:
    字段=设定值
    下面我们说下[global]常用字段及设置方法:
    1)设置samba 服务器所在工作组或域名
    我们设置samba 服务器的工作组为xuegod.cn
           workgroup = test.cn  #工作组
    2)服务器描述,服务器描述实际上类似于备注信息,
    设置samba 描述信息为“xuegod.cn Samba Server  ”。
            server string = test.cn Samba Server  #samba服务器描述
    3)设置samba 服务器安全模式。常见模式有两种:share 安全级别模式和user 安全级别模式
    samba 服务器有share、user、server、domain 和AD活动目录 五种安全模式。 
    (1)share 安全级别模式
    客户端登录samba 服务器,不需要输入用户名和密码就可以浏览samba 服务器的资源,适用于公
    共的共享资源,安全性差,需要配合其他权限设置,保证samba 服务器的安全性。
    (2)user 安全级别模式
    客户端登录samba 服务器,需要提交合法帐号和密码,经过服务器验证才可以访问共享资源,服务器默认为此级别模式。
    4、Share Definitions 共享服务的定义
    [homes]为特殊共享目录,表示用户主目录。
    [printers]表示共享打印机。
    
    

    Samba 常规服务器配置
    基本的Samba服务器的搭建流程主要分为四个步骤:
    [1]、编辑主配置文件smb.conf,指定需要共享的目录,并为共享目录设置共享权限。
    [2]、在smb.conf 文件中指定日志文件名称和存放路径。
    [3]、设置共享目录的本地系统权限及samba共享权限。
    [4]、重新加载配置文件或重新启动smb 服务,使用配置生效

    配置一个共享资源:

    [share]  #设置共享名
            comment = Home Directories  #描述
            browseable = yes   #是否允许查看此共享内容 。如果是否,后期通过绝对路径,可以查看到。
    path = /share      #共享路径,写绝对路径
    public = yes  #允许匿名查看 
    readonly = yes

    5)设置访问用户
    如果共享资源存在重要数据的话,需要对访问用户审核,我们可以使用valid users 字段进行设

    格式:

    valid users = 用户名
    valid users = @组名

    6)设置目录只读
    共享目录如果限制用户的读写操作,我们可以通过readonly 实现哈~
    格式:

    readonly = yes #只读
    readonly = no #读写

    7)设置目录可写
    如果共享目录允许用户写操作,可以使用writable 或write list 两个字段进行设置

    writable 格式:
    writable = yes #读写
    writable = no #只读
    write list 格式:
    write list = 用户名
    write list = @组名

    Samba 服务日志文件
    在/etc/samba/smb.conf 文件中,log file 为设置samba 日志的字段。

    修改配置文件
    例1:匿名共享:
    公司现在用一个工作组test.cn, 需要添加samba 服务器作为文件服务器,并发布共享目
    录/share,共享名为public,这个共享目录允许所有公司员工访问。

    mkdir /share
    cp /etc/passwd /share   #复制一个测试文件
    
    vim /etc/samba/smb.conf
        [global]
               workgroup = test.cn  #工作组
                server string = test.cn Samba Server  #samba服务器描述
        security = share   # 允许匿名访问
        ============================ Share Definitions ====
        [share]  #设置共享名
                comment = Home Directories  #描述
        path = /share      #共享路径,写绝对路径
        public = yes  #允许匿名查看 

    2)重新加载配置

    service smb restart

    设置权限
    注意:一定要先指定存放密码的文件位置:
    修改samba 主配置文件smb.conf
    改:

    passdb backend = tdbsam
    为:
            passdb backend = smbpasswd
            smb passwd file = /etc/samba/smbpasswd

    添加销售部用户和组并添加相应samba 帐号

    // 使用groupadd 命令添加sales 组,然后执行useradd 命令和passwd 命     令添加销售部员工的帐号及密码。
     groupadd sales
    useradd -g sales sale1
    useradd -g sales sale2
    // 接下来为销售部成员添加相应samba 帐号
    smbpasswd -a sale1
    # 根据提示输入密码

    修改samba 主配置文件smb.conf
    设置目录:
    vim /etc/samba/smb.conf

    # ----------------------- Standalone Server Options ------------------------
    #
    # security = the mode Samba runs in. This can be set to user, share
    # (deprecated), or server (deprecated).
    #
    # passdb backend = the backend used to store user information in. New
    # installations should use either tdbsam or ldapsam. No additional configuration
    # is required for tdbsam. The "smbpasswd" utility is available for backwards
    # compatibility.
    #
    // 设置user 安全级别模式
    
            security = user
            passdb backend = tdbsam
    
    
    # ----------------------- Domain Members Options ------------------------
    #============================ Share Definitions ==============================
    //添加销售部用户
    [sales]
            comment = sales data
            path = /sales
            valid usrs = @sales
            writable = yes
    

    客户端访问控制

    hosts allow # 字段定义允许访问的客户端
    hosts deny #字段定义禁止访问的客户端

    linux 访问Windows 共享文件的方法
    1、安装Samba服务

     yum install samba samba-client samba-swat

    2、启动Samba服务器

     /etc/init.d/smb restart

    3、安装cifs-utils,解决只读挂载

    yum install cifs-utils.x86_64

    4、把Windows共享文件夹挂载到linux 目录下

    mount -t cifs -o username=admin,passwd='123456' //172.100.0.229/PerfLogs /media/
    
    # 注意挂载的格式:
    # 密码要 写在‘’ 里面,
    # 挂载的目录要写到上一级,//ip/共享文件夹
  • 相关阅读:
    数组练习1
    学习进度04
    求一个数组的最大子数组之和02
    求一个数组的最大子数组之和01
    学习进度03
    四则运算的功能添加版02
    第二周学习进度
    Right-BICEP 测试四则运算程序
    实现四则运算的功能添加版01
    本周实验PSP0 过程文档
  • 原文地址:https://www.cnblogs.com/flyhgx/p/6367971.html
Copyright © 2011-2022 走看看