lyx

  • 嵌入式
  • 运维
  • 笔记
  • 关于
所有文章 友链 关于我

lyx

  • 嵌入式
  • 运维
  • 笔记
  • 关于

Samba服务

2017-03-15

Linux运维笔记(就老男孩运维28期、马哥教育、学神IT、老段带你学Linux、Linux-Cast整理而来)

声明

  • “-“ 后面接的是段落小节标题
  • 笔记按照服务一般配置整理
  • 本文采用软件为 MarkdownPad2进行编辑
  • 本文记录时间 2/27/2017 5:38:32 PM
  • 请将本文ip替换成自己的ip

本文大纲

1.开篇的话
2.Samba服务
3.常见错误解决方案
4.应用场景

1.开篇的话

学习Linux服务的大体流程如下

    了解服务的作用:名称,功能,特点
    安装
    配置文件位置,端口
    服务启动关闭的脚本
    此服务的使用方法
    修改配置文件,实战举例
    排错(从下到上,从内到外)

2.Samba服务

简介

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

软件安装和启动

软件安装
    rpm -ivh /mnt/Packages/samba-3.5.10-114.el6.x86_64.rpm

服务启动
    service smb start 或 /etc/init.d/smb restart

samba 服务配置重新加载
    /etc/init.d/smb   reload

服务加入开机自启
    chkconfig smb on

查看端口
    netstat -antup | grep smb

windows访问samba服务的时候采用如下格式访问
    \\192.168.1.63

Linux访问的时候共享文件夹采用如下格式
    smbclient -L  samba IP    密码为空   这样查看的方式为匿名用户
    smbclient -L  samba IP -U 用户名%密码    以用户名查看samba共享文件
    smbclient //samba共享的绝对路径 -U 用户名%密码

如果登陆出现问题可以尝试清除一下缓存    (windows平台)
    net use * /del                      //显示已建立的远程连接并询问是否确认删除,输入y删除,输入n暂不删除

配置文件解析

配置文件详解:/etc/samba/smb.conf

    1、samba 配置简介
        smb.conf 文件的开头部分为samba 配置简介,告诉我们smb.conf 文件的作用及相关信息。
        smb.conf 中还有以“;”开头,这些都是samba 配置的格式范例,默认是不生效滴,可以通过去掉前面的“;”并加以修改来设置想使用的功能。
        [root@xuegod63 ~]# vim /etc/samba/smb.conf  #搜索分号 ;
        ;       security = domain
        另外#号也是表示注示
    2、Global Settings

        Global Settings 设置为全局变量区域。全局变量就是说我们只要在global 时进行设置,那么该设置项目就是针对所有共享资源生效。这与以后我们学习的很多服务器配置文件相似。


    格式:
    字段=设定值
    下面我们说下[global]常用字段及设置方法:

    1)设置samba 服务器所在工作组或域名
    我们设置samba 服务器的工作组为xuegod.cn
           workgroup = xuegod.cn  #工作组
    2)服务器描述,服务器描述实际上类似于备注信息,
    设置samba 描述信息为“xuegod.cn Samba Server  ”。
            server string = xuegod.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:匿名共享:

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


        [root@xuegod63 Desktop]# mkdir /share
        [root@xuegod63 Desktop]# cp /etc/passwd !$   #复制一个测试文件
        cp /etc/passwd /share

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

        2)重新加载配置
        service smb restart

    例2:通过用户名和密码共享文件。把/sales  共享出去,只有知道用户名和密码的同事可以看这个共享。我们需要将全局配置中security 设置user 安全级别,然后在共享目录设置权限

    注意:一定要先指定存放密码的文件位置:


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

        使用groupadd 命令添加sales 组,然后执行useradd 命令和passwd 命令添加销售部员工的帐号及密码。

        [root@xuegod63 samba]# groupadd sales
        [root@xuegod63 samba]# useradd -g sales sale1
        [root@xuegod63 samba]# useradd -g sales sale2
        [root@xuegod63 samba]# id sale2
        uid=501(sale2) gid=500(sales) groups=500(sales)
        [root@xuegod63 samba]#

        接下来为销售部成员添加相应samba 帐号
        [root@xuegod63 samba]# smbpasswd -a sale1
        New SMB password:
        Retype new SMB password:
        startsmbfilepwent_internal: file /etc/samba/smbpasswd did not exist. File successfully created.
        Added user sale1.
        [root@xuegod63 samba]# ls /etc/samba/smbpasswd
        /etc/samba/smbpasswd
        [root@xuegod63 samba]# cat !$
        cat /etc/samba/smbpasswd
                sale1:500:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:32ED87BDB5FDC5E9CBA88547376818D4:[U          ]:LCT-545E2105:
        [root@xuegod63 samba]# smbpasswd -a sale2
        New SMB password:
        Retype new SMB password:
        Added user sale2.

    2)修改samba 主配置文件smb.conf
        passdb backend = smbpasswd
        smb passwd file = /etc/samba/smbpasswd

