组成Samba运行的有两个服务,一个是SMB,另一个是NMB;SMB是Samba 的核心启动服务,主要负责建立Samba服务器与Samba客户机之间的对话,验证用户身份并提供对文件和打印系统的访问,只有SMB服务启动,才能实现文件的共享,监听139 TCP端口;而NMB服务是负责解析用的,类似与DNS实现的功能,NMB可以把Linux系统共享的工作组名称与其IP对应起来,如果NMB服务没有启动,就只能通过IP来访问共享文件,监听137和138 UDP端口。
Samba服务器可实现如下功能:
A、WINS和DNS服务;
B、网络浏览服务;
C、Linux和Windows域之间的认证和授权;
D、UNICODE字符集和域名映射;
E、满足CIFS协议的UNIX共享等。
Samba服务配置主要是指/etc/samba/smb.conf文件的配置。一般情况下,公司或企业主要分三种情况,即:
1、公共匿名类共享目录的配置(即匿名账户访问共同的目录或者文件);
A、配置文件:
[root@samba ~]# vi /etc/samba/smb.conf
在文件中添加或者修改相关代码:
workgroup = WORKGROUP //定义工作组,也就是windows中的工作组概念
server string = Lmz Samba Server Version %v //定义Samba服务器的简要说明
netbios name = LmzSamba
log file = /var/log/samba/log.%m //定义Samba用户的日志文件,%m代表客户端主机名
//Samba服务器会在指定的目录中为每个登陆主机建立不同的日志文件

security = share //共享级别,用户不需要账号和密码即可访问

[public] //设置针对的是共享目录个别的设置,只对当前的共享资源起作用
comment = Public Stuff //对共享目录的说明文件,自己可以定义说明信息
path = /share //用来指定共享的目录,必选项
public = yes //所有人可查看,等效于guest ok = yes
B、建立共享目录:
[root@samba /]# mkdir share
[root@samba /]# cd share
为/share目录给匿名用户授权为nobody权限:
[root@samba /]# chown -R nobody:nobody share/
C、重启smb服务:
[root@samba /]# /etc/init.d/smb restart
Shutting down SMB services: [ OK ]
Starting SMB services: [ OK ]
[root@samba /]# /etc/init.d/nmb restart
Shutting down NMB services: [FAILED]
Starting NMB services: [ OK ]
D、测试smb.conf配置是否正确:
[root@samba /]# testparm
E、访问Samba服务器的共享文件:
[root@samba /]# smbclient //127.0.0.1/public
显示结果:
WARNING: The security=share option is deprecated
Enter root's password:
由于是匿名用户,没有设置密码,所以在此直接回车即可:
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.6.9-167.el6_5]
Server not using user level security and no password supplied.
smb: \>
在此输入 ls 命令,回车显示共享目录下的内容:
在此输入 q 命令,退出访问。
F、在windows下访问时共享----->开始---->运行---->输入\\samba服务器IP,回国即可访问共享资源

2、按照权限对目录进行分组(即除公共共享目录外,各组访问各组的文件或目录,以技术部门TS为例);
A、添加TS部组和系统用户,并赋给用户密码:
[root@samba ~]# groupadd ts
[root@samba ~]# useradd -g ts zhangsan //-g 指定用户所属组
[root@samba ~]# useradd -g ts lisi
设置lisi的密码:
[root@samba ~]# passwd lisi
显示结果:
Changing password for user lisi.
New password:
在此输入密码:123456,回车:
BAD PASSWORD: it is too short
BAD PASSWORD: is too simple
Retype new password:
再次输入密码:123456,回车:
passwd: all authentication tokens updated successfully.
设置zhangsan的密码:
[root@samba ~]# passwd zhangsan
显示结果:
Changing password for user zhangsan.
New password:
在此输入密码:123456,回车:
BAD PASSWORD: it is too short
BAD PASSWORD: is too simple
Retype new password:
再次输入密码:123456,回车:
passwd: all authentication tokens updated successfully.
B、在根目录下建立/ts 文件夹:
[root@samba ~]# cd /
[root@samba /]# mkdir ts
C、将建立的两个帐户(lisi、zhangsan)添加到samba的账户中:
[root@samba ~]# smbpasswd -a zhangsan //-a 即add添加samba账户
New SMB password:
Retype new SMB password:
Added user zhangsan.
[root@samba ~]# smbpasswd -a lisi
New SMB password:
Retype new SMB password:
Added user lisi.
D、修改主配置文件如下:
[root@samba ~]# vi /etc/samba/smb.conf
修改security:
security = user //用户级别,需要账号和密码才可访问
添加信息:
[ts]
comment = TS
path = /ts //指定TS组的目录
valid users = @ts //该组用户访问samba服务器上的资源时,读取ts的配置文件,找到相应的目录。
E、重新加载samba服务:
[root@samba ~]# service smb reload
显示结果:
Reloading smb.conf file: [ OK ]
F、访问方式同上,需要输入用户名和密码才可访问。

