Samba服务器工作原理

客户端向Samba服务器发起请求,请求访问共享目录,Samba服务器接收请求,查询smb.conf文件,查看共享目录是否存在,以及来访者的访问权限,如果来访者具有相应的权限,则允许客户端访问,最后将访问过程中系统的信息以及采集的用户访问行为信息存放到日志文件中。

smb.conf配置文件概述

Samba的配置文件一般就放在/etc/samba目录中,主配置文件名为smb.conf,该文件中记录着大量的规则和共享信息,samba服务器的搭建大部分是对该文件进行操作。一般情况下配置文件有3个标准节和若干个用户自定义的共享节组成。其中[global]、[homes]、[printers]为3个标准节。

[global]     节定义samba服务的全局变量

[homes]   节定义共享用户主目录

[ printers]节定义打印机共享

smb.conf文件配置

# ----------------------- Standalone Server Options ------------------------
#
# Scurity can be set to user, share(deprecated) or server(deprecated)
#
# Backend to store user information in. New installations should
# use either tdbsam or ldapsam. smbpasswd is available for backwards
# compatibility. tdbsam requires no further configuration.

security = share
        passdb backend = tdbsam

这一栏中的security默认(user)用户级别,如果是window与虚拟机中的linux共享的话, 设置为share即可。

安全级别解析:

1) share模式:不用进行权限匹配检查即可访问共享资源,安全性比较差;

2) user模式:需要对用户名和密码进行验证,通过后才能访问共享资源,具有一定的安全性;

3) server模式:通过指定的服务器对用户名和密码进行验证,如果不通过,客户端会用user级别访问;

4) domain模式:domain级别的Samba服务器只作为域的成员客户端加入Windows域中,由Windows域控制器来完成对用户名和密码的验证;

5) ads模式:如果Samba服务器以ads方式加入Windows域中,将具备domian级别的所有功能,并且可以完成对用户名和密码的验证工作。

 

1、samba的安装:

sudo apt-get insall samba
sudo apt-get install smbfs

2、 创建共享目录:

sudo chmod 777 /home/phinecos/share

3、创建Samba配置文件:

(a). 保存现有的配置文件

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

(b). 修改现配置文件

sudo gedit /etc/samba/smb.conf
在smb.conf最后添加
[share]
path = /home/phinecos/share  //为共享文件存放的绝对路径(linux中)
available = yes
browsealbe = yes        //设置samba服务器上的共享资源名是否在客户端主机上显示,当该值为"yes"时显示,该值为"no"时不显示</span></span><span style="font-size:14px;">
public = yes
writable = yes     //为"yes"表示可以读写,设置为"no"表示只读</span></span></span>

4、 创建samba帐户

sudo touch /etc/samba/smbpasswd
sudo smbpasswd -a phinecos
 

会要求你输入samba帐户的密码[如果没有第四步,当你登录时会提示 session setup failed NT_STATUS_LOGON_FAILURE]

5、重启samba服务器

sudo /etc/init.d/samba restart
 

6、测试

smbclient -L //localhost/share

7、使用

    可以到windows下输入ip使用了,在文件夹处输入 "\\" + "Ubuntu机器的ip或主机名" + "\\" + "share"

8、将共享目录映射为驱动器

Win+R打开命令行工具,输入start \\192.168.152.132\Work,弹出共享目录图形界面,右键点击共享目录,选择映射网络驱动器即可将目录映射为磁盘,完后点击window桌面后就会发现一个网络磁盘