例3: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=cnt01/njpublic,passwd='Welcome123' //10.60.1.14/Files-Temporary-Transfer /mnt/

    注意挂载的格式:
    密码要 写在‘’ 里面,
    挂载的目录要写到上一级,//ip/共享文件夹

3.常见错误解决方案

第一种问题

第二种问题

4.应用场景

1)文件和打印机贡献
文件和打印机共享是Samba 的主要功能,SMB 进程实现资源共享,将文件和打印机发布到网络之中,以供用户可以访问。

2)身份验证和权限设置
smbd 服务支持user mode 和domain mode 等身份验证和权限设置模式,

赏

谢谢你请我吃糖果

支付宝
微信
  • CentOS6.8
  • Samba服务
  • oldLinux

扫一扫,分享到微信

微信分享二维码
FTP服务
NFS服务
© 2017 lyx
Hexo Theme Yilia by Litten
  • 所有文章
  • 友链
  • 关于我

tag:

  • CentOS6.8
  • SSH服务
  • DHCP服务
  • 自动化部署
  • 互联网资源
  • IT
  • 运维
  • Linux
  • RSYNC服务
  • NTP服务
  • Postfix服务
  • DNS服务
  • NFS服务
  • Samba服务
  • FTP服务
  • Apache服务
  • CentOS7
  • Dokcer
  • Gitlab
  • 源码安装
  • Hadoop
  • 集群
  • Centos6.8
  • 文件共享
  • Haproxy
  • 存储系统
  • 高可用
  • 负载均衡
  • 编程
  • 程序员
  • LAMP
  • LNMP
  • WEB服务器
  • 博客
  • 编译
  • 内核
  • Linux命令
  • Linux基础
  • 笔记
  • 分布式系统
  • NFS
  • 认证服务
  • NIS
  • Nagios
  • 监控
  • 存储
  • RAID
  • WEB架构
  • 远程连接
  • SSH
  • Zabbix
  • 自动化
  • saltstack
  • cobbler
  • Centos7
  • ELKstack
  • Elasticsearch
  • Logstash
  • Heartbeat
  • MySQL
  • Nginx
  • puppet
  • markdown
  • 跨平台
  • Linux服务
  • 大学
  • 版权声明
  • STM32
  • 嵌入式
  • 邮件服务
  • 汉化
  • 网卡错误
  • 虚拟机
  • 分布式存储
  • Corosync
  • Pacemaker
  • DRBD
  • MooseFS

    缺失模块。
    1、在博客根目录(注意不是yilia根目录)执行以下命令:
    npm i hexo-generator-json-content --save

    2、在根目录_config.yml里添加配置:

      jsonContent:
        meta: false
        pages: false
        posts:
          title: true
          date: true
          path: true
          text: true
          raw: false
          content: false
          slug: false
          updated: false
          comments: false
          link: false
          permalink: false
          excerpt: false
          categories: false
          tags: true
    

  • 阿里云
  • 鸿鹄论坛
  • 百度云搜索
  • Github搜索
  • PDF转换软件
  • TI公司WEBENCH
  • powershell教程
  • 七牛云
  • 有道云笔记
  • HTML5
  • 小马运维博客
  • 运维知识体系架构图
  • 云栖社区
  • ChinaUnix
<br>热爱技术<br>热爱开源<br> 2017年<br>