3、共享目录下的不同目录进行分组。
需求:1. 在系统分区时单独分一个Company的区,在该区下有以下几个文件夹:HR、FM和Share。在Share下又有以下几个文件夹:HR、FM和Tools。
   2. 各部门对应的文件夹由各部门自己管理,Tools文件夹由管理员维护。
         3. HR管理员账号:hradmin;普通用户账号:hruser。FM管理员账号:fmadmin;普通用户账号:fmuser。
A、新建系统用户及密码,并设置SMB账户及密码:
添加系统用户:
[root@samba ~]# useradd -s /sbin/nologin hradmin //-s 指定登录使用的shell,nologin禁止使用该系统账号来登录系统(linux或unix系统)
//
从root切换过去时,遇到下面提示:This account is currently not available.

//使用/bin/bash切换过去就可以了[root@samba ~]$ su --shell=/bin/bash hruser #回车,就切换到hruser用户了。
[root@samba ~]# useradd -g hradmin -s /sbin/nologin hruser
[root@samba ~]# useradd -s /sbin/nologin fmadmin
[root@samba ~]# useradd -g hradmin -s /sbin/nologin fmuser
[root@samba ~]# useradd -s /sbin/nologin admin
设置SMB账户及密码(同上):
[root@samba ~]# smbpasswd -a hradmin
New SMB password:
Retype new SMB password:
Added user hradmin.
[root@samba ~]# smbpasswd -a hruser
New SMB password:
Retype new SMB password:
Added user hruser.
[root@samba ~]# smbpasswd -a fmadmin
New SMB password:
Retype new SMB password:
Added user fmadmin.
[root@samba ~]# smbpasswd -a fmuser
New SMB password:
Retype new SMB password:
Added user fmuser.
[root@samba ~]# smbpasswd -a admin
New SMB password:
Retype new SMB password:
Added user admin.
B、新建目录:
[root@samba /]# mkdir company
[root@samba /]# cd company
[root@samba company]# mkdir HR FM Share
[root@samba company]# cd Share
[root@samba Share]# mkdir HR FM Tools
C、更改目录属性:
[root@samba company]# chown hradmin.hradmin HR
[root@samba company]# chown fmadmin.fmadmin FM
[root@samba company]# chown admin.admin Share
[root@samba company]# cd Share
[root@samba Share]# chown hradmin.hradmin HR
[root@samba Share]# chown fmadmin.fmadmin FM
[root@samba Share]# chown admin.admin Tools
[root@samba Share]# chmod 1775 HR FM
D、修改主配置文件如下:
security = user
passdb backend = tdbsam
[HR]
comment = This is a directory of HR.
path = /company/HR/
public = no
admin users = hradmin
valid users = @hradmin
writable = yes
create mask = 0750
directory mask = 0750
[FM]
comment = This is a directory of FM.
path = /company/FM/
public = no
admin users = fmadmin
valid users = @fmadmin
writable = yes
create mask = 0750
directory mask = 0750
[Share]
comment = This is a share directory.
path = /company/Share/
public = no
valid users = admin,@hradmin,@fmadmin
writable = yes
create mask = 0755
directory mask = 0755
E、重新启动samba服务:
[root@samba Share]# /etc/init.d/smb restart
[root@samba Share]# /etc/init.d/nmb restart
4、设置网络映射驱动器,可以在计算中添加一个类似盘符文件夹,这样就比较

