////////////////////////////////Samba////////////////////////////////////////////

小常识:
在同一局域网中,两个系统的工作组名称相同,便是处于同一WorkGroup
你可以右键计算机属性,选择高级系统设置,点击计算机名,点击更改。
确认工作组名称相同即可

smb.conf 主配置文件
lmhosts 对应NetBIOS name和主机名称的IP地址,作用类似于/etc/hosts

开放端口时137.138.139端口

CIFS(Comment Internet File System ,可以理解成是网上邻居)

Samba套件的配置文件:
https://www.samba.org/samba/docs/man/manpages/smb.conf.5.html
samba用户密码的几种方式对比:
http://www.cnblogs.com/jary-wang/archive/2013/05/21/3091343.html
samba支持软链接 
https://fengqi.me/unix/152.html
samba中文乱码问题 
http://bbs.chinaunix.net/thread-813206-1-1.html
samba多用户权限划分 
http://blog.csdn.net/w657395940/article/details/20312053

/////////////////////////////////////////////////////////////////////////////////////
目录
一、什么是Samba
二、安装配置Samba
1.安装
2.配置
3.启动服务
4.创建用户名
5.如何使用
6.samba实践

/////////////////////////////////////////////////////////////////////////////////////
Samba的安装、配置以及应用
一、什么是Samba
提供用户登录Samba主机时的身份认证
对Windows网络上的主机名解析(NetBIOS Name-----Network Basic Input/Output System 通信协议)
进行设备的共享(文件/打印机)

二、安装配置Samba
1.安装
yum install -y samba samba-client

2.常见参数:
配置文件 smb.conf

注释符是#
可以使用的语句;
实际都是注释

[global]
workgroup = MYGROUP/WORKGROUP
#用来定义工作组,我们选WORKGROUP
#同一个局域网内,需要有同一个工作组
#因此生产环境中需要弄到同一工作组上
server string = Samba Server Version %v
#这是自定义的
; netbios name = MYSERVER
#主机名称,如果没有设置,默认的NetBIOS会以主机名替代
; interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24
; hosts allow = 127. 192.168.12. 192.168.13.
#用来设置允许的主机,如果在前面加上";",则表示为允许所有主机
log file = /var/log/samba/log.%m
max log size = 50
这是日志切割用的
security = user
# user 这里指定Samba的安全等级,关于安全等级有四种:
# share 用户不需要账户及密码即可登录Samba服务器,创建出来的文件是nobody
# user 由提供服务的Samba服务器负责检查账户及密码(默认是这个)
# server 检查账户及密码的工作由另外一台Windows或者Samba服务器负责
passdb backend = tdbsam
#密码存储的方式,用户的后台
#还有smbpasswd
#以及ldapsam
encrypt password = yes
smb passwd file = /etc/samba/smbpasswd
#加密用的
; dns forwarder = 192.168.0.1
; dns proxy = yes

load printers = yes
cups options = raw
#这两个是打印机用的
; printcap name = /etc/printcap
; printcap name = lpstat

[homes]
comment = Home Directories
这是说明,自定义的
browseable = no
writable = yes
; valid users = %S
; valid users = MYDOMAIN\%S
create mode = 0664
directory mode = 0775

[public]
; comment = Read Only Public
; path = /home/samba
; public = yes
; writable = no
; printable = no
; write list = +staff
valid users = dazuo,@caiwu,@lingdao,network02
#允许访问的用户
#允许访问的group
read list = dazuo,@caiwu
#意味在read list里面的用户(组)只有只读权限,不管有没有read only
read only =yes

%U 当前登陆的用户名

%g 当前登录用户的群组名称

%h 运行Samba的HOSTNAME

%H 代表用户的主目录

%m 代表客户端NetBIOS主机名称

%M 就是HOSTNAME

%L Samba主机的NetBIOS主机名称

%I 代表客户端的IP地址

%T 当前日期时间

%D 当前用户所属组名

%S 取代当前设值的参数值,也就是取代[]里面的内容
the name of the current service, if any.

3.启动服务
service smb start

4.创建用户名
使用smbpasswd:
smbpasswd -a 用户名 #添加一个samba用户
  smbpasswd -d 用户名 #禁用一个samba用户
  smbpasswd -e 用户名 #恢复一个samba用户
  smbpasswd -x 用户名 #删除一个samba用户
#要创建的Samba用户必须是系统用户

早期使用的是这个,现在普及用tdbsam

使用tdbsam:
建立一个用户数据库passdb.tdb
pdbedit -i smbpasswd:/etc/samba/smbpasswd
pdbedit -a username :新建Samba账户
pdbedit -x username :删除Samba账户
pdbedit -L :列出Samba用户列表,读取passdb.tdb数据库文件
pdbedit -Lv :列出Samba用户列表详细信息
pdbedit -c "[D]" -u username :暂停该Samba用户账号
pdbedit -c "[]" -u username :回复Samba用户账号

使用ldapsam :
基于LDAP账户管理方式验证用户,首先要建立LDAP服务,设置"passdb backend = ldapsam:ldap://LDAP Server"
高级一点用这个

5.如何使用
Linux访问Samba共享文件:
a.安装客户端软件 :yum install -y samba-client
b.使用命令smbclient访问:
格式:smbclient //IP/共享名 -U 用户名
如果省略掉-U,则是匿名访问(nobody)
c.把共享文件挂在到本机:
挂载Samba目录:mount -t cifs //192.168.0.22/myshare /mnt/ -o username=user,password=yourpasswd
umount /mnt 取消挂载
可能会bad option 需要安装cifs的包
Windows访问Samba共享文件:
a.在开始--运行处输入:
\\ip\yourpath
b.浏览器输入
file://192.168.0.22/myshare

