Samba简介

Samba官网:http://www.samba.org
SMB(Server Messages
Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS
over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。

启动服务:# /etc/rc.d/init.d/smb start

Samba有两个守护进程:smbd和nmbd
1.smbd监听139TCP端口      
smbd进程的作用是处理SMB请求包,负责用户验证和文件共享;
2.nmbd监听137和138UDP端口 
nmbd进程的作用是处理浏览共享和计算机名称解析;

一、查看samba服务状态
    # rpm -qa | grep samba
   
samba-common-3.0.33-3.39.el5_8 --------> 这个是samba通用配置包;
   
samba-3.0.33-3.39.el5_8 ---------------> 这个是samba主服务包,如果没有需要安装上;
   
samba-client-3.0.33-3.39.el5_8 --------> 这个是samba客户端工具包;

二、安装samba主服务
    # yum install -y samba

三、查找samba配置文件所在目录
    # rpm -ql samba-common | grep smb.conf
   
/etc/samba/smb.conf ---------------------------------> 配置文件
   
/usr/share/man/man5/smb.conf.5.gz

或:
    # rpm -qc samba-common
    /etc/samba/lmhosts
   
/etc/samba/smb.conf ---------------------------------> 配置文件
   
/etc/security/pam_winbind.conf

或:
    # find /etc/ -name smb*
   
/etc/gnome-vfs-2.0/modules/smb-module.conf
    /etc/rc.d/init.d/smb
--------------------------------> 启动脚本
    /etc/samba/smb.conf
---------------------------------> 配置文件
    /etc/samba/smbusers

四、配置smb.conf文件
    # cp /etc/samba/smb.conf /etc/samba/BAK.smb.conf 
先备份
    # vi /etc/samba/smb.conf                          编辑

1.配置文件主要结构:

[global]     设置全局环境选项

# ----------------------- Network Related Options
-------------------------
          # 工作组或域:
          workgroup =
MYGROUP

# Samba服务器描述:
          server string = Samba Server Version
%v
       
          # netbios名称:
          ; netbios name =
MYSERVER

# 指定使用的网络接口卡
          ; interfaces = lo eth0 192.168.12.2/24
192.168.13.2/24

# 允许访问的IP网段列表(★允许优先):
          ; hosts allow = 127. 192.168.12.
192.168.13.
 
          # 禁止访问的IP网段列表(★允许优先):
          ; host deny =
192.168.190 
          注:此处如果某IP段被同时指定了允许和禁止,则最终结果“很违背常规”,是允许优先。

# --------------------------- Logging Options
-----------------------------
          # 按每服务器模式切割日志文件
          # logs
split per machine

# 指定日志文件位置:
          log file = /var/log/samba/%m.log

# 指定每个日志文件最大字节数
          # max 50KB per log file, then
rotate

# 日志文件最多占用空间:
          max log size = 50

#============================ Share Definitions
==============================

[homes]      设置用户宿主目录共享(如果不需要用户通过smb访问自己的宿主目录,将此区块整体注释掉即可;;;)

[printers]   设置打印机共享(通常不用,将此区块整体注释掉即可;;;)

2.【实验】添加我的共享目录:
     可参考[homes]区块,在配置文件的末尾添加共享目录区块配置信息:

####################### 设置我的共享目录 ##########################

[wwwroot]
     # 指定我的共享目录描述
     comment = wwwroot directory

# 指定共享目录路径
     path = /wwwroot

# 设置共享目录对所有用户是否可见:
     browseable = yes

# 设置共享目录是否可写权限(取与Linux系统对目录权限的交集!逻辑and)
     writable = yes

# 设置有效访问用户(多个用户空格分开,%S 表示匹配所有用户)
     valid users = martin jack

###################################################################

3.检查配置文件有无语法错误:
    # testparm

五、查找smb服务启动脚本 并启动之
    1.查找smb服务启动脚本
      # find /etc/ -name
smb
      /etc/rc.d/init.d/smb ------------------------> 启动脚本

或:
      # rpm -ql samba | grep smb
      /etc/rc.d/init.d/smb
------------------------> 启动脚本
      /etc/samba/smbusers
     
/usr/bin/mksmbpasswd.sh
      /usr/bin/smbcontrol
     
/usr/bin/smbstatus

2.启动SMB服务:
      # /etc/rc.d/init.d/smb start
      或:
      #
service smb start

3.设置开机自启动:
      # chkconfig --levels 235 smb on

六、添加smb用户【必须是系统中已存在的用户,假如系统中已经有了一个名为martin的用户】,并设置密码
    # smbpasswd
-a martin
    New SMB password:
    Retype new SMB password:

主要选项解析:
    -a  add user     表示添加SMB用户
    -d  disable user
表示禁用SMB用户
    -e  enable user  表示开启SMB用用户
    -x  delete user 
表示删除SMB用户

注:不加任何参数表示修改现已有SMB用户的密码

七、windows客户端登录:\\192.168.1.xxx

八、无法登录或无法访问故障排除:
    1.如果SELinux阻止了访问:

首先查找过滤SELinux关于samba的策略选项:
      # setsebool -a | grep samba

找到了samba_enable_home_dirs这项,将启设置为on即可:
      # setsebool -P
samba_enable_home_dirs on
      # chcon -t samba_share_t /wwwroot/

2.如果防火墙阻止了访问,先行关闭:
      # iptables -F

3.如果可以登录却无写权限(假如对用户martin):
      # setfacl -m u:martin:rwx -R
/wwwroot/
      # setfacl -m d:u:martin:rwx -R /wwwroot/

4.【可选】为防止用户删除他人的数据文件,也可对共享目录设置粘着位权限
       # chmod o+t /wwwroot/
       # chmod 1775 /wwwroot/

取消粘着位权限:
       # chmod o-t /wwwroot/
       # chmod 0775 /wwwroot/

九、从服务端查看当前所有登录用户信息:
    # smbstatus
    Samba version
3.0.33-3.39.el5_8
    PID     Username      Group        
Machine                       
   
-------------------------------------------------------------------
   
23427   martin        martin        pc           (192.168.10.1)

查看samba的日志记录:
    # cat /var/log/samba/log.smbd

十、清除windows本地会话

方法1: Win7系统找到: 控制面板 -> 用户帐户和家庭安全 -> 凭据管理器
               选择对应的凭据,然后点击“从保管库中删除”

方法2: 开始 -> 运行cmd命令:
              查看所有会话: > net use
              清除所有会话: > net use * /delete /y
              注:* 表示所有会话

Samba安装配置的更多相关文章

  1. 03_ubuntu samba 安装配置

    03_ubuntu samba 安装配置 安装samba sudo apt install samba 修改samba配置文件 sudo vim /etc/samba/smb.conf [share] ...

  2. LDAP + Samba 安装配置流程

    LDAP + Samba 安装配置 基础环境:Ubuntu18.04 安装samba root@cky:~# apt install samba smbldap-tools -y 查看版本 root@ ...

  3. Ubantu 16.4 samba安装配置

    本文总结了Ubantu 16.04 环境下的samba安装.配置及使用.本文为原创,也是我的第一篇博客,以后会经常写博客,记录自己的学习.总结及研究,让博客见证着我成长的轨迹. 下文中的所有命令均使用 ...

  4. Y1S001 ubuntu下samba安装配置以及使用vbs映射到驱动器

    我这边安装samba只用了两步 第一步 sudo apt-get install samba 第二步 sudo vi /etc/samba/smb.conf 主要修改点如下,去掉注释或者修改=右边的值 ...

  5. redhat samba安装配置

    突然想要用,好久没配过这玩意了,再次配置一次,记录一下过程. 1.挂载镜像      mount -o loop ~/Desktop/RHEL_5.5\ i386\ DV.iso /mnt       ...

  6. 【转】centos 6.4 samba 安装配置

    关掉防火墙     service iptables stop  chkconfig iptables off (永久关闭防火墙) 关闭SELinux vi /etc/sysconfig/selinu ...

  7. [转载]CentOS 7安装配置Samba服务器

    假设我们有这样一个场景 共享名路径权限SHAREDOC/smb/docs所有人员包括来宾均可以访问RDDOCS/smb/tech仅允许特定组的用户进行读写访问 特定组的组名为RD,目前的Alice.J ...

  8. CentOS 7.2 安装配置Samba服务器

    1背景 转Linux刚刚1年,vim操作还不能应对工程代码,之前一直都是Gnome桌面 + Clion 作开发环境,无奈在服务器上没有这样的环境, 看同事是(Windows)Source Insigh ...

  9. centOS下yum安装配置samba

     centOS下yum安装配置samba 2010-03-29 15:46:00 标签:samba yum centOS 安装 休闲 注意:本文的原则是只将文件共享应用于内网服务器,并让将要被共享的目 ...

随机推荐

  1. linux使用secureCRT连接(没有rsa的时候)

    一台linux新机器,怎么使用secureCRT连接呢??? 首先  vim   /etc/sysconfig/network-scripts/ifcfg-eth0 把BOOTPROTO=none I ...

  2. 重载Python FTP_TLS 实现Implicit FTP Over TLS方式下载文件

    对于Python2.7来说,内置的FTP_TLS类并不支持Implicit FTP Over TLS加密方式的FTP Server操作,为支持Implicit FTP Over TLS加密方式,必须重 ...

  3. Python基础语法,基本数据类型及相关操作

    ---恢复内容开始--- python文件 文件开头要有  #!/usr/bin/ python        --在linux中是告诉系统phthon的路径是在/usr/bin/ python目录下 ...

  4. Redis(一) 介绍

    先说明下,本人是在windows系统下用的. 简单介绍一下,是nosql数据库,采用key-value存储方式形式.可用于处理高并发日志.维护top表等. 如果把它完全当初数据库使用,当做小型数据库还 ...

  5. ios 逆向收录

    lldb 远程调试环境搭建:http://www.cnblogs.com/csutanyu/p/3653252.html

  6. LogBack,升级版的log4J

    <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE log4j:configuration SYS ...

  7. Android开发-mac上使用三星S3做真机调试

    之前一直未使用真机进行Android开发,为准备明天的培训,拿出淘汰下来的s3准备环境,竟然发现无法连接mac,度娘一番找到答案,如下:mac 系统开发android,真机调试解决方案(无数的坑之后吐 ...

  8. Use filter in outlook2013

    1. 条件与条件间用分号隔开 2. search带附件的邮件:hasattachments:yes

  9. Flavors

    Flavors¶ Flavor interface. class novaclient.v1_1.flavors.Flavor(manager, info, loaded=False) Bases: ...

  10. xfce4 启用回收站

    Userspace virtual filesystem implemented as a pluggable module for gio # pacman -S gvfs