samba有五种安全级别,它们分别是:

share:不需要samba账户就可登陆samba服务器
      user:需要添加samba账户才可以登陆samba服务器
      server:由另外一台samba服务器来对用户进行身份验证。 
      domain:把samba服务器加入到NT域,由NT的域控制器来进行身份验证。
      ADS:Active Directory Service,活动目录服务,它是samba3.0中新增的身份验证方式。采用ADS验证方式,samba服务器集成到活动目录中。

以上是它的五个运行级别;share,user这二个级别适合用小型部门,如网吧、企业内部局域网等,也是samba常用的级别。

(一) samba组件安装:

(1)首先用“rpm –qa |grep samba”命令检验系统samba服务是否安装。

#rpm –qa |grep samba

samba-common-3.0.0.15.i386.rpm

samba-client-3.0.0-15.i386.rpm

samba-3.0.0-15.i386.rpm

(2)如果没有显示samba(版本)信息,则说明没有安装,利用“RedHat Linux安装光盘”里自带的RPM包进行安装(也可自己在网上下载相关的版本包进行安装)。

# rpm -ivh samba-common-3.0.0.15.i386.rpm
# rpm -ivh samba-client-3.0.0-15.i386.rpm
# rpm -ivh samba-3.0.0-15.i386.rpm

此外还有一个工具就是图形界面的Swat。
要是用这个工具﹐大家还要修改一处﹐就是﹕
vi /etc/xinetd.d/swat把其中的
disable = yes
改为
disable = no就可以了。

# rpm -ivh samba-swat-3.0.0-15.i386.rpm

(二) share级别的samba的配置
这个级别的samba很简单,首先它不需要以用户和密码来验证登陆,所以就不必去配置samba用户了

下面是实例:

#service smb start        // 启动samba
#cp /etc/samba/smb.conf /etc/samba/smb.conf.bak     // 备份samba的配置文件
#vi /etc/samba/smb.conf

// 找到 security = user 将它改成 security = share

#service smb restart             // 重启samba服务器

打开“我的电脑”,输入  \192.168.1.88  sabma服务器的地址
 
此时samba服务器上任没有设置任何共享目录。

下面在服务器上设置一个名为test的共享目录
#mkdir /test
#chmod 777 /test //让所有用户具有完全权限

#vi /etc/samba/smb.conf 
找到 security = user 将它改成 security = share

把光标移动配置文件的最后一行,在下面加入以下配置
 [test]    //共享名
    comment = test resource //共享目录的注释
    path = /test     //共享目录的路径
    writable = yes   //是否允许写入
    public = yes     //是否允许guest访问

#service smb restart             // 重启samba服务器

这时输入   \192.168.1.88

可以看到刚才增加的名为test的共享目录,此目录任何人有“完全权限” 
如果需要共享其它目录,可照此设定。

(三) user级别的samba的配置.

Share级别的samba无需samba用户就可以访问服务器,而user级别的samba则需以samba用户和密码才能访问,所以我们先要设定一个samba用户,如下:

#useradd cc   //添加cc用户
#passwd cc   //设置cc用户的口令
#smbpasswd –a cc  //将cc用户添加为samba用户

#mkdir /cc   //建立/cc 目录,此目录就是要共享的目录 
#chown cc.cc /cc   //让cc用户成为/cc目录的属主

#vi /etc/samba/smb.conf 
  // 找到 security = share 将它改成 security = user

把光标移动配置文件的最后一行,在下面加入以下配置

[bb]  //共享名,特意取名为bb,以区别于cc的home共享
comment = cc resource 
path = /cc 
writable = yes 
valid users = cc
public = no

#service smb restart             // 重启samba服务器

这时输入   \192.168.1.88,会弹出用户验证对话框

提示输入samba用户和密码,输入用户名:cc 和密码,进入这时会看到多了“bb”、“cc”这二个共享,其中bb是刚才添加的samba共享,“cc”是cc用户的家目录共享。

[注] 在windows中添加cc用户,然后注销administrator,以cc用户的身份登录,访问samba服务器时,则不会出现用户登录对话框,不用输入用户名和密码而能直接浏览共享资源。下图是在windows中以用户cc登录后,输入 \192.168.1.88 直接进入的画面。在windows中以administrator身份登录后访问samba资源,之所以会出现登录对话框,是因为administrator没有对应的samba帐户。

如果不想使用“cc”用户的家目录共享,可以进行如下设置:

#vi /etc/samba/smb.conf

找到如下语句: 
[homes] 
                  comment = Home Directories 
                  browseable = no 
                  writable = yes

在每行的前面加上注释符号“;”

;[homes] 
;   comment = Home Directories 
;   browseable = no 
;   writable = yes

#service smb restart             // 重启samba服务器

这时输入 \192.168.1.88

此时只剩下我们人为添加的bb共享,而家目录共享cc已经不存在了
[注] samba共享的访问权限受samba和linux操作系统的双重制约。即使在samba中已经开通了某个用户对于某个目录的访问权限,但如果samba用户所对应的linux用户没有该目录的访问权限,此时仍然不能访问该共享目录

分享目录参数

v [分享名称]:这个分享名称很重要,它是一个“代号”而已。例如,您在Windows中使用“共享”来分享网上邻居时,假设您将“D:\game”分享出来,系统还会要您输入一个“在网络上面的名称”,假设您输入My_Games,那么以后在网上邻居看到的文件夹(D:\game)名称其实是“\\您的IP\My_Games”。
comment:这个目录的说明。
path:在网上邻居中显示的名称中实际进入的Linux文件系统。也就是说,在网上邻居中看到的是“[共享]”的名称,而实际操作的文件系统则是在path中设置的。
 read only:设置是否只读。
 public:设置是否让所有可以登录的用户看到这个项目。