6.samba实践(均为Peer/peer模型,域模型这里不做介绍)
(1)共享一个目录,使用用户名和密码登陆后才可以访问,要求可以读写

配置如下:
[global] 部分内容如下
workgroup = WORKGROUP
server string = Samba Server Version %u
security = user
passdb backend = tdbsam
load printers = yes
cups options = raw

还需要加入:
[myshare]
comment = share for users
path = /samba
browseable = yes
writable = yes
public = no

创建目录 : mkdir /samba
修改权限 : chmod 777 /samba

创建系统账号:
useradd user1
useradd user2

添加user1/user2为samba账户:
pdbedit -a user1
pdbedit -a user2

重启服务 server smb restart

测试:
浏览器输入 file://192.168.0.22/myshare
或者
smbclient -Uuser1 //192.168.0.22/myshare

(2)samba同时使用匿名和用户登录

配置如下:
[global]
workgroup = WORKGROUP
server string = Samba Server Version %v
log file = /var/log/samba/log.%m
max log size = 50
security = user
passdb backend = tdbsam
load printers = yes
cups options = raw
map to guest = bad user
guest account = nobody
encrypt password = yes
smb passwd file = /etc/samba/smbpasswd

[public]
comment = public
path = /data/pub/public
browseable = yes
guest ok = yes
writable = yes
printable = no
create mask = 0644
directory mask =0755

[project]
comment = project
path = /data/pub/project
browseable = yes
public = no
guest ok = no
writable = yes
force user = root
printable = no
create mask = 0644
directory mask = 0755

注意,需要我们手动创建/data/pub/public 和 /data/pub/project目录,为了顺利完成试验,需要提前修改权限777

(3)samba多用户权限划分
见最上面的链接

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

  1. Ubuntu 环境 samba的安装&配置

    一.samba的安装: sudo apt-get install samba sudo apt-get install smbfs sudo apt-get install cifs-utils (新 ...

  2. VM中 Ubuntu14.04 中Samba的安装配置和使用

    以前都是在Redhat 上搭建samba,现在改成在ubuntu12.04 上搭建发现 sudo /etc/init.d/samba restart  始终不行,原来,现在ubuntu下,启动服务要用 ...

  3. ubuntu samba共享安装 配置

    参考: http://www.360doc.com/content/11/0615/12/3989678_127081905.shtml 参考: http://xfshean.blog.163.com ...

  4. 虚拟机下samba简单安装配置

    系统是Win7 虚拟机是CenterOS6.5 1.关闭防火墙以及关闭SELINUX的强制模式(重要): service iptables stop//关闭防火墙 setenforce 0 //关闭S ...

  5. Ubuntu中Samba的安装配置和使用[图文]

    Samba服务在Ubuntu服务器版本中默认并没有安装. 1. Samba软件包的安装 使用源安装,在终端中输入如下命令: #sudo apt-get install samba#sudo apt-g ...

  6. Ubuntu中Samba的安装配置和使用

    Samba服务在Ubuntu服务器版本中默认并没有安装. 1. Samba软件包的安装 使用源安装,在终端中输入如下命令: #sudo apt-get install samba#sudo apt-g ...

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

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

  8. Samba的安装与配置

    Samba的安装与配置: 准备:关闭其他虚拟设备 #/etc/init.d/libvirtd stop #/etc/init.d/xend stop #chkconfig libvirtd off # ...

  9. centOS下yum安装配置samba

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

随机推荐

  1. LCS/LIS/LCIS 模板总结

    /************************* LCS/LIS/LCIs模板总结: *************************/ /*************************** ...

  2. centos7.3下使用yum 安装pip

    centos下安装pip时失败: No package pip available.Error: Nothing to do 解决方法: 需要先安装扩展源EPEL. EPEL(http://fedor ...

  3. Java 集合框架工具类

    Collections Arrays Collections 集合框架的工具类, 里面的方法都是静态的, 可以直接使用类名调用 常用方法 1. sort(List<T> list); // ...

  4. python基础之类的静态方法和类方法

    一 静态方法 通常情况下,在类中定义的所有函数都是对象的绑定方法,对象再调用绑定方法时会自动将自己作为参数传递给方法的第一个参数.除此之外还有两种常见的方法:静态方法和类方法,二者是为类量身定制的,但 ...

  5. 知乎Live总结-重复nature文章笔记Single-cell

    来自知乎Live-孟浩巍 1.文章重要技术及图讲解 首先在转录组RNA-seq中,有基因表达差异.基因融合.可变剪切.RNA单点突变. 在基因组中,单点变异.结构变异,CNV变异(拷贝数变异) 三类基 ...

  6. Grunt JS构建环境搭建以及使用入门

    Grunt JS构建环境搭建以及使用入门 1.应用场景 一种自动化任务处理工具,对于日常的需求(代码规则检查.代码合并)可以实现自动化执行,只需要保留package.json和Gruntfile.js ...

  7. ES6的十个新特性

    这里只讲 ES6比较突出的特性,因为只能挑出十个,所以其他特性请参考官方文档: /** * Created by zhangsong on 16/5/20. *///    ***********Nu ...

  8. ipv6被拒的解决方法

    A,检测服务器是否支持ipv6连接 用mac 搭建IPv6环境测试,只能测试客户端到mac这段网络正常,但是mac到服务器还是IPv4的,所以没有办法测试服务器的IPv6是否正常.可以用手机打开2)步 ...

  9. Fatal error in launcher: Unable to create process using '"'的报错解决

    执行命令前加python -m就好了 python -m pip install --upgrade pip这条命令用来升级pip

  10. Spark --idea无法new scala class

    问题: 无法新建Scala class 解决: 1.下载插件 setting-->Plugins-->安装scala插件-->提示重启idea-->自动提示你安装scala s ...