samba服务器详细配置(非域模式)的更多相关文章

  1. Nginx服务器中配置非80端口的端口转发方法详解

    这篇文章主要介绍了Nginx服务器中配置非80端口的端口转发方法详解,文中使用到了Nginx中的proxy_pass配置项,需要的朋友可以参考下 nginx可以很方便的配置成反向代理服务器: 1 2 ...

  2. ubuntu samba服务器多用户配置【转】

    转自:http://www.2cto.com/os/201204/127043.html ubuntu samba服务器多用户配置   在/home/下有多个用户目录A.B...,现通过samba共享 ...

  3. SQL Server 远程链接服务器详细配置

    原文:SQL Server 远程链接服务器详细配置[转载] http://hi.baidu.com/luxi0194/blog/item/a5c2a9128a705cc6c2fd7803.html - ...

  4. linux中Samba服务器的配置

    Samba简介 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件 ...

  5. Ubuntu 18.04安装Samba服务器及配置

    Ubuntu 18.04安装Samba服务器及配置 局域网下使用samba服务在Linux系统与Windows系统直接共享文件是一项很方便的操作.以Ubuntu为例配置samba服务,Linux服务器 ...

  6. Samba服务器搭建配置

    本次环境: 服务端-centos6.8-192.168.2.200 客户端1-centos6.8-192.168.2.201 客户端2-Windows7-192.168.2.104 假设条件如下: 使 ...

  7. Samba服务器的配置与使用

    1.系统环境变量 Fedora: yum install libacl-devel libblkid-devel gnutls-devel \ readline-devel python-devel ...

  8. Samba文件服务器详细配置步骤

    准备安装 环境:CentOS 6.3_x64bit 安装:Minimal(最小) 1.配置IP地址 2.挂载:[root@localhost ~]# mount -t iso9660 /dev/cdr ...

  9. centos6.5下安装samba服务器与配置

    转自:http://www.centoscn.com/CentosServer/ftp/2014/1023/3989.html http://www.cnblogs.com/x_wukong/p/56 ...

随机推荐

  1. Ajax&XMLHttpRequest

    XMLHttpRequest 简单省力的方法 将文件编码成base64通过Ajax上传 HTML5学习之FileReader接口 HTML5学习之FileReader接口 通过Ajax方式上传文件,使 ...

  2. js字符串转json

    1,eval方式解析,这是最早的解析方式了.如下: 代码如下: function strToJson(str){ var json = eval('(' + str + ')'); return js ...

  3. javaScrip中的“?”

    例如window.location.href="./user/userUpdate?id="+id; 在这里“?”是传入参数或是带个参数id,这样就可以获得到主键了. String ...

  4. Swift 流程控制

    import Foundation ...{ == { print(index) } } // 可选变量 类型后面加? var myName:String?="jikexueyuan&quo ...

  5. C#double保留两位小数

    public static void Main(string[] args) { double db = Math.PI; db = Math.Round(db,); Console.WriteLin ...

  6. ionic开发ios app

    注意必须是mac系统 1. 首先要安装node环境,Ionic的安装和后续的许多前端工具的安装都依赖于node的包管理器npm. nodeJs环境的安装很简单,去官网下载最新版的NodeJs直接安装即 ...

  7. Guava API学习之Preconditions优雅的检验参数 编辑

    在日常开发中,我们经常会对方法的输入参数做一些数据格式上的验证,以便保证方法能够按照正常流程执行下去.对于可预知的一些数据上的错误,我们一定要做 事前检测和判断,来避免程序流程出错,而不是完全通过错误 ...

  8. 在git bush中如何退出vim编辑器

    写npm的pakege.json文件的files配置时,如果有不想包含的文件,那就要创建.npmignore文件排除,但windows系统又不允许创建以点开头命名的文件,咋办? 这时候就要用到linu ...

  9. [Mugeda HTML5技术教程之10]发布内容

    动画作品制作好后,就要拿来使用,怎么发布到想要的位置也是动画制作者比较关心的问题.这一节,我们讲述怎样将制作好的动画内容发布到想要的地方.对制作好的内容,可能的使用场景主要有以下三种:直接导出:发布到 ...

  10. python django学习资料网站

    python module 模块 https://docs.python.org/2.7/py-modindex.html django框架例子 https://docs.djangoproject. ...