writable:设置是否可以写入,这里需要注意一下,read only与writable是相似的设置值。如果writable在这里设置为NO,亦即不可写入,那与read only将互相矛盾了,哪个才是正确的设置?答案是:最后出现的那个设置值为主要的设置。
write list:指定能读取和写该共享资源的用户和组
valid users:指定能够进入到此资源的特定用户。

----

清除客户端记录

net use * /delete

net use /yes

linux基础命令学习(七)samba服务器配置的更多相关文章

  1. linux基础命令学习笔记(二)

    linux基础命令学习笔记(二) 1.kill :终止进程  kill pid (唯一标示一个进程) kill -9  强制终止  kill -15 命令未结束不能终止 # ps aux 查看所有进程 ...

  2. linux基础命令学习(六)文件的特殊属性

    Linux chattr命令用于改变文件属性. 这项指令可改变存放在ext2文件系统上的文件或目录属性,这些属性共有以下8种模式: a:让文件或目录仅供附加用途.    b:不更新文件或目录的最后存取 ...

  3. linux基础命令学习(六)DHCP服务器配置

    工作原理:        1.客户机寻找服务器:广播发送discover包,寻找dhcp服务器        2.服务器响应请求:单播发送offer包,对客户机做出响应.提供客户端网络相关的租约以供选 ...

  4. 从零开始学安全(七)●Linux基础命令学习笔记

    halt 关机reboot 现在重新启动su - 如果当前是普通用户,则输入这条命令切换到管理员用户(root),如果要切换到其他用户则敲入 su - 用户名 如: su - wangxin root ...

  5. linux基础命令学习 (七)压缩解压

    一.tar tar主要用来压缩和解压文件 语法: tar [主选项+辅选项] 文件或者目录 主选项: c 创建新的档案文件.如果用户想备份一个目录或是一些文件,就要选择这个选项.相当于打包. x 从档 ...

  6. Linux基础命令---smbpasswd管理samba密码

    smbpasswd smbpasswd指令可以用来修改samba用户的的密码,该指令不仅可以修改本地samba服务器的用户密码,还可以修改远程samba服务器的用户密码. 此命令的适用范围:RedHa ...

  7. Linux基础命令介绍七:网络传输与安全 wget curl rsync iptables

    本篇接着介绍网络相关命令:wget 文件下载工具.curl 网络数据传输工具.rsync 文件传输工具等. 本篇接着介绍网络相关命令 1.wget 文件下载工具 wget [option]... [U ...

  8. Linux基础命令学习记录(一)

    使用频繁的Linux命令 一.文件和目录 1.cd命令 cd / 进入根目录 cd .. 返回上一级目录 cd ../.. 返回上两级目录 cd 进入个人的主目录 cd ~ 进入个人的主目录 cd - ...

  9. linux基础命令学习五(软件包管理、下载管理)

    Linux 软件包管理   本文主要是记录下RedHat系列的软件包管理. 内容分为以下二个部分:二进制包的管理,源代码包的管理 一.二进制包的管理 1.1概念 主要有RPM和YUM这两种包管理. 两 ...

随机推荐

  1. parent,parents和closest

    1.parent parent() 获得当前匹配元素集合中每个元素的父元素,使用选择器进行筛选是可选的. <ul id="menu" style="width:10 ...

  2. WMI执行远程文件(RPC)

    通过wmi在远程机上执行命令(wmi:windows management interface 可以通过一个公共的接口访问不同操作系统(windows系统)的构成单元,利用它可以高效的管理远程和本地的 ...

  3. mouseover 和 hover 方法

    mouseover 和 hover 方法的不同?jquery   hover包括了鼠标移到对象上,同时鼠标再移出对象的过程,相应的子类也被选中. mouseover是鼠标经过对象时,不包含他的子类同时 ...

  4. 5月23日 JavaScript练习:累加求和

    第一种方法: 第二种方法:

  5. Kids and Prizes(SGU 495)

    495. Kids and Prizes Time limit per test: 0.25 second(s)Memory limit: 262144 kilobytes input: standa ...

  6. 如何使用JCONSOLE 监控eclipse的tomcat

    在默认情况下,使用jconsole 监控本地tomcat 是不需要任何配置的,直接连接就可以监控tomcat.   但是在eclipse 下启动是监控不了.   解决方法:   设置jvm参数:   ...

  7. python 爬虫

    import urllib2 as url import re urls = 'http://www.php100.com/html/it/' headers = {'User-Agent':'Moz ...

  8. (转)onTouchEvent方法的使用

      (转)onTouchEvent方法的使用 手机屏幕事件的处理方法onTouchEvent.该方法在View类中的定义,并且所有的View子类全部重写了该方法,应用程序可以通过该方法处理手机屏幕的触 ...

  9. sql 如何过滤重复记录

    distinct : select distinct ID from table1

  10. 关于Linux下C编译错误(警告)cast from 'void*' to 'int' loses precision

    char *ptr; //此后省略部分代码 ) //出错地方 那句话的意思是从 void* 到 int 的转换丢失精度,相信看到解释有些人就明白了, 此问题只会出现在X64位的Linux上,因为在64 ...