服务器搭建5 Samba实现文件共享的更多相关文章

  1. 用Centos7搭建小微企业Samba文件共享服务器【转】

    转自 用Centos7搭建小微企业Samba文件共享服务器 - 今日头条(www.toutiao.com)http://www.toutiao.com/i6436937837660078593/ 最近 ...

  2. samba服务器搭建

    为实现windows与linux资源共享,搭建一个samba服务器:这个我也是探索了一段时间. 找到一篇写得比较清楚的博客: http://yangxuejun.blog.51cto.com/6239 ...

  3. L12 samba服务器搭建

    在/data/share目录下建立三个子目录public.training.devel用途如下public目录用于存放公共数据,如公司的规章制度training目录用于存放公司的技术培训资料devel ...

  4. samba 服务器搭建

    为了能在两台机器上共享代码,方便测试不同平台性能和搭建分布式的web server,今天耗费半天时间搭建一个samba服务器共享数据,要求开放写权限,但多次实验均告失败,最终在 鸟哥 的提醒下 检查发 ...

  5. Linux 下 Samba 服务器搭建

    初学,分享 环境和条件--- 虚拟机:VMware虚拟机 系统:Linux ubuntu 4.4.0-31-generic #50~14.04.1-Ubuntu SMP Wed Jul 13 01:0 ...

  6. [原创]CentOS下Radius服务器搭建

    一.   实现环境: 1.系统:CentOS  release  6.6 (Final) 2.需要软件包: 1) freeradius-2.1.12-6.e16.x86_64 freeradius-m ...

  7. LINUX服务器搭建和常用配置介绍

    服务器搭建 : 搭建私有CA服务器 : http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_011_ca.html搭建samba服务器 : h ...

  8. centos7搭建基于SAMBA的网络存储

    学习目标: 通过本实验理解Linux系统下SAMBA服务器和客户端的配置,实现客户机可自动挂载服务端的共享存储. 操作步骤: 1.  SAMBA服务器搭建 2.  SAMBA客户端配置 参考命令:   ...

  9. NFS服务器搭建-共享PC与ARM主板文件

    NFS服务器搭建-共享PC与ARM主板文件 在搭建好交叉编译环境之后需要实现目标板与宿主机的文件共享,在这里选择NFS,由于资料较多.需要注意的以下几点: 目标板与宿主机需要连接在同一个网段内. 宿主 ...

随机推荐

  1. android中巧妙更改spinner、AutoCompleteTextView分割线的颜色值(spinner AutoCompleteTextView divider color)

    这个问题本来是个不大的问题,但是遇到了就会很郁闷,Android控件的api本身就不太够强大,这个小属性找了好久没找到,今天终于解决,分享给所有遇到这个问题的朋友. spinner下拉列表中间有一条黑 ...

  2. iOS linker command failed with exit code 1 (use -v to see invocation)多种解决方案汇总

    有时可能会遇到这种错误,关键是这种错误,有时只有这一句话,也不会给更多错误信息. 网上找了一些,总结了如下:(PS:以下是按照解决简易程度排序,不代表出现概率) 1.bitcode问题 解决如下:原因 ...

  3. lu协程练习

    生产者和消费者问题:当协程调用yield时,从一个悬而未决的resume中返回.简单的协程练习: function receive() local status,value = coroutine.r ...

  4. XP、Windows7下自动关机vbs脚本,使用windows计划任务+vbs脚本在XP、Windows7下实现定时自动关机

    VBScript(Microsoft Visual Basic Script Edition).,微软公司可视化BASIC脚本版). 正如其字面所透露的信息, VBS(VBScript的进一步简写)是 ...

  5. 【Spring】SpringMVC之基于注解的实现SpringMVC+MySQL

    目录结构: contents structure [-] SprinigMVC是什么 SpringMVC工作原理 @Controller和@RequestMapping注解 @Controller注解 ...

  6. Android Studio每日小技巧

    一般的什么快捷键,技巧的文章也有很多.我也看过很多.下面这些事我在来自国外大神发布的:Android Studio Tips of the Day查看到的,而且对于我来说有帮助的及没用过的. Andr ...

  7. Fastjson是一个Java语言编写的高性能功能完善的JSON库。

    简介 Fastjson是一个Java语言编写的高性能功能完善的JSON库. 高性能 fastjson采用独创的算法,将parse的速度提升到极致,超过所有json库,包括曾经号称最快的jackson. ...

  8. ext2文件系统 - mke2fs

      上一遍博文的重点其实将ext2整体的组织框架,我们知道了ext2文件系统由块组组成,每个块组里面的组织形式.我们甚至直接把超级块和组描述符里面的内容,用十六进制形式展现了出来.这篇博文主要讲述如何 ...

  9. TCP网络编程杂谈

    作为一名IT工程师,网络通信编程相信都会接触到,比如Web开发的HTTP库,Java中的Netty,或者C/C++中的Libevent,Libev等第三方通信库,甚至是直接使用Socket API,但 ...

  10. 外部线程停止Java子线程的方法

    一.Thread.stop()官方不推荐,Because it is inherently unsafe. 二.方式一1. 线程类示例 public class ThreadT1 